V13-FE-006: consolidate approved UI and contract hardening
This commit is contained in:
@@ -0,0 +1,27 @@
|
||||
# V13-FE-035 — Freshness boundary slice note
|
||||
|
||||
- **Requirement:** REQ-FE-FRESH
|
||||
- **API/UI/Test:** UI-ALL / T-FE-FRESH-01
|
||||
- **Source:** v60 freshness/version guidance; current `frontend/src/shared/status/DataFreshnessBadge.vue` and centralized financial formatter.
|
||||
- **Assumption:** The caller owns the approved current instant and passes it as `now`; the component is presentation-only.
|
||||
- **Unknown:** No active production screen currently consumes this badge with a server-provided `published_at`/revision contract.
|
||||
- **Decision Required:** FE/Data/QA must approve the per-resource freshness window and the authoritative server timestamp before production adoption.
|
||||
|
||||
## Applied boundary
|
||||
|
||||
- Removed direct machine-clock access from `DataFreshnessBadge`.
|
||||
- Added required `now` input so identical `asOf + now + threshold` inputs produce identical state.
|
||||
- Reused centralized `formatAsOf` for deterministic KST display formatting.
|
||||
- Characterized fresh/stale boundary behavior at and after the configured threshold.
|
||||
|
||||
## Evidence
|
||||
|
||||
```text
|
||||
pnpm test -- src/shared/status/tests/DataFreshnessBadge.spec.ts
|
||||
PASS: 1 file / 2 tests (2026-08-12)
|
||||
|
||||
pnpm typecheck
|
||||
PASS (2026-08-12)
|
||||
```
|
||||
|
||||
This is a contract slice only; no production freshness policy, API integration, revision, or visual evidence is claimed.
|
||||
Reference in New Issue
Block a user