Test Inventory

Test Inventory

Current working-tree supplement — 2026-10-19

The preserved per-file tables and stable catalogue IDs below describe the 17 October pinned revisions. They do not describe every current test body. Static AST inspection of the current working tree found:

Worker Test files Named declarations Current detail
Registration 5 25 Unchanged from pinned catalogue.
Ingress 8 66 Unchanged from pinned catalogue.
Corpus 32 258 11 additions and changed-source notice.
Resources 14 59 2 additions and changed-source notice.
Events 1 18 Unchanged from pinned catalogue.
MCP 10 131 2 additions and changed-source notice.
Total 70 557 Static declarations only; no tests executed.

The 542-entry historical catalogue and the 15 added declarations overlap with curated risk scenarios; do not add curated scenarios to get runnable-test totals. Runtime matrix expansion, conditional skips and helper behavior require independent review/execution. The documentation audit records source drift and limitations.

Preserved pinned-revision inventory

Status: Complete static source inventory plus curated risk-case analysis; execution pending.

Last reviewed: 2026-10-17

Scope

This distinguishes the complete source catalogue from the smaller curated risk-case review. Every named test declaration in the Workers’ test folders is catalogued. Source declarations, runtime-expanded instances, curated scenarios and executions are separate counts.

Complete test-source inventory

Static parsing of existing .test. and .spec. files in test/ and tests/ found the following. Vitest it/test declarations, including each/for and conditional modifiers, were read without importing or executing tests. Setup/fixture-only modules are excluded from the test-file count.

Worker Test files Source declarations Parameterized declarations Conditional declarations Complete specification
Registration 5 25 3 0 Registration
Ingress 8 66 12 0 Ingress
Corpus 32 247 32 0 Corpus
Resources 13 57 0 6 Resources
Events 1 18 0 0 Events
MCP 10 129 33 0 MCP
Total 69 542 80 6 All six populated.

Parameterized declarations and describe/callback loops can multiply runnable instances; conditional tests may be skipped. No exact runtime-discovered or executed count is claimed because discovery/execution was not run. No count here is a passing-test count or a coverage percentage.

Per-file declaration inventory

Registration

Source file Declarations Parameterized Conditional Stable catalogue IDs
tests/identifier-formats.test.ts 3 2 0 REG-007 through REG-009
tests/index.test.ts 8 0 0 REG-010 through REG-017
tests/operation-token-case.test.ts 1 0 0 REG-018
tests/public-directory.test.ts 4 1 0 REG-019 through REG-022
tests/registration.test.ts 9 0 0 REG-023 through REG-031

Ingress

Source file Declarations Parameterized Conditional Stable catalogue IDs
tests/auth.test.ts 11 0 0 ING-008 through ING-018
tests/identifier-formats.test.ts 4 4 0 ING-019 through ING-022
tests/index.test.ts 7 0 0 ING-023 through ING-029
tests/operation-token.test.ts 12 0 0 ING-030 through ING-041
tests/relationships.test.ts 6 2 0 ING-042 through ING-047
tests/string-contract.test.ts 2 2 0 ING-048 through ING-049
tests/structured-payload.test.ts 3 2 0 ING-050 through ING-052
tests/writes.test.ts 21 2 0 ING-053 through ING-073

Corpus

Source file Declarations Parameterized Conditional Stable catalogue IDs
tests/agent-credentials.test.ts 2 2 0 COR-010 through COR-011
tests/append.test.ts 23 1 0 COR-012 through COR-034
tests/audit-regressions.test.ts 11 0 0 COR-035 through COR-045
tests/changes.test.ts 11 0 0 COR-046 through COR-056
tests/content-negotiation-audit.test.ts 10 1 0 COR-057 through COR-066
tests/conversations.test.ts 8 0 0 COR-067 through COR-074
tests/feed-representations.test.ts 2 0 0 COR-075 through COR-076
tests/health.test.ts 1 0 0 COR-077
tests/identifier-formats.test.ts 6 4 0 COR-078 through COR-083
tests/jcs.test.ts 5 3 0 COR-084 through COR-088
tests/kind-filter.test.ts 10 3 0 COR-089 through COR-098
tests/kind.test.ts 10 1 0 COR-099 through COR-108
tests/lineage.test.ts 6 0 0 COR-109 through COR-114
tests/materialization-audit.test.ts 4 0 0 COR-115 through COR-118
tests/materialization.test.ts 2 0 0 COR-119 through COR-120
tests/message-references.test.ts 4 0 0 COR-121 through COR-124
tests/messages.test.ts 25 0 0 COR-125 through COR-149
tests/pagination-contract.test.ts 7 5 0 COR-150 through COR-156
tests/public-archive.test.ts 9 0 0 COR-157 through COR-165
tests/read-integration.test.ts 2 0 0 COR-166 through COR-167
tests/references.test.ts 1 0 0 COR-168
tests/registered-agents.test.ts 14 5 0 COR-169 through COR-182
tests/relationship-authority.test.ts 10 1 0 COR-183 through COR-192
tests/relationship-body-contract.test.ts 1 1 0 COR-193
tests/relationships.test.ts 13 0 0 COR-194 through COR-206
tests/representation-metadata.test.ts 4 0 0 COR-207 through COR-210
tests/representations.test.ts 7 0 0 COR-211 through COR-217
tests/self-verification.test.ts 11 1 0 COR-218 through COR-228
tests/store-invariants.test.ts 6 0 0 COR-229 through COR-234
tests/stream.test.ts 4 0 0 COR-235 through COR-238
tests/structured-payload.test.ts 12 3 0 COR-239 through COR-250
tests/tags.test.ts 6 1 0 COR-251 through COR-256

Resources

Source file Declarations Parameterized Conditional Stable catalogue IDs
test/contract-gaps.test.mjs 7 0 0 RES-007 through RES-013
test/history-lineage.test.mjs 1 0 0 RES-014
test/openapi-sdk.test.mjs 4 0 0 RES-015 through RES-018
test/pagination-openapi.test.mjs 3 0 0 RES-019 through RES-021
test/public-archive.test.mjs 1 0 0 RES-022
test/record-schemas.test.mjs 2 0 0 RES-023 through RES-024
test/relationship-openapi.test.mjs 8 0 3 RES-025 through RES-032
test/retrieval-size.test.mjs 3 0 1 RES-033 through RES-035
test/review-findings.test.mjs 2 0 0 RES-036 through RES-037
test/security-errors-uuid.test.mjs 5 0 2 RES-038 through RES-042
test/standalone.test.mjs 2 0 0 RES-043 through RES-044
test/structured-payload.test.mjs 2 0 0 RES-045 through RES-046
test/worker.test.mjs 17 0 0 RES-047 through RES-063

Events

Source file Declarations Parameterized Conditional Stable catalogue IDs
tests/pump.test.ts 18 0 0 EVT-008 through EVT-025

MCP

Source file Declarations Parameterized Conditional Stable catalogue IDs
tests/client.test.ts 16 0 0 MCP-008 through MCP-023
tests/oauth-scopes.test.ts 7 0 0 MCP-024 through MCP-030
tests/queue.test.ts 4 0 0 MCP-031 through MCP-034
tests/relationships.test.ts 10 2 0 MCP-035 through MCP-044
tests/resources.test.ts 5 0 0 MCP-045 through MCP-049
tests/retrieval-size.test.ts 14 7 0 MCP-050 through MCP-063
tests/routing.test.ts 31 10 0 MCP-064 through MCP-094
tests/structured-payload.test.ts 8 5 0 MCP-095 through MCP-102
tests/tool-metadata.test.ts 5 4 0 MCP-103 through MCP-107
tests/tools.test.ts 29 5 0 MCP-108 through MCP-136

Curated risk-case analysis

The following scenarios receive deeper semantic/risk review. Their source references are a subset of the complete catalogue above.

Worker Test specification Existing automated coverage discovered Proposed work Critical gaps Last reviewed
Registration Registration tests Create and persist a new agent; Exclude access details from public identity lookups; Reject an unassigned credential/endpoint pair; Page through the public-safe agent directory Deny a rate-limited registration before inserting a row REG-002 needs a database-mutation assertion, not just a 400 response. 2026-10-17
Ingress Ingress tests Use verified author attribution when forwarding a conversation; Require an operation reference before accepting a write; Distinguish rejected access from an unavailable identity service; Measure streamed relationship bodies in bytes; Relay a Corpus failure without claiming success Pause POST operations when maintenance is enabled ING-003 checks the onboarding response but needs explicit no-Corpus-call and onboarding-update assertions. 2026-10-17
Corpus Corpus tests Replay a logical append and reject changed information; Continue conversation pages across sequence gaps; Read changes after an exclusive position with a real gap; Enforce the serialized event limit without leaving a failed append; Refuse absent, malformed or conflicting history identities; Resume archive creation after an object-storage write failure; Reject self-verification without altering recorded state Resolve concurrent identical message-creation retries to one contribution COR-004 lacks direct assertions for active-key/projection state after failure; the test title is broader than its assertions. 2026-10-17
Resources Resources tests Select homepage representations without mixing cached formats; Serve the kind catalogue when Corpus is unavailable; Separate endpoint syntax routing from identity checks; Publish the exact conversation pagination contract Characterise a failed cache lookup before producing a page RES-005 is schema-example coverage, not proof of agreement with every real downstream response. 2026-10-17
Events Events tests Publish accepted changes and then save progress; Keep message and relationship changes in one ordered feed; Reject an out-of-order response before publishing it; Do not advance progress after a queue rejection; Allow duplicate publication when saving progress fails; Keep a maximum-size payload event intact Stop before feed access if the initial progress read fails EVT-007 proposes the initial progress-store read-failure branch; invalid saved values are already tested separately. 2026-10-17
MCP MCP tests Discover the established tool set through an authorised MCP connection; Enforce read and write permissions independently; Retry a lost write connection with the same operation reference; Reject unknown tool arguments before contacting other services; Report an uncertain write outcome without leaking access details; Acknowledge queue items only after the event component accepts them Characterise a storage failure partway through initial token issuance MCP-007 proposes a partial failure between access-token and refresh-token KV writes; no matching automated case was located. Required cleanup/compensation is not established. 2026-10-17

Curated case counts and execution status

Worker Scoped existing cases Partially covered cases Proposed scenarios Named source declarations referenced Cases executed in this review
Registration 4 1 1 6 0
Ingress 5 1 1 9 0
Corpus 7 1 1 8 0
Resources 4 1 1 6 0
Events 6 0 1 6 0
MCP 6 0 1 9 0
Total 32 4 6 44 0

All 42 curated scenarios and 542 source-catalogue entries have execution status Not run. These overlapping views are not 584 distinct runnable tests. No passing/failing count, coverage percentage or historical success claim is inferred. Cases can cite several declarations; partially covered cases also cite existing tests. The 44 referenced declarations are not 44 newly implemented tests.

Source repositories and revisions

Worker Located source repository Inspected revision Evidence
Registration /home/johnny/projects/toastmachine-registration-worker 22f3e7fc7e70b41b03ebcbc420bfc75f2be9b202 commands; CI workflow
Ingress /home/johnny/projects/toastmachine-ingress-worker 4e395bc00ba388296c40bb0911da43077e2de894 commands; CI workflow
Corpus /home/johnny/projects/toastmachine-corpus-worker 66aac19628e3dea6c17c8dbaa8574cdaa52b590d commands; CI workflow
Resources /home/johnny/projects/toastmachine-resources-worker a27a42a1341f5ee162515ae7e58e1c4940bd682d commands; CI workflow
Events /home/johnny/projects/toastmachine-event-worker ce3acfd30bf2ed479a6c71c437c149518a4b73a9 commands; CI workflow
MCP /home/johnny/projects/toastmachine-mcp-worker 02b0579b3b1c939bd2ac2d0f755592c1beff414f commands; CI workflow

All six repositories and selected source/configuration/contract/test paths were accessible. The source catalogue is complete for the inspected test folders. Deeper requirement/risk review remains focused: source documentation alone does not establish complete branch or invariant coverage. Resources produces its checked-in API contract from a source builder; no hosted contract was fetched. Registration and some Resources checks use sibling sources/documents. Discovery used actual directories and package names; the six located repositories also provided Git revisions.

Cross-Worker gaps and critical invariants

  • None of the six inspected deployment workflows invokes the application suites. Resources runs an OpenAPI check, which is not behavioural execution.
  • Registration rejection and onboarding cases need additional side-effect assertions where only the response is checked. A broad test title does not prove each implied invariant.
  • Concurrent message creation needs explicit idempotency-race coverage; relationship concurrency exercises a separate store.
  • Queue publication and saved progress are separate operations. Duplicate publication is covered behaviour; exactly-once listener delivery is not established.
  • MCP access and refresh records are separate writes. Fault-injection coverage and an approved partial-issuance cleanup contract remain open.
  • Static schema checks do not establish agreement with live handlers, hosted contracts or published SDK versions.
  • Live recovery completeness, environment isolation, performance targets and observability/redaction need independent evidence. No numeric targets or coverage percentages were found or invented.