ppoppo-clock 0.1.0

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

Universal Clock + Timer port for the ppoppo workspace.

Single deep-module port hiding the time-source substrate from every consumer. Three impl arms gated by feature: native (Tokio + time-tz), wasm (Intl + Promise + leptos::set_timeout), mock (FrozenClock + MockClock + AdvanceableTimer).

SSOT relationship

Standards: STANDARDS_TIME_MECHANICS.md §"Universal client + server time port" (rewritten in RFC_2026-05-10 Slice 9). Engine precedent: ppoppo-token (1st-party-consumed primitive, surface via SDK re-export). External Developer Apps consume via pas_external::clock::* — never path-dep this crate.

Dart mirror (CFC)

apps/cfc/lib/clock.dart is the hand-maintained Dart shape mirror. Drift detection deferred to a follow-up RFC. When changing trait shape here, update the Dart mirror in the same commit.

Temporal API readiness

Trait shape is deliberately Temporal-aligned. When js_sys::Temporal::* lands in upstream, only src/wasm.rs changes — public traits unchanged. See RFC §5.