Skip to content

docs(#97): ADR for toolCalls vs skillCalls index contract#99

Merged
lis186 merged 1 commit into
mainfrom
worktree-docs-97-toolcalls-adr
Jun 21, 2026
Merged

docs(#97): ADR for toolCalls vs skillCalls index contract#99
lis186 merged 1 commit into
mainfrom
worktree-docs-97-toolcalls-adr

Conversation

@lis186

@lis186 lis186 commented Jun 21, 2026

Copy link
Copy Markdown
Owner

What

Adds docs/decisions/0001-toolcalls-vs-skillcalls.md — a lightweight ADR recording why toolCalls and skillCalls are kept as two separate index fields, and cross-links it from docs/normalization-map.md §5.

Why

toolCalls ({toolName: count}) is a shared dashboard contract (tc['Skill'], tool chips, tool-utilization). An early PR #94 revision expanded Skill:<name> keys into toolCalls, polluting that contract and breaking dashboard consumers. The fix added a separate skillCalls field. That decision lived only in a commit message — this ADR captures it so a future "merge the two fields" change doesn't repeat the regression.

Also documents why skillCalls is structurally Anthropic-only: the Codex (OpenAI Responses) protocol has no skill-call concept (skills are prompt instructions, not tool calls).

Verification

All references checked against the worktree code, not just the issue text:

  • extractToolCalls / extractSkillCallsserver/helpers.js:717,735
  • skillCalls persisted — server/entry.js, server/wire-parsers/anthropic.js:56
  • dashboard tc['Skill']public/miller-columns.js:2336,2341
  • legacy (pre-tracking) degrade — server/usage.js:310

Docs-only change; no code touched (no type-checker/tests apply).

Closes #97

Record why toolCalls stays a plain {toolName:count} dashboard contract
and per-skill detail lives in a separate skillCalls index, so a future
"merge the two fields" change doesn't repeat the dashboard breakage from
PR #94. Also documents why skillCalls is structurally Anthropic-only.

Cross-linked from docs/normalization-map.md §5.

Closes #97

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@lis186 lis186 merged commit 3e8db77 into main Jun 21, 2026
2 checks passed
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.

docs: add a decision record for the toolCalls vs skillCalls index contract

1 participant