ppoppo-clock 1.0.0

Universal Clock + Timer port for ppoppo workspace — chat-as-infrastructure primitive
Documentation

ppoppo-clock

The time port of the ppoppo ecosystem: one Clock ("what time is it?") and one Timer ("wake me in N ms"), injected wherever code needs time, so no surface reads the ambient system clock directly.

use ppoppo_clock::ArcClock;

fn stamp(clock: &ArcClock) -> i64 {
    clock.now_unix_millis()
}
Feature Arm
native native::{WallClock, TokioTimer, system_tz} — the Tokio runtime
wasm wasm::{WasmClock, WasmTimer, browser_local_tz} — the browser event loop
mock mock::{FrozenClock, MockClock, AdvanceableTimer, frozen_at, mock_pair} — deterministic tests

With no feature the crate is the two traits and their Arc aliases — no runtime, no IO. The port's value types are jiff's (Timestamp, Zoned, tz::TimeZone, civil::Date), re-exported as ppoppo_clock::jiff so a consumer names one version of them.