Context
Post-MVP residual workstream under Epic #11730. Epic #11720 (Sub E #11726 + Sub F2 #11728) establishes tenant-repo ingestion + a parser path for ONE proof-ladder source family. Discussion #11718 + the #11720 lost-item audit flagged that a real external tenant has many source families (JS-global, test-suite, IDE/header/test-library equivalents, custom formats) — deepening parser + ingestion coverage across all of them is post-MVP.
Gating Condition
Pursued after #11720's single proof-ladder ingestion path works (Sub E #11726 + Sub F2 #11728 landed — verifiable) AND a concrete broader-coverage signal fires — one of:
- a deployed tenant's ingestion run reports source families with no registered parser (raw-text-fallback chunks where structured parsing was expected), OR
- an operator / deployment files a coverage-gap against the #11726 source-family inventory checklist.
The proof-ladder path merely existing is not the trigger — a real multi-family tenant corpus must demonstrate the coverage gap. Until both conditions hold: captured intent, not active work.
Scope
- Enumerate the external tenant's full source-family inventory (builds on the inventory checklist AC already in Sub E #11726).
- Parser-dispatch coverage for each family beyond the single PoC parser.
- Bulk / backfill ingestion across families, volume-gate aware.
Contract Ledger
| Target Surface |
Source of Authority |
Proposed Behavior |
Fallback / Edge Case |
Docs |
Evidence |
| Parser-dispatch coverage per source family |
the KB parser registry + the parsed-chunk-v1 contract (learn/agentos/cloud-deployment/CustomParsers.md) |
Each in-scope source family has a registered parser that emits parsed-chunk-v1, or is explicitly deferred with rationale — beyond the single PoC parser of #11728. |
An unregistered family falls back to the server's raw-text parser (one whole-file chunk) — a coverage gap, not a failure. |
CustomParsers.md |
Per-family parser unit coverage |
| Tenant source-family inventory |
the source-family inventory checklist AC on Sub E #11726 |
The external tenant's full source-family inventory is enumerated — the deepening of #11726's checklist, not the checklist itself. |
Families not yet inventoried remain raw-text-ingested but flagged for a later pass. |
TenantIngestionModel.md |
The enumerated inventory artifact |
| Bulk / backfill multi-family ingestion |
the ai:ingest-tenant bulk CLI + the #10572 MCP work-volume gate |
Bulk/backfill ingests the multi-family corpus volume-gate-aware: incremental pushes via ingest_source_files, over-volume batches via the bulk CLI. |
Over mcpSyncMaxChunks → KB_INGEST_VOLUME_EXCEEDED → the bulk CLI path. |
HookWiring.md |
Bulk-ingestion coverage across families |
Acceptance Criteria
Out of Scope
- The single proof-ladder ingestion path + its one client-side parser — owned by #11720 (Sub E #11726, Sub F2 #11728).
- The source-family inventory checklist itself — already an AC on Sub E #11726; this workstream is the deepening (implementing coverage), not the checklist.
Related
Origin Session ID
8e1dc8ca-b5a5-4479-b3cf-31918eb4a5b2
Context
Post-MVP residual workstream under Epic #11730. Epic #11720 (Sub E #11726 + Sub F2 #11728) establishes tenant-repo ingestion + a parser path for ONE proof-ladder source family. Discussion #11718 + the #11720 lost-item audit flagged that a real external tenant has many source families (JS-global, test-suite, IDE/header/test-library equivalents, custom formats) — deepening parser + ingestion coverage across all of them is post-MVP.
Gating Condition
Pursued after #11720's single proof-ladder ingestion path works (Sub E #11726 + Sub F2 #11728 landed — verifiable) AND a concrete broader-coverage signal fires — one of:
The proof-ladder path merely existing is not the trigger — a real multi-family tenant corpus must demonstrate the coverage gap. Until both conditions hold: captured intent, not active work.
Scope
Contract Ledger
parsed-chunk-v1contract (learn/agentos/cloud-deployment/CustomParsers.md)parsed-chunk-v1, or is explicitly deferred with rationale — beyond the single PoC parser of #11728.raw-textparser (one whole-file chunk) — a coverage gap, not a failure.CustomParsers.mdTenantIngestionModel.mdai:ingest-tenantbulk CLI + the #10572 MCP work-volume gateingest_source_files, over-volume batches via the bulk CLI.mcpSyncMaxChunks→KB_INGEST_VOLUME_EXCEEDED→ the bulk CLI path.HookWiring.mdAcceptance Criteria
Out of Scope
Related
Origin Session ID
8e1dc8ca-b5a5-4479-b3cf-31918eb4a5b2