Skip to content

feat: side-call context visibility (T3) — plan titles + side_call_usage events - #243

Merged
jkyberneees merged 2 commits into
mainfrom
feat/t3-context-visibility
Sep 16, 2026
Merged

jkyberneees merged 2 commits into
mainfrom
feat/t3-context-visibility

Conversation

@jkyberneees

Copy link
Copy Markdown
Contributor

Summary

  • B3 — step titles in side-call payloads: sideCallPlanPrefix emits 's2=in_progress - Title' (normalized, notes excluded). Compaction/budget payloads may be the only surviving context after a trim — bare IDs tell the summarizer nothing. Legacy anti-leak pins updated: titles required, notes still forbidden.
  • Measurement — side_call_usage events: recordSideCallUsage(kind, res) emits a typed runtime event (kind, input/output/cache tokens) plus internal signal, so --events-jsonl can quantify compaction vs progress_summary cost — previously invisible inside run totals. Side calls still bypass lastPromptTokens.

Review-found fixes (3-judge panel)

  • 'main_partial' kind for failed main-path partials (was 'interrupted_partial' — mislabeled side-call cost)
  • milestone-map/title-separator hygiene (';' → ',' in titles)
  • docs/EXTENSIONS.md event enumeration + data table updated; additive-safe (ignore-unknown-types rule, no version bump)

Test plan

  • RED-first: internal/loop/sidecall_visibility_test.go
  • internal/loop + internal/events green under -race; full cmd/odek green under -race (×2)
  • 3 adversarial judges; all findings fixed or accepted-as-documented

…ds + side_call_usage events (T3)

B3: sideCallPlanPrefix now includes step titles (s2=in_progress - Title).
The old IDs-only rationale was wrong for compaction/budget payloads: after
a trim those payloads may be the only surviving context, and bare ids tell
the summarizer nothing. Titles are model-authored, stored normalized, and
already on the main transcript — no new exposure. Notes remain excluded.

Measurement: recordSideCallUsage(kind, res) emits a side_call_usage
runtime event (typed constant, docs/EXTENSIONS.md updated) plus an
internal signal, so --events-jsonl can quantify compaction vs
progress_summary vs interrupted_partial token cost.

Pinned RED-first; loop_trim_test.go legacy pins updated. internal/loop,
internal/events, full cmd/odek green under -race.
@jkyberneees
jkyberneees merged commit 00669cc into main Sep 16, 2026
9 of 10 checks passed
@jkyberneees
jkyberneees deleted the feat/t3-context-visibility branch September 16, 2026 14:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant