[protocol] Keep non-terminal CapabilityCall status private

Open Beginner friendly
#631 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
78/100
Issue type
Bug
Clarity
Clearly specified
Activity status
Active
Tech stack
typescript
Domain
api, documentation

Research direction

Read packages/protocol/src/models/capability.ts and packages/protocol/src/models/item.ts, then compare the status schema with docs/core/mediation.md:147-167 and the cited decision document. Remove queued and running from the public status schema while retaining them on the private in-flight record, and change artifact-event to artifact-reference; done when the public schema and core documentation match the stated rule and Item type.

Written by the indexing model from the issue text.

Description

after-v0.1.0 bug

Doc rule. docs/core/mediation.md:147-159 publishes seven terminal CapabilityCall statuses and keeps non-terminal state private. docs/core/mediation.md:167 names an artifact-event Item. The Item type is artifact-reference (packages/protocol/src/models/item.ts:32), and docs/decisions/20261005-worker_file_synchronous_submission.md:10 already uses that name.

Current code. packages/protocol/src/models/capability.ts:18-20 includes queued and running in CapabilityCallStatusSchema, so those values are on the public schema.

Impact. Clients can observe in-flight call state that the model keeps private. The artifact-event word in the core doc does not match the Item the decision and the schema already use.

Smallest fix. Remove queued and running from the public status schema and keep them on the private in-flight record. In docs/core/mediation.md:167, replace artifact-event with artifact-reference.

Source finding IDs. GB-DOC-B-11

Filed from the 2026-11-07 core-doc audit (base 27fb8a0013ec86729475617609e9acc3fcb376f3); deferred past v0.1.0 by coordinator + Astra adjudication.

Dominant language
TypeScript
Stars
0
Forks
1
Avg merge
5h 57m
Merged PRs (30d)
3

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from lingkaix/openkit

All issues in lingkaix/openkit

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.