Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
128 commits
Select commit Hold shift + click to select a range
dc66bb6
docs: correct runtime endpoint attribution and latency evidence
Sep 8, 2026
faad619
docs: record CPU pressure alongside runtime latency evidence
Sep 8, 2026
bde3c6e
docs: record revision-scoped frontend coverage gaps
Sep 8, 2026
500c9a8
docs: record dashboard and browser login verification
Sep 8, 2026
0c85021
docs: trace bundle evidence to translation owner stack
Sep 8, 2026
8ca8dce
docs: record current hosted coverage and build results
Sep 8, 2026
3ea45b5
docs: preserve App failure diagnosis and latest coverage evidence
Sep 8, 2026
e52a63a
docs: batch PR updates to preserve terminal CI evidence
Sep 8, 2026
36d9ce6
docs: record terminal PostgreSQL verification before next head
Sep 8, 2026
5da47f3
docs: link telemetry warning to existing repair owner
Sep 8, 2026
a0759f3
docs: clarify API request-contract evidence boundaries
Sep 8, 2026
5a56324
docs: record bounded dashboard coverage result
Sep 8, 2026
4681826
docs: record isolated dashboard browser verification
Sep 8, 2026
8cc8dc1
docs: verify dashboard story play callback completion
Sep 8, 2026
047a172
docs: record dashboard keyboard and viewport evidence
Sep 8, 2026
84450c1
docs: record actionable client error verification
Sep 8, 2026
d5a6b39
docs: record successful-response privacy repair evidence
Sep 8, 2026
931fb5c
docs: record queued mock isolation diagnosis
Sep 8, 2026
1f77c90
docs: record full-run failures and coverage retention repair
Sep 8, 2026
d3ddfac
docs: record terminal hosted API batch checks
Sep 8, 2026
13b4055
docs: record serial suite failures and unstarted worker
Sep 8, 2026
1cf5d4f
docs: record unstarted worker recovery verification
Sep 8, 2026
1a3557d
docs: record long-exponent semantic integrity repair
Sep 8, 2026
e76c95e
docs: record hosted coverage and quantity rendering evidence
Sep 8, 2026
6b30d72
docs: record supported exponent boundary checks
Sep 8, 2026
88aac7f
docs: record quantity batch product build verification
Sep 8, 2026
4dc6aa9
docs: record browser exponent boundary evidence
Sep 8, 2026
44fa8fb
docs: record concurrent coverage gate restoration
Sep 8, 2026
aee873e
docs: record decimal quantity preservation evidence
Sep 8, 2026
0464ae6
docs: record empty client error privacy verification
Sep 8, 2026
6d01fa4
docs: record standalone typecheck acceptance
Sep 8, 2026
a0c324f
docs: record public Python docstring inventory
Sep 8, 2026
7b1f902
docs: record exact-head coverage failure
Sep 8, 2026
216c62d
docs: record stale required checks
Sep 8, 2026
a9bcbff
docs: remove false stale-check inference
seonghobae Sep 8, 2026
bca5028
chore(docs): converge gap evidence onto #983 source authority
seonghobae Sep 8, 2026
18f591b
chore(docs): converge #984 onto quantity repair
seonghobae Sep 8, 2026
fcd5fec
docs(agents): preserve parent validation guidance
seonghobae Sep 8, 2026
f56d3d1
chore(stack): converge #984 on #983 keyboard coverage
seonghobae Sep 8, 2026
4b9404a
chore(stack): converge #984 on #983 branch-coverage repair
seonghobae Sep 8, 2026
d322c3a
chore(stack): converge #984 on #983 dead-guard repair
seonghobae Sep 8, 2026
a385998
chore(stack): converge #984 on #983 story coverage repair
seonghobae Sep 8, 2026
e529ce2
chore(stack): preserve #983 story fixes in #984 convergence
seonghobae Sep 8, 2026
1cdd503
docs: converge gap baseline onto #983 exact head
seonghobae Sep 8, 2026
3c1eb5b
docs: converge gap baseline onto current #983
seonghobae Sep 8, 2026
c4a488f
merge: converge gap baseline on current coverage parent
seonghobae Sep 8, 2026
b8306fb
chore(stack): converge gap baseline onto LineageDag keyboard coverage
seonghobae Sep 8, 2026
250e410
chore: converge gap baseline on lineage coverage repair
seonghobae Sep 8, 2026
81e62d6
chore: converge gap baseline on disclosure test repair
seonghobae Sep 8, 2026
ddee6cf
chore: converge gap baseline on post action coverage
seonghobae Sep 8, 2026
ab44624
chore: converge gap baseline on bookmark failure repair
seonghobae Sep 8, 2026
431d673
chore(stack): converge gap evidence onto ontology keyboard coverage
seonghobae Sep 8, 2026
f708505
chore(stack): converge gap evidence onto ontology buyer actions
seonghobae Sep 8, 2026
b9c0b31
chore(stack): converge #984 onto exact #983
seonghobae Sep 8, 2026
1861b8c
chore(stack): converge #984 onto current #983
seonghobae Sep 8, 2026
6c43d76
docs: converge #984 on occupation rating coverage parent
seonghobae Sep 8, 2026
9e8c629
chore: converge gap evidence on sparse rating coverage
seonghobae Sep 8, 2026
a8c12a2
chore: converge gap evidence on typed rating fixture
seonghobae Sep 8, 2026
07f207d
chore(stack): converge #984 onto #983 f6c56580
seonghobae Sep 8, 2026
7e6e8f1
chore(stack): converge #984 onto #983 17770e3d
seonghobae Sep 8, 2026
58ed096
chore: converge gap baseline on criterion identity coverage
seonghobae Sep 8, 2026
bce1a08
docs: converge gap baseline onto current coverage parent
seonghobae Sep 8, 2026
aa4ecd0
chore(stack): converge gap baseline onto ontology coverage head
seonghobae Sep 9, 2026
973ac01
docs: clarify baseline evidence wording
Sep 9, 2026
e54ebc1
docs: record current frontend coverage gap
Sep 9, 2026
22e63be
chore: converge #984 onto #983 post-body repair
seonghobae Sep 9, 2026
ebe06ca
docs: converge gap evidence on current #983 head
seonghobae Sep 9, 2026
dfa033d
docs: record current frontend coverage evidence
Sep 9, 2026
c410129
docs: converge gap evidence on current #983 head
seonghobae Sep 9, 2026
4c19ef3
docs: record terminal exact-head CI evidence
Sep 9, 2026
79a3cdb
docs: converge exact-head coverage evidence on whitespace regression
seonghobae Sep 9, 2026
9dadf2d
docs: record hosted runner queue evidence
Sep 9, 2026
b879e42
docs: record coverage harness flake evidence
Sep 9, 2026
f2e098b
docs: record latest hosted coverage evidence
Sep 9, 2026
de93aa4
docs: close hosted backend evidence
Sep 9, 2026
3e3d8ef
docs: converge gap baseline onto current coverage head
seonghobae Sep 9, 2026
46bf2c2
docs: converge gap baseline onto OIDC destination repair
seonghobae Sep 9, 2026
6409a08
chore: converge gap evidence on current #983 head
seonghobae Sep 9, 2026
cae6d2b
chore(stack): converge gap evidence on calendar empty-state parent
seonghobae Sep 9, 2026
5afae2e
chore: converge gap ledger onto current #983 head
seonghobae Sep 9, 2026
b8d8c43
chore: converge gap evidence on repaired parent
seonghobae Sep 9, 2026
e09c4b6
chore: reconverge evidence child after test isolation repair
seonghobae Sep 9, 2026
c8f0cd4
docs(gaps): separate current candidate diagnostics
Sep 9, 2026
405c8c1
chore(stack): converge gap evidence on analysis recovery coverage
Sep 9, 2026
e8e7a21
chore(stack): converge gap evidence on workspace recovery coverage
Sep 9, 2026
7106a9a
docs(gaps): record workspace recovery coverage
Sep 9, 2026
3607651
chore(stack): converge gap evidence on calendar coverage
Sep 9, 2026
b09bfb5
Merge remote-tracking branch 'origin/codex/e2e-auth-redirect-main-202…
Sep 9, 2026
37c89c4
chore: converge gap baseline on focused-graph parent
seonghobae Sep 9, 2026
a5d9b3f
docs(gaps): refresh exact-head coverage evidence
Sep 9, 2026
3ac73ef
docs(gaps): record exact-head integration success
Sep 9, 2026
b1ba5e6
chore(docs): converge #984 on calendar contract repair
seonghobae Sep 9, 2026
1bcbabc
Merge remote-tracking branch 'origin/codex/e2e-auth-redirect-main-202…
Sep 9, 2026
92c8ed3
Merge remote-tracking branch 'origin/codex/e2e-auth-redirect-main-202…
Sep 9, 2026
94c4080
chore(docs): converge #984 on current parent
seonghobae Sep 9, 2026
2a72a55
docs(gaps): record Ask citation routing evidence
Sep 9, 2026
eb6de42
Merge remote-tracking branch 'origin/codex/gap-baseline-20260908' int…
Sep 9, 2026
17314fe
docs(gaps): advance exact frontend head evidence
Sep 9, 2026
fafd3af
chore(docs): converge #984 on unsafe-link coverage parent
seonghobae Sep 9, 2026
8d9b47d
Merge remote-tracking branch 'origin/codex/e2e-auth-redirect-main-202…
Sep 9, 2026
30d01bf
docs(gaps): advance exact frontend evidence
Sep 9, 2026
90316e2
docs(gaps): record exact frontend head evidence
Sep 9, 2026
5df942f
Merge current #983 parent into #984 documentation child
seonghobae Sep 9, 2026
2b3e23a
docs(gaps): advance board coverage evidence
Sep 9, 2026
9288592
docs(gaps): attach hosted board coverage
Sep 9, 2026
982d36d
chore(docs): converge coverage denominator repair
seonghobae Sep 9, 2026
ee5b764
chore(docs): converge construct family coverage parent
seonghobae Sep 9, 2026
e3352a9
chore(docs): converge CSS indentation coverage parent
seonghobae Sep 9, 2026
c0afe2e
chore(stack): converge docs descendant onto 08164b7
seonghobae Sep 9, 2026
69b3476
chore(docs): converge #984 on auth fallback coverage parent
seonghobae Sep 9, 2026
1cc3ecd
chore: converge gap baseline on current auth parent
seonghobae Sep 9, 2026
7403ddd
chore(docs): converge #984 onto focus-handoff parent
seonghobae Sep 9, 2026
d0d7d8a
merge: converge gap baseline onto current product head
seonghobae Sep 9, 2026
941535d
merge: converge documentation evidence on read-model coverage head
seonghobae Sep 9, 2026
9e0c37a
merge: converge documentation evidence on source-indentation parent
seonghobae Sep 9, 2026
d0cee3c
merge: converge documentation evidence on unknown-family coverage parent
seonghobae Sep 9, 2026
25d614b
chore: converge docs child onto current product parent
seonghobae Sep 9, 2026
097bcb7
chore: converge docs child onto current product parent
seonghobae Sep 9, 2026
c77dbc7
chore: converge docs child onto structured-image coverage parent
seonghobae Sep 9, 2026
fc9ac55
chore(stack): converge docs child onto #983 locale coverage head
seonghobae Sep 9, 2026
6f872c3
chore(stack): converge #984 onto #983 8c3f2048
seonghobae Sep 9, 2026
b7a807b
chore: converge gap baseline onto current product head
seonghobae Sep 9, 2026
f1b82d3
merge: converge #984 onto exact #983 parser boundary
seonghobae Sep 9, 2026
fc5c799
merge: converge #984 onto exact #983 GFM table repair
seonghobae Sep 9, 2026
fb9d200
chore(docs): converge #984 on current product parent
seonghobae Sep 10, 2026
2b5e7eb
merge: converge #984 onto current #983 product parent
seonghobae Sep 10, 2026
1817e29
chore: converge gap evidence onto dashboard navigation head
seonghobae Sep 10, 2026
446c5cc
chore: converge gap evidence onto Ask Agent outage head
seonghobae Sep 10, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
98 changes: 70 additions & 28 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -400,34 +400,6 @@ Do not weaken, skip, or `continue-on-error` a failing check -- fix the
underlying cause or, for a genuine false positive in a third-party scanner,
add a narrow, documented suppression referencing the specific finding.

The frontend coverage gate is evidence-bearing: on PR #983 exact head
`85c74137b6d64783322c52f39c2c28c8ac250d79`, all 727 Vitest tests passed, but
the strict global gate failed at lines 95.43%, statements 93.56%, functions
92.93%, and branches 83.57%. The largest gap was `frontend/src/App.tsx`.
Keep the source in the coverage denominator and add behavior tests for the
unexercised paths; do not lower the threshold or exclude product code to make
the check green. A passing test count without a passing coverage report is not
frontend CI completion.

The local full coverage run on `98f64d723` exposed four timing-sensitive
failures under instrumented load (three 5-second timeouts and one
occupation-data wait); each failed test passed when rerun alone. A follow-up
run with Vitest file parallelism disabled still exposed five `App.test.tsx`
timeouts, so do not treat serializing files as the fix. Preserve both facts:
isolated reruns are diagnostic evidence, not a green full-suite result, and the
suite needs a reproducible instrumentation-timeout fix before treating the
coverage run as stable. Raising only the coverage timeout to 15 seconds removed
the timeout failures in one follow-up run, but the occupation catalog still
failed to load under the full instrumented suite; do not treat that setting as
the root-cause repair.
Hosted run `34306991982` at exact head
`0ba5daf4ac048337779ccffdcc4d741a1b490d07` completed the PostgreSQL full suite
successfully and ran all 728 frontend tests successfully; the frontend job
still failed only at the strict coverage gate with lines 95.49%, statements
93.61%, functions 93.03%, and branches 83.60%. Treat this as a coverage
implementation gap, not a test correctness failure or a reason to lower the
gate.

## W3C PROV-O boundary

- Add standard provenance through `lineageweave.prov_o` and the
Expand Down Expand Up @@ -494,3 +466,73 @@ When an E2E login helper tolerates a narrowly identified navigation error,
reassert the expected authorization URL before locating or filling credential
fields. A matching form label is not evidence that the navigation reached its
expected destination; retain the post-login destination check as well.

## Runtime measurement attribution

Before timing a local endpoint, verify its service with `docker port` or live
container port bindings; Compose port overrides can invalidate remembered
ports. Record attempted requests and failures, retain timeout observations, and
state whether the measurement covers liveness, HTML, or authenticated rendered
pages. Correlate timestamped logs before attributing latency to provider errors.

For host/container latency differences, record logical CPU counts, load, and
Linux `/proc/pressure/{cpu,memory,io}` with timestamps. High CPU pressure is a
measurement condition, not proof that a particular request stalled there.

When a UI test alternates between timeout and missing-element failures, inspect
the failing phase before changing selectors or deadlines. A timer firing late
is evidence of delayed execution, not proof that the product is correct. Keep
full-run failures distinct from focused passes and remove ineffective diagnostic
edits instead of shipping a speculative fix.

Batch related frontend regression changes before pushing a PR head. A new push
can cancel an in-progress PostgreSQL suite through the existing concurrency
policy; repeated small pushes can prevent terminal full-suite evidence. Track
the current run to completion while developing independent work, and distinguish
superseded cancellation from an actual test failure.

For API request-contract tests, decode generated URLs with URL/URLSearchParams
and assert repeated parameters, opaque cursors, timezone offsets, and explicit
false/zero values survive transport. Mocked fetch tests establish client request
serialization and error propagation only; they do not prove server authorization,
valid parameter ranges, or database-backed evidence availability.

When checking an interactive Storybook scene in a browser, wait for its authored
play function to finish before testing keyboard input. Assert the additional
callback separately from the play callback so an earlier click cannot mask a
broken keyboard action. Record viewport and document scroll widths together.

The API privacy boundary includes successful-response body reads and decoding:
await them inside the shared catch boundary so parser/body diagnostics cannot
reach UI handlers. Preserve observed HTTP status; a rejected decode is not proof
of an upstream 5xx. Keep actionable client errors distinct (ADR 0123). Use the
Comment thread
seonghobae marked this conversation as resolved.
repository lint script; the frontend currently uses oxlint, not eslint.

For mocks with queued one-shot responses, reset the implementation between tests.
`mockClear()` only clears call history: an early assertion failure or timeout can
leave a response queued for the next test. Use the existing scoped lifecycle
hook with `mockReset()` so one failed test cannot consume another test's data.
Comment thread
seonghobae marked this conversation as resolved.
This isolates later failures; it does not repair the first timeout.

Coverage artifact upload cannot retain a report the test runner never produced.
Keep Vitest `coverage.reportOnFailure` enabled so assertion failures still emit
reports; retain the nonzero test exit and the complete configured denominator.
Comment thread
seonghobae marked this conversation as resolved.
Verify this with an ephemeral intentional failure, then remove the probe.

When a full-run test count drops, inspect unhandled worker-start errors before
calling it a smaller passing suite. Preserve the intended file/test inventory,
reported passes/failures, and unstarted files separately; retained coverage does
not prove that every planned test ran.

Bounded numeric regexes must reject a longer numeric token, not match its prefix.
For quantity exponents, keep browser normalization, React text-run splitting,
and ingestion normalization aligned; test signed and braced unsupported values
without changing the supported short-exponent range (ADR 0165).

Numeric token-boundary tests should include decimal continuations as well as
extra digits. Keep a sentence-ending period distinct from a period followed
by a digit so preserving unsupported numbers does not break ordinary prose.

Exercise missing and whitespace-only 4xx guidance at the shared API boundary.
Fallback errors must not expose route paths even when the server supplies no
message; retain HTTP status separately for caller decisions (ADR 0123).
Loading