Commit 49c3db3
authored
Implementation Plan: T5-P6-A10-WP3 — Make NDJSON Vocabulary Drift Visible in Per-Session Diagnostics (#4146)
## Summary
Wire the existing `seen_ndjson_unknown_event_count` and
`seen_ndjson_unknown_item_count` counters — currently dead-ending on
`ClaudeSessionResult` — through `SkillResult` (via a frozen
`NdjsonDriftOutcome` bundle) into `flush_session_log`, so they appear in
`summary.json`, `sessions.jsonl`, and (when non-zero) `anomalies.jsonl`.
Add a doctor check (`codex_ndjson_drift`, Check 35) that scans
`sessions.jsonl` for codex entries with non-zero drift counters and
returns WARNING with the affected count.
## Implementation Plan
Plan file:
`/home/talon/projects/autoskillit-runs/impl-20260628-121003-915180/.autoskillit/temp/make-plan/t5_p6_a10_wp3_ndjson_drift_visibility_plan_2026-06-28_121500.md`
Closes #4046
🤖 Generated with [Claude Code](https://claude.com/claude-code) via
AutoSkillit
<!-- autoskillit:pipeline-signature
steps=prepare_pr,run_arch_lenses,compose_pr,annotate_pr_diff,review_pr
-->
## Token Usage Summary
| Step | Model | count | uncached | output | cache_read | peak_ctx |
turns | cache_write | time |
|------|-------|-------|----------|--------|------------|----------|-------|-------------|------|
| plan* | opus[1m] | 2 | 6.6k | 30.7k | 2.3M | 135.4k | 81 | 151.9k |
17m 40s |
| verify* | sonnet | 1 | 132 | 15.3k | 829.1k | 63.2k | 42 | 44.7k | 7m
23s |
| implement* | MiniMax-M3 | 1 | 106.1k | 18.9k | 5.4M | 0 | 137 | 0 | 6m
7s |
| fix* | sonnet | 1 | 430 | 43.8k | 5.7M | 147.0k | 152 | 128.8k | 22m
52s |
| audit_impl* | sonnet | 1 | 817 | 18.6k | 392.4k | 71.0k | 23 | 54.5k |
7m 48s |
| prepare_pr* | MiniMax-M3 | 1 | 46.0k | 3.4k | 150.1k | 0 | 12 | 0 |
58s |
| compose_pr* | MiniMax-M3 | 1 | 36.6k | 1.3k | 140.7k | 0 | 11 | 0 |
36s |
| **Total** | | | 196.6k | 131.9k | 14.9M | 147.0k | | 379.9k | 1h 3m |
\* *Step used a non-Anthropic provider; caching behavior may differ.*
## Token Efficiency
| Step | LoC Changed | cache_read/LoC | cache_write/LoC | output/LoC |
|------|-------------|----------------|-----------------|------------|
| plan | 0 | — | — | — |
| verify | 0 | — | — | — |
| implement | 306 | 17566.6 | 0.0 | 61.9 |
| fix | 41 | 139541.6 | 3140.9 | 1067.1 |
| audit_impl | 0 | — | — | — |
| prepare_pr | 0 | — | — | — |
| compose_pr | 0 | — | — | — |
| **Total** | **347** | 42947.0 | 1094.9 | 380.1 |
## Model Usage Breakdown
| Model | steps | uncached | output | cache_read | cache_write | time |
|-------|-------|----------|--------|------------|-------------|------|
| opus[1m] | 1 | 6.6k | 30.7k | 2.3M | 151.9k | 17m 40s |
| sonnet | 3 | 1.4k | 77.6k | 6.9M | 228.0k | 38m 3s |
| MiniMax-M3 | 3 | 188.7k | 23.6k | 5.7M | 0 | 7m 41s |1 parent de19aa6 commit 49c3db3
19 files changed
Lines changed: 318 additions & 14 deletions
File tree
- docs
- src/autoskillit
- cli/doctor
- core
- types
- execution
- headless
- hooks/formatters
- server/tools
- tests
- arch
- cli
- docs
- execution
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
67 | 67 | | |
68 | 68 | | |
69 | 69 | | |
70 | | - | |
| 70 | + | |
71 | 71 | | |
72 | 72 | | |
73 | 73 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | | - | |
| 3 | + | |
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
63 | 63 | | |
64 | 64 | | |
65 | 65 | | |
| 66 | + | |
66 | 67 | | |
67 | 68 | | |
68 | 69 | | |
| |||
221 | 222 | | |
222 | 223 | | |
223 | 224 | | |
| 225 | + | |
| 226 | + | |
| 227 | + | |
224 | 228 | | |
225 | 229 | | |
226 | 230 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
317 | 317 | | |
318 | 318 | | |
319 | 319 | | |
| 320 | + | |
| 321 | + | |
| 322 | + | |
| 323 | + | |
| 324 | + | |
| 325 | + | |
| 326 | + | |
| 327 | + | |
| 328 | + | |
| 329 | + | |
| 330 | + | |
| 331 | + | |
| 332 | + | |
| 333 | + | |
| 334 | + | |
| 335 | + | |
| 336 | + | |
| 337 | + | |
| 338 | + | |
| 339 | + | |
| 340 | + | |
| 341 | + | |
| 342 | + | |
| 343 | + | |
| 344 | + | |
| 345 | + | |
| 346 | + | |
| 347 | + | |
| 348 | + | |
| 349 | + | |
| 350 | + | |
| 351 | + | |
| 352 | + | |
| 353 | + | |
| 354 | + | |
| 355 | + | |
| 356 | + | |
| 357 | + | |
| 358 | + | |
| 359 | + | |
| 360 | + | |
| 361 | + | |
| 362 | + | |
| 363 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
296 | 296 | | |
297 | 297 | | |
298 | 298 | | |
| 299 | + | |
299 | 300 | | |
300 | 301 | | |
301 | 302 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
33 | 33 | | |
34 | 34 | | |
35 | 35 | | |
| 36 | + | |
36 | 37 | | |
37 | 38 | | |
38 | 39 | | |
| |||
265 | 266 | | |
266 | 267 | | |
267 | 268 | | |
| 269 | + | |
| 270 | + | |
| 271 | + | |
| 272 | + | |
| 273 | + | |
| 274 | + | |
| 275 | + | |
| 276 | + | |
| 277 | + | |
| 278 | + | |
| 279 | + | |
| 280 | + | |
| 281 | + | |
| 282 | + | |
| 283 | + | |
268 | 284 | | |
269 | 285 | | |
270 | 286 | | |
| |||
334 | 350 | | |
335 | 351 | | |
336 | 352 | | |
| 353 | + | |
| 354 | + | |
337 | 355 | | |
338 | 356 | | |
339 | 357 | | |
| |||
369 | 387 | | |
370 | 388 | | |
371 | 389 | | |
| 390 | + | |
| 391 | + | |
372 | 392 | | |
373 | 393 | | |
374 | 394 | | |
| |||
606 | 626 | | |
607 | 627 | | |
608 | 628 | | |
| 629 | + | |
| 630 | + | |
609 | 631 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
27 | 27 | | |
28 | 28 | | |
29 | 29 | | |
| 30 | + | |
30 | 31 | | |
31 | 32 | | |
32 | 33 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
538 | 538 | | |
539 | 539 | | |
540 | 540 | | |
| 541 | + | |
| 542 | + | |
541 | 543 | | |
542 | 544 | | |
543 | 545 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
14 | 14 | | |
15 | 15 | | |
16 | 16 | | |
| 17 | + | |
17 | 18 | | |
18 | 19 | | |
19 | 20 | | |
| |||
135 | 136 | | |
136 | 137 | | |
137 | 138 | | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
138 | 143 | | |
139 | 144 | | |
140 | 145 | | |
| |||
727 | 732 | | |
728 | 733 | | |
729 | 734 | | |
| 735 | + | |
| 736 | + | |
| 737 | + | |
| 738 | + | |
730 | 739 | | |
731 | 740 | | |
732 | 741 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
147 | 147 | | |
148 | 148 | | |
149 | 149 | | |
| 150 | + | |
| 151 | + | |
150 | 152 | | |
151 | 153 | | |
152 | 154 | | |
| |||
326 | 328 | | |
327 | 329 | | |
328 | 330 | | |
| 331 | + | |
| 332 | + | |
| 333 | + | |
| 334 | + | |
| 335 | + | |
| 336 | + | |
| 337 | + | |
| 338 | + | |
| 339 | + | |
| 340 | + | |
| 341 | + | |
| 342 | + | |
| 343 | + | |
| 344 | + | |
| 345 | + | |
| 346 | + | |
| 347 | + | |
| 348 | + | |
| 349 | + | |
| 350 | + | |
| 351 | + | |
| 352 | + | |
| 353 | + | |
| 354 | + | |
329 | 355 | | |
330 | 356 | | |
331 | 357 | | |
| |||
427 | 453 | | |
428 | 454 | | |
429 | 455 | | |
| 456 | + | |
| 457 | + | |
430 | 458 | | |
431 | 459 | | |
432 | 460 | | |
| |||
555 | 583 | | |
556 | 584 | | |
557 | 585 | | |
| 586 | + | |
| 587 | + | |
558 | 588 | | |
559 | 589 | | |
560 | 590 | | |
| |||
0 commit comments