167-read-only-tool-projection
Project cataloged reads as read-only tools
Lifecycle approvedImplementation completeVerification unknownQualification unknown
Adds a transport-neutral, read-only tool projection derived from the spec-162 capability catalog: one tool descriptor per eligible judging-tier read, with a closed input schema, the exact argv it maps to, budget and pagination members, trust marking, and a closed error vocabulary. A tool call is one invocation of the pinned binary's existing verb, so its answer is that verb's bytes. spec-spine ships the descriptors and their tests; it runs no server, holds no session, and adds no write tool.
Read the full pinned specification ↗Relationships
depends on
amends
Claimed units
- establishes
{ "kind": "file", "path": "crates/spec-spine-types/src/projection.rs" } - establishes
{ "kind": "file", "path": "crates/spec-spine-types/schemas/tool-projection.schema.json" } - establishes
{ "kind": "file", "path": "crates/spec-spine-core/src/projection.rs" } - establishes
{ "kind": "file", "path": "crates/spec-spine-core/tests/projection.rs" } - establishes
{ "kind": "file", "path": "crates/spec-spine-cli/tests/projection.rs" } - establishes
{ "kind": "directory", "path": "crates/spec-spine-cli/tests/fixtures/projection/" } - establishes
{ "anchor": "the-read-only-tool-projection", "file": "docs/read-only-projection.md", "kind": "section" } - extends
{ "nature": "additive", "spec": "162-capability-catalog", "unit": { "kind": "file", "path": "crates/spec-spine-types/src/capability.rs" } } - extends
{ "nature": "additive", "spec": "162-capability-catalog", "unit": { "kind": "file", "path": "crates/spec-spine-types/schemas/capability-catalog.schema.json" } } - extends
{ "nature": "additive", "spec": "162-capability-catalog", "unit": { "kind": "file", "path": "crates/spec-spine-core/src/capability.rs" } } - extends
{ "nature": "additive", "spec": "162-capability-catalog", "unit": { "kind": "file", "path": "crates/spec-spine-core/tests/capability_catalog.rs" } } - extends
{ "nature": "additive", "spec": "162-capability-catalog", "unit": { "kind": "file", "path": "docs/capability-catalog.md" } } - extends
{ "nature": "additive", "spec": "001-compile-registry", "unit": { "kind": "file", "path": "crates/spec-spine-types/src/lib.rs" } } - extends
{ "nature": "additive", "spec": "002-registry-query", "unit": { "kind": "file", "path": "crates/spec-spine-cli/src/main.rs" } } - extends
{ "nature": "additive", "spec": "074-a-governed-read-names-its-version", "unit": { "kind": "file", "path": "crates/spec-spine-types/src/version.rs" } } - extends
{ "nature": "additive", "spec": "001-compile-registry", "unit": { "kind": "file", "path": "crates/spec-spine-core/src/lib.rs" } } - extends
{ "nature": "additive", "spec": "170-a-consumer-is-served-answers-not-access", "unit": { "kind": "file", "path": "crates/spec-spine-cli/src/cmd_capabilities.rs" } } - extends
{ "nature": "additive", "spec": "170-a-consumer-is-served-answers-not-access", "unit": { "kind": "file", "path": "crates/spec-spine-types/src/capabilities.rs" } } - extends
{ "nature": "additive", "spec": "057-the-docs-name-what-adopters-derived", "unit": { "kind": "file", "path": "docs/api.md" } } - extends
{ "nature": "additive", "spec": "057-the-docs-name-what-adopters-derived", "unit": { "anchor": "cli-reference", "file": "docs/cli-reference.md", "kind": "section" } } - extends
{ "nature": "additive", "spec": "057-the-docs-name-what-adopters-derived", "unit": { "kind": "file", "path": "docs/schema-versioning.md" } }
Source headings
- 167: Project cataloged reads as read-only tools
- 1. Purpose
- 2. Territory
- 3. Behavior
- 3.1 The projection is derived, never authored
- 3.2 Which operations are projected
- 3.3 The tool descriptor
- 3.4 Input schemas are closed and never name a host path
- 3.5 A call is one invocation of the existing verb
- 3.6 Budgets, pagination, and unbounded answers
- 3.7 The error vocabulary is closed
- 3.8 How the projection is served
- 3.9 Canonical bytes, digest, and schema
- 3.10 Authority, security, and disclosure boundary
- 3.11 The projection is held to the catalog and the binary
- 4. Acceptance criteria
- 5. Out of scope
- 6. Resolved decisions
- Verification
Frozen anchors
No frozen anchors declared.