Tasks
tasks33/33
0. Contract
- 0.1 Capture the plan in the permanent
docs/research/corpus. - 0.2 Add OpenSpec proposal, design, tasks, and spec deltas.
- 0.3 Validate
complete-mcp-read-evidence-ladder --strict.
1. Hostile-Client Tests
- 1.1 Add MCP search coverage where
structuredContentis ignored and the visible result still carries a bounded matched text window. - 1.2 Add coverage proving visible field-window continuations include a model-callable tool path, not only a resource URI.
- 1.3 Add a negative control where metadata-only search hits do not invent a body match.
- 1.4 Add small-text read/fetch coverage for inline content without requiring file/resource materialization.
- 1.5 Add binary/large-text coverage that preserves bounded metadata and explicit continuation.
- 1.6 Add hosted-client structured-preview regression coverage where
content[]may be ignored but matched text evidence remains visible instructuredContent.
2. Resource-Server Evidence
- 2.1 Identify current search hit shapes for lexical, semantic, and hybrid search.
- 2.2 Surface proven lexical match-window metadata from the resource server matched text field.
- 2.3 Keep proven match windows explicit; adapters do not infer body/text fields.
3. Shared Evidence Primitives
- 3.1 Use adapter-neutral content-ladder field-window helpers.
- 3.2 Preserve explicit continuation metadata.
- 3.3 Keep binary/base64/blob fields metadata-only by default.
4. MCP Adapter
- 4.1 Render proven match windows in visible output within a strict budget.
- 4.2 Include model-callable
read_record_fieldcontinuation hints. - 4.3 Return bounded field windows with truthful truncation and match metadata.
- 4.4 Return ordinary small projected fetches inline.
- 4.5 Preserve resource support for capable clients.
- 4.6 Hide field-window resource URIs from model-visible output so hosted clients do not see dead handles.
5. CLI and Documentation
- 5.1 Keep CLI/read-evidence field-window behavior aligned with shared primitives.
6. Verification
- 6.1 Run focused
packages/read-evidencetests. - 6.2 Run focused hostile MCP tests.
- 6.3 Run resource-server lexical match-window regression.
- 6.4 Run full MCP server tests.
- 6.5 Run reference implementation typecheck.
- 6.6 Run OpenSpec validation for this change and all active specs.
- 6.7 Run
git diff --check. - 6.8 Prepare LAND/HOLD summary with residual hosted-client smoke status.
- 6.9 Rerun full gates and live-backed MCP smoke after structured-preview fix.
- 6.10 Rerun full gates and live-backed MCP smoke after hiding model-visible field-window resource URIs.
- 6.11 Add hostile-client coverage proving visible
pdpp://record/...handles are accepted byread_record_field.id.