You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This issue is the dependency map for the critical systemic defects found in the agent-facing capability audit. It does not replace the owning issues or prescribe one mathematical research workflow. It exists to prevent the repair program from becoming another sequence of isolated tag, description, example, preview, and transport patches.
The central finding is that Jacobian’s mathematical kernels are often correct, while information needed by agents is lost at the boundaries around them:
canonical server
-> packaged host
identity/schema/recovery can drift
mathematical intent
-> discovery
vocabulary/taxonomy can lose the applicable operation
selected capability
-> execution call
capability-specific type is erased into payload: object
canonical result
-> model-facing result
primary value, labels, completeness, and full-resource path can be lost
capability implementation
-> host execution UX
effects, deadlines, progress, cancellation, and retry semantics can be lost
component correctness
-> release confidence
no single cross-host journey proves that every handoff still works
Architectural invariants
Every implementation under this roadmap should preserve the following invariants.
Canonical identity
One capability/tool/contract has one canonical identity. Host bindings may sanitize function symbols, but they must preserve canonical metadata, validation-equivalent contracts, telemetry identity, and callable recovery actions.
Make invalid states unrepresentable at the nearest boundary
A host that has selected a capability should receive a capability-specific construction contract. Wrong wrapper levels, stale contracts, incompatible modes, and invalid browse/search/inspect combinations should be rejected before mathematical execution with one bounded repair path.
Search metadata is not policy or proof
Retrieval aliases, mathematical domains, deployment policy classes, provider features, effects, assurance ceilings, and producer/checker relationships are different typed namespaces. Similarity or ranking never implies mathematical suitability, availability, authorization, or verification.
Canonical result is not the model-facing projection
The complete mathematical result, the bounded immediate primary value, and the MCP transport representation are distinct objects. A preview is source-bound convenience, never independent evidence. Mathematical completeness and preview completeness remain separate.
Execution, effects, and assurance are orthogonal
EXPLORE does not imply COMPUTED; VERIFY does not imply VERIFIED. Read-only/additive/destructive behavior, idempotence, deadline, cancellation, progress, completeness, and assurance are separately declared and enforced.
Stateless protocol, explicit handles
Cross-call state is represented by typed server-minted handles/URIs bound to tenant, policy, provider, and contract identity—not by hidden connection-local mutation.
Runtime remains authoritative
Host validation, generated examples, Skills, retrieval indices, and annotations improve ergonomics but do not replace runtime validation, operator policy, provider identity checks, tenant isolation, checker authorization, or verification-record binding.
The diagram shows the main dependency direction, not a requirement that every issue land in one monolithic PR. Some leaf fixes can ship earlier when they preserve the eventual contract.
Wave 0 — restore one callable protocol across every surface
A client must be able to complete tools/list before any ergonomics work is measurable. Restack the root-union output-schema repair on current MCP architecture and retain real HTTP coverage.
#1029 — canonical MCP identity through packaged aliases
Ensure math.find and math.run retain validation-equivalent schemas, annotations, results, and callable recovery semantics through packaged Codex and installed connector bindings.
Define supported protocol versions, test real latest-protocol HTTP requests, make request-stateless deployment the preferred path, and update doctor. This constrains #1031: connection-local temporary tool mutation is not the preferred final design; explicit prepared-contract handles are.
Wave-0 gate
The same deterministic browse → search → inspect → invoke → invalid-recover → resource-read sequence succeeds through in-process, stdio, final-protocol HTTP, packaged Codex, and installed connector surfaces.
Wave 1 — define the capability contract the agent is actually using
Separate canonical mathematical domains, retrieval aliases, policy classes, and provider features. This must precede or accompany a new retrieval index so search tuning cannot alter deployment policy or provider identity.
Replace ASCII exact-overlap-only retrieval and unbounded manual synonym patching with a transparent, deterministic, versioned hybrid index and held-out multilingual/notation-aware query corpus.
Stop deriving COMPUTED from EXPLORE. Publish mode-specific HEURISTIC / COMPUTED / VERIFIED ceilings from the same typed contract that constructs results.
Separate read-only, additive, mutating, and destructive effects plus idempotence. Move destructive controls out of an otherwise non-destructive mathematical executor where necessary.
Bind the exact input/output/semantic/assurance/effect/execution contract to a digest/URI. Keep human version, provider identity, policy identity, and catalog snapshot identity separate. This is the compatibility key for prepared calls, generated guidance, results, and historical traces.
The provider/checker/tenant-state architecture remains a prerequisite for truthful availability and scalable stateless deployment. Do not let catalog caching or prepared handles recreate producer/checker or host/tenant coupling.
Wave-1 gate
For each installed capability, a machine-readable descriptor can answer independently:
What mathematical domains and search representation does it have?
Which inputs/outputs and exact contract digest does it use?
Which modes and assurance ceilings can it reach?
What external effects and idempotence does it have?
How long can it run, how is progress/cancellation handled, and how is it retried?
Which provider is present/ready and which checker is separately authorized?
No answer is inferred from a generic tag bag, ID prefix, or mode alone.
Wave 2 — make the first valid call the default outcome
#952 — encode browse/search/inspect modes in math.find schema
Publish actual mutually exclusive forms, including typed artifact dependencies and exact-only fields.
Retain bounded descriptions, examples/default semantics, and branch/discriminator routing needed to construct calls. Separate canonical, validation, and construction projections.
Use a stable executor plus an explicit prepared-contract handle or equivalent final-protocol-compatible mechanism. Bind capability ID, contract digest, mode, policy/catalog/provider identity, and tenant. Do not expose the full catalog as permanent tools or rely on connection-local tool mutation.
Preserve path, rule, accepted form, and one callable recovery action for remaining top-level/envelope errors. Use tool execution errors for model-correctable input mistakes where supported.
Land schema-valid examples/envelope corrections where they help current users. Treat them as acceptance fixtures for #1072/#1031 rather than the complete architecture.
Wave-2 gate
Across scalar, nested matrix, sparse polynomial, discriminated union, graph search, inline verifier, and artifact verifier fixtures:
the first generated call is host-constrained by the selected contract;
wrong wrapper levels are rejected before adapter execution;
stale contracts fail closed;
one retry using returned recovery succeeds;
no complete catalog is returned on error.
Wave 3 — make successful results usable without losing truth
Every capability declares one source-bound immediate primary value or NO_PRIMARY_VALUE. Preview completeness, interpretation-critical labels/order/domain, and omission semantics are explicit and separate from mathematical completeness.
Do not leave an unbounded canonical result in structuredContent while compacting only text. Persist large complete results under typed resources, bound ResourceLink fanout, and preserve exact recovery identity.
Restore only factual, contract-proven compatibility metadata after reasoning-workflow removal. Use artifact types and contract identities; do not prescribe strategy or materialize ordinary values merely to pass them between operations.
Apply the same distinction to discovery/inspection: recoverable semantic collections versus operator transport safeguards. CONTRACT/FULL remain complete or link to exact complete resources.
Batch only where repeated homogeneous work is measured. Validate the whole requested batch before execution and preserve per-member effects, status, provenance, cancellation, and assurance.
Tactical result PRs
PR #992 and PR #986 are useful immediate improvements and should remain acceptance fixtures:
projective flats test partial but proof-critical previews;
distance matrices test labels/order as inseparable interpretation data.
Wave-3 gate
Agents can extract the correct proof-critical value, retain labels/order, follow the complete resource when required, and invoke a linked verifier without manual reconstruction or transcription. Structured and text channels agree on the bounded result and trust envelope.
Wave 4 — remove stale guidance and make regressions releasable
Version generated Skills, distinguish untouched old generated content from real user modifications, update or report stale guidance during upgrade, and remove unbound mutable payload fast paths.
After #1067 establishes truthful ceilings, foreground COMPLETED + COMPUTED as the common producer success path while keeping requested independent verification fail-closed.
A release cannot pass by showing only that the server initialized or an operation completed. The journey suite verifies the complete handoff on every supported surface and reports repeated behavioral evidence with uncertainty where a model is involved.
Tactical PR disposition
Current leaf PRs should be reviewed against this map:
Do not block a sound high-value leaf fix merely because the shared architecture is not complete. Do prevent leaf fixes from establishing new incompatible conventions that the owning systemic issue will immediately have to remove.
Existing issues to revalidate rather than duplicate
Current main appears to bound unknown-ID recovery to nearby IDs and canonical catalog/search paths. Re-run the issue’s original wire probe against current main before deciding whether to close it as completed or update its reproduction.
Current main now contains many explicit nested projection models and closed output-schema assertions. Re-run the original schema-drift probe; keep only any remaining open fields not covered by current models.
Program-level acceptance criteria
Every issue above has one clear owner and does not duplicate another layer.
Tool identity, capability contract, provider, policy, catalog, tenant, artifact, checker, and verification-record identities remain separate and explicitly bound where they interact.
Discovery quality no longer depends on an endless series of generic tag additions.
The selected capability’s construction contract reaches the host call-generation boundary.
Results are bounded, source-bound, correctly labelled, and recoverably complete.
Effects, assurance, execution lifecycle, and cancellation are truthful and descriptor-owned.
Latest-protocol stateless deployment and cross-host parity are release-tested.
Managed guidance cannot remain silently stale after runtime upgrades.
End-to-end evaluations score mathematical contribution and final evidence preservation, not tool invocation itself.
No ergonomic layer can authorize a checker, widen scope, upgrade assurance, or replace runtime validation.
Non-goals
One universal mathematical object/schema.
Hundreds of permanent top-level tools.
One mandated decomposition, verification order, or stopping policy.
A general expression language introduced without held-out evidence.
Treating semantic retrieval, examples, previews, annotations, Skills, or model self-reports as mathematical evidence.
A monolithic implementation PR spanning the entire roadmap.
Purpose
This issue is the dependency map for the critical systemic defects found in the agent-facing capability audit. It does not replace the owning issues or prescribe one mathematical research workflow. It exists to prevent the repair program from becoming another sequence of isolated tag, description, example, preview, and transport patches.
The central finding is that Jacobian’s mathematical kernels are often correct, while information needed by agents is lost at the boundaries around them:
Architectural invariants
Every implementation under this roadmap should preserve the following invariants.
Canonical identity
One capability/tool/contract has one canonical identity. Host bindings may sanitize function symbols, but they must preserve canonical metadata, validation-equivalent contracts, telemetry identity, and callable recovery actions.
Make invalid states unrepresentable at the nearest boundary
A host that has selected a capability should receive a capability-specific construction contract. Wrong wrapper levels, stale contracts, incompatible modes, and invalid browse/search/inspect combinations should be rejected before mathematical execution with one bounded repair path.
Search metadata is not policy or proof
Retrieval aliases, mathematical domains, deployment policy classes, provider features, effects, assurance ceilings, and producer/checker relationships are different typed namespaces. Similarity or ranking never implies mathematical suitability, availability, authorization, or verification.
Canonical result is not the model-facing projection
The complete mathematical result, the bounded immediate primary value, and the MCP transport representation are distinct objects. A preview is source-bound convenience, never independent evidence. Mathematical completeness and preview completeness remain separate.
Execution, effects, and assurance are orthogonal
EXPLOREdoes not implyCOMPUTED;VERIFYdoes not implyVERIFIED. Read-only/additive/destructive behavior, idempotence, deadline, cancellation, progress, completeness, and assurance are separately declared and enforced.Stateless protocol, explicit handles
Cross-call state is represented by typed server-minted handles/URIs bound to tenant, policy, provider, and contract identity—not by hidden connection-local mutation.
Runtime remains authoritative
Host validation, generated examples, Skills, retrieval indices, and annotations improve ergonomics but do not replace runtime validation, operator policy, provider identity checks, tenant isolation, checker authorization, or verification-record binding.
Dependency graph
The diagram shows the main dependency direction, not a requirement that every issue land in one monolithic PR. Some leaf fixes can ship earlier when they preserve the eventual contract.
Wave 0 — restore one callable protocol across every surface
#935 / #1017 — Streamable HTTP output-schema compatibility
A client must be able to complete
tools/listbefore any ergonomics work is measurable. Restack the root-union output-schema repair on current MCP architecture and retain real HTTP coverage.#1029 — canonical MCP identity through packaged aliases
Ensure
math.findandmath.runretain validation-equivalent schemas, annotations, results, and callable recovery semantics through packaged Codex and installed connector bindings.#1076 — final MCP 2026-07-28 stateless lifecycle
Define supported protocol versions, test real latest-protocol HTTP requests, make request-stateless deployment the preferred path, and update doctor. This constrains #1031: connection-local temporary tool mutation is not the preferred final design; explicit prepared-contract handles are.
Wave-0 gate
The same deterministic browse → search → inspect → invoke → invalid-recover → resource-read sequence succeeds through in-process, stdio, final-protocol HTTP, packaged Codex, and installed connector surfaces.
Wave 1 — define the capability contract the agent is actually using
#1062 — split overloaded metadata namespaces
Separate canonical mathematical domains, retrieval aliases, policy classes, and provider features. This must precede or accompany a new retrieval index so search tuning cannot alter deployment policy or provider identity.
#1059 — versioned hybrid retrieval index
Replace ASCII exact-overlap-only retrieval and unbounded manual synonym patching with a transparent, deterministic, versioned hybrid index and held-out multilingual/notation-aware query corpus.
#1067 — descriptor-owned assurance ceilings
Stop deriving
COMPUTEDfromEXPLORE. Publish mode-specificHEURISTIC/COMPUTED/VERIFIEDceilings from the same typed contract that constructs results.#1034 — descriptor-owned effects
Separate read-only, additive, mutating, and destructive effects plus idempotence. Move destructive controls out of an otherwise non-destructive mathematical executor where necessary.
#1077 — descriptor-owned execution lifecycle
Declare synchronous/durable/task execution, maximum deadline, progress, cancellation guarantee, retry semantics, and concurrency weight. Remove SAT/SMT prefix inference and bound late-worker admission.
#1073 — content-addressed per-capability contract identity
Bind the exact input/output/semantic/assurance/effect/execution contract to a digest/URI. Keep human version, provider identity, policy identity, and catalog snapshot identity separate. This is the compatibility key for prepared calls, generated guidance, results, and historical traces.
#1010 — installation/lifetime separation
The provider/checker/tenant-state architecture remains a prerequisite for truthful availability and scalable stateless deployment. Do not let catalog caching or prepared handles recreate producer/checker or host/tenant coupling.
Wave-1 gate
For each installed capability, a machine-readable descriptor can answer independently:
No answer is inferred from a generic tag bag, ID prefix, or mode alone.
Wave 2 — make the first valid call the default outcome
#952 — encode browse/search/inspect modes in
math.findschemaPublish actual mutually exclusive forms, including typed artifact dependencies and exact-only fields.
#1072 — generation-oriented capability schemas
Retain bounded descriptions, examples/default semantics, and branch/discriminator routing needed to construct calls. Separate canonical, validation, and construction projections.
#1031 — schema-bound selected execution
Use a stable executor plus an explicit prepared-contract handle or equivalent final-protocol-compatible mechanism. Bind capability ID, contract digest, mode, policy/catalog/provider identity, and tenant. Do not expose the full catalog as permanent tools or rely on connection-local tool mutation.
#990 — sole-mode default
Once the selected contract is trustworthy, remove unnecessary mode ceremony for single-mode capabilities without collapsing EXPLORE/VERIFY lanes.
#1071 — machine-actionable outer-tool diagnostics
Preserve path, rule, accepted form, and one callable recovery action for remaining top-level/envelope errors. Use tool execution errors for model-correctable input mistakes where supported.
#941 / PR #929 — verifier examples as immediate compatibility fixes
Land schema-valid examples/envelope corrections where they help current users. Treat them as acceptance fixtures for #1072/#1031 rather than the complete architecture.
Wave-2 gate
Across scalar, nested matrix, sparse polynomial, discriminated union, graph search, inline verifier, and artifact verifier fixtures:
Wave 3 — make successful results usable without losing truth
#1033 — common bounded primary-result projection
Every capability declares one source-bound immediate primary value or
NO_PRIMARY_VALUE. Preview completeness, interpretation-critical labels/order/domain, and omission semantics are explicit and separate from mathematical completeness.#1074 — bound both
math.runresult channelsDo not leave an unbounded canonical result in
structuredContentwhile compacting only text. Persist large complete results under typed resources, bound ResourceLink fanout, and preserve exact recovery identity.#1018 — typed producer/consumer/checker compatibility
Restore only factual, contract-proven compatibility metadata after reasoning-workflow removal. Use artifact types and contract identities; do not prescribe strategy or materialize ordinary values merely to pass them between operations.
#932 — semantic pagination and transport limits
Apply the same distinction to discovery/inspection: recoverable semantic collections versus operator transport safeguards. CONTRACT/FULL remain complete or link to exact complete resources.
#896 — explicit batch preflight
Batch only where repeated homogeneous work is measured. Validate the whole requested batch before execution and preserve per-member effects, status, provenance, cancellation, and assurance.
Tactical result PRs
PR #992 and PR #986 are useful immediate improvements and should remain acceptance fixtures:
Wave-3 gate
Agents can extract the correct proof-critical value, retain labels/order, follow the complete resource when required, and invoke a linked verifier without manual reconstruction or transcription. Structured and text channels agree on the bounded result and trust envelope.
Wave 4 — remove stale guidance and make regressions releasable
#1070 — managed Codex Skill lifecycle
Version generated Skills, distinguish untouched old generated content from real user modifications, update or report stale guidance during upgrade, and remove unbound mutable payload fast paths.
#988 — guidance emphasis
After #1067 establishes truthful ceilings, foreground
COMPLETED + COMPUTEDas the common producer success path while keeping requested independent verification fail-closed.#1078 — end-to-end agent journey conformance
Create deterministic cross-surface journeys plus repeated model-in-the-loop evaluations. Measure exposure, discovery, first-call validity, recovery, execution contribution, result consumption, resource follow-through, verification binding, final value preservation, scope/assurance calibration, bytes/tokens, and latency separately.
Existing evaluation owners
Wave-4 gate
A release cannot pass by showing only that the server initialized or an operation completed. The journey suite verifies the complete handoff on every supported surface and reports repeated behavioral evidence with uncertainty where a model is involved.
Tactical PR disposition
Current leaf PRs should be reviewed against this map:
tools/listcompatibilityDo not block a sound high-value leaf fix merely because the shared architecture is not complete. Do prevent leaf fixes from establishing new incompatible conventions that the owning systemic issue will immediately have to remove.
Existing issues to revalidate rather than duplicate
#951 — unknown-capability recovery size
Current main appears to bound unknown-ID recovery to nearby IDs and canonical catalog/search paths. Re-run the issue’s original wire probe against current main before deciding whether to close it as completed or update its reproduction.
#953 — open nested
math.findoutput dictionariesCurrent main now contains many explicit nested projection models and closed output-schema assertions. Re-run the original schema-drift probe; keep only any remaining open fields not covered by current models.
Program-level acceptance criteria
Non-goals