✔ a raw token file, with or without one trailing newline, reaches curl only through the config stream (120.327844ms) ✔ the raw path accepts nothing else, and refuses before curl runs (369.402648ms) ✔ the file checks still apply on the raw path: mode, symlink, missing, directory (279.837232ms) ✔ the raw path base URL has no override (54.291872ms) ✔ the JSON path is unchanged, and JSON never falls through to the raw path (230.9248ms) ✔ a file that changes between the two reads refuses before curl runs, with or without a body (713.684199ms) ✔ the token reaches no child environment, even with an inherited CFG or SHELLOPTS=allexport (694.027535ms) ✔ real helper GET HTTP 200 preserves exit 0 without credentials (13.070169ms) ✔ real helper POST HTTP 201 preserves exit 0 without credentials (13.083497ms) ✔ real helper GET HTTP 403 preserves exit 1 without credentials (9.033467ms) ✔ fixture git subjects only, follow-ups and three session kinds (162.480984ms) ✔ text and JSON carry same numbers, open and truncated title (216.533556ms) ✔ missing credentials exit 2, no-issues never calls API and shows unknown (187.42729ms) ✔ empty range gives no rows and zero totals (153.553472ms) ✔ inclusive UTC dates, first-line preamble only, role and seat boundaries (145.104879ms) ✔ close-only issue included, even median, missing metadata stays unknown (138.143192ms) ✔ unique commits but per-issue links count multiple tags once each (137.264651ms) ✔ page cap refuses rather than silently undercounting (130.219584ms) ✔ bad API payload not JSON refuses (124.426361ms) ✔ bad API payload {} refuses (130.835828ms) ✔ bad API payload [{"number":1}] refuses (131.717421ms) ✔ partial or malformed session log refuses with location, not content (141.490599ms) ✔ a U+2028 or U+2029 inside a session string is one line, not a malformed record (135.981775ms) ✔ no sessions is an empty table; symlink source refuses (208.0173ms) ✔ reads only refactor even when another branch is checked out (147.21053ms) ✔ invalid dates, reverse dates and duplicate options refuse (103.221367ms) ✔ T3 agent assignments do not count as human in Table 2 (139.224294ms) ✔ preamble parsing and issue number boundaries (0.429217ms) ✔ T3 header: agent, or board from control-board; anything short of the full header is human (0.141263ms) ✔ no closed issues with human messages means undefined ratio, not invented zero (0.183749ms) ✔ T3: seat, archived, unmapped and Researcher threads count; imported, deleted and other-project threads do not (439.040684ms) ✔ T3: the default path is read from HOME and prints no path line; --no-t3 says so (755.195371ms) ✔ T3: a HOME with no database exits 1 and names --no-t3 (140.301202ms) ✔ T3: a file that is not a database exits 1 and names --no-t3 (143.325169ms) ✔ T3: a seat thread renamed to another seat exits 1 naming thread, title and roles (423.944271ms) ✔ T3: an unmapped thread addressed as a seat exits 1 (405.235245ms) ✔ T3: a header to another thread id is not cross-checked (399.242708ms) ✔ T3: no project, or two, for this root exits 1 (983.743767ms) ✔ T3: a removed column exits 1 and names it (243.999694ms) ✔ T3: a missing table exits 1 and names it (242.680597ms) ✔ T3: a counted row with an unknown role exits 1 without its text (381.381698ms) ✔ T3: a counted row with non-text content exits 1 without its text (409.893147ms) ✔ T3: a counted row with an unparseable created_at exits 1 without its text (436.160156ms) ✔ T3: a missing orchestration_events makes the diagnostic unknown and keeps the counts (777.585819ms) ✔ T3: a human message with no event counts in humanWithoutEvent (411.360534ms) ✔ T3: an unparseable event makes the diagnostic unknown and keeps the counts (723.421105ms) ✔ T3: an event with no string messageId makes the diagnostic unknown and keeps the counts (715.375859ms) ✔ T3: an error that is not from SQLite is rethrown, not reported as a database failure (397.517748ms) ✔ T3: a symlink at ~/.t3 exits 1 (158.225544ms) ✔ T3: a symlink at ~/.t3/userdata exits 1 (165.345952ms) ✔ T3: a symlink at ~/.t3/userdata/state.sqlite exits 1 (140.074401ms) ✔ T3: with --t3-db, a symlinked file or directory exits 1 (487.275139ms) ✔ T3 WAL: the newest message only in -wal, writer attached, is counted (399.702885ms) ✔ T3 WAL: stopped cleanly, counts are correct and the main file is unchanged (393.441586ms) ✔ T3 WAL: -wal without -shm in a writable directory is read (499.066966ms) ✔ T3 WAL: -wal without -shm in a read-only directory exits 1 (453.861577ms) ✔ T3 WAL: stopped cleanly in a read-only directory exits 1 (383.574487ms) ✔ T3: a lock held past the 5 s busy timeout exits 1 and names --no-t3 (5389.251886ms) ✔ a done row whose closing issue is open is a violation; a row that is not done is not (1.769997ms) ✔ an issue several rows close is expected closed only once all of them are done (0.479396ms) ✔ closure needs positive evidence: unknown is undecided, and so is a skipped or short issue check (0.352468ms) ✔ each owner of an in-progress or in-review row gets one liveness class (7.450645ms) ✔ a required row not done after 14 days is a violation; a legacy row uses genesis as its lower bound (0.375297ms) ✔ an ISO requiredSince, as `set required` writes it, ages from its UTC day; one that does not parse is a violation (0.202726ms) ✔ the text section always ends in a count and a result, and never prints a full pass (0.31282ms) ✔ pidAlive: a running pid is present, an exited one is gone, and EPERM still means present (23.634577ms) ✔ issue states: open list first, then the metric page, then at most 10 lookups (278.392933ms) ✔ a full open list: lookups settle what it leaves out, and only an unsettled issue keeps it undecided (377.736803ms) ✔ the open list refuses on a failed call or a bad record, and never echoes the helper (169.378535ms) ✔ a helper call past the deadline is killed with its child, and the call reports it (2007.711363ms) ✔ readQueue loads queue.json through the queue validator and refuses anything else (119.664719ms) ✔ protected changes list every in-range entry that changes a required or parked row (444.485151ms) ✔ the CLI prints the queue section above the weekly table and under a queue key in --json (526.301912ms) ✔ a queue with nothing wrong prints 0 violations and a reduced pass, never a full pass (251.548181ms) ✔ --no-issues makes no call and leaves the issue checks undecided; --no-queue skips the section (320.738002ms) ✔ the CLI refuses a bad queue before any call, and a failed open list with exit 2 (288.417953ms) ✔ --unsupported-runtime repeats once per seat and takes a seat name (346.556078ms) ✔ an unreadable config makes every owner invalid instead of passing them (179.623698ms) ℹ tests 78 ℹ suites 0 ℹ pass 78 ℹ fail 0 ℹ cancelled 0 ℹ skipped 0 ℹ todo 0 ℹ duration_ms 19490.132391