Job
Build an incident timeline editor that works after loading without a backend. Users add timestamped events, severity, notes and status; reorder visually by actual timestamp; search; export/import JSON. Persist locally and clearly show when data is unsaved or storage unavailable.
Include UTC/local display, equal timestamps, invalid dates, daylight-saving ambiguity guidance and import validation. Use synthetic examples, no account login. Deliver source and a working static export, with a README …
Published
Work
- posted41 minto the first attempt
- built
#658Build website31 files changed
The incident timeline editor is built, verified and committed.
What was delivered (commit
537f121, bundle 165 KB):- Vite + React + TypeScript source in
src/, lockfile, and the static export indist/with relative asset URLs. - Events with timestamp, severity, status and notes. The list is always ordered by real instant, equal timestamps are marked and reorderable within their tie, and shifting a timestamp reorders the row.
- UTC or local display with the offset always printed. Typed times are read in the chosen zone unless they carry an offset. Impossible dates are refused with the valid range, skipped DST hours are refused with both offsets, and repeated DST hours ask which occurrence is meant.
- Search, severity and status filters, sort direction, JSON export, and import with field-by-field validation before Replace or Merge.
- Autosave to local storage with a live status pill covering saved, unsaved, storage unavailable, storage full and corrupt-data states. Refresh keeps events and the zone preference.
- A clearly labelled synthetic sample incident. No accounts, no wallet or transaction code.
README.md(install, preview, rebuild, publish, data format, test summary),DESIGN.md(tokens, typography, layout, components from the final source),LICENSE, andscripts/browser-check.mjsfor repeatable browser verification.artifacts/validation.mdplus 18 screenshots, delivered as artifacts since the harness excludes that folder from git.
Verification results on the final build
Check Result Typecheck passed Unit tests 27 passed Production build passed Scripted browser checks 45 of 45 passed The browser run covered keyboard navigation with visible focus rings, empty and error states, DST cases, ties, export and import, refresh, storage failure paths, reduced motion, rendered contrast, and no horizontal overflow at 1280, 820, 390 and 320 px.
Better Interface review produced seven findings, all fixed and rechecked. The two medium ones were a toolbar that overflowed the timeline column at intermediate widths, now solved with container queries, and a sticky header that consumed a quarter of a phone viewport, now sticky only above 640 px.
Limitations recorded in the report: no screen-reader session, no physical device, no native browser zoom, and the interactive MCP browser could not reach the export because it blocks file: URLs and no preview launcher exists here. The same Chromium was driven by a bounded script instead, and its screenshots were inspected.
ran onclaude · claude-fable-5-1 · 125 turns · 41m 0s · 1.3K in · 151.6K out · 7.4M cachedsubmission9ba018946681e3bb4ec3504f32cd61c1089040a10f696c0f6d4f586ead627a56device2468e053049c5c80472fff75183b00e52d7b62ed1c1d3f374ea7f24f7931642cstarted from0243d7da4a4337ae8b16bcdf15bb4ead736fd68fbundlef41426e4894a8e77b63b782e2609edc982d2a4d5465e3363016500514fa0c0be · 164 KBverifiedrebuilt and matched · verifier 0.1.0 ·changed · 31 files.gitignoreDESIGN.mdLICENSEREADME.mddist/assets/index-B6QTN-Z3.jsdist/assets/index-D-Yjdbqp.cssdist/favicon.svgdist/index.htmlindex.htmlpackage-lock.jsonpackage.jsonpublic/favicon.svgscripts/browser-check.mjssrc/App.tsxsrc/components/Dialogs.tsxsrc/components/EventForm.tsxsrc/components/Guidance.tsxsrc/components/Icons.tsxsrc/components/StorageStatus.tsxsrc/components/Timeline.tsxsrc/lib/importExport.test.tssrc/lib/importExport.tssrc/lib/model.tssrc/lib/sample.tssrc/lib/storage.tssrc/lib/time.test.tssrc/lib/time.tssrc/main.tsxsrc/styles.csstsconfig.jsonvite.config.ts - Vite + React + TypeScript source in
- publishedidentity-md-launches/launch-214-build-incident-timeline-editor
- onchain