chore(tasks): mark yaml-normalization, mcp-batch-cap, cov13, projection-truthfulness completed

This commit is contained in:
2026-08-30 23:36:41 +00:00
parent 1a5ae8748a
commit 9819c24b4f
5 changed files with 26 additions and 10 deletions
+6 -2
View File
@@ -1,7 +1,7 @@
---
id: review-002-mcp-batch-cap
name: Cap MCP batch tool at MAX_BATCH_OPERATIONS (PRJ-22)
status: pending
status: completed
depends_on: []
scope: single
risk: low
@@ -43,4 +43,8 @@ doc (PRJ-09's fix) advertises no limit either.
One of the smallest tasks in the batch — a good first warm-up slice or
fold-in candidate if a session runs short (but keep the commit
separate; it is its own unit of work).
separate; it is its own unit of work).
## Summary
MAX_BATCH_OPERATIONS hoisted to gateway/mod.rs (shared by routes/to_mcp/to_openapi); MCP batch rejects >100 calls pre-dispatch with INVALID_INPUT; schema maxItems + tool description updated. GatewayDispatch::invoke_count() test-spy accessor added.
@@ -1,7 +1,7 @@
---
id: review-002-projection-truthfulness
name: Projection doc truthfulness — dangling CallError ref, status clobber/drifts, OAS-invalid extension (PRJ-16b/17/18/19/20/21/23/24)
status: pending
status: completed
depends_on: []
scope: moderate
risk: low
@@ -85,4 +85,8 @@ PRJ-16b and PRJ-23 escaped). Consider one shared
`golden_doc_with_ops()` fixture replacing per-test registry setup.
ADR-045's version bump: these are doc-contract corrections — bump
`info.version` per ADR-045's tracking rule (gateway endpoint contract
itself unchanged).
itself unchanged).
## Summary
PRJ-16b BatchError component oneOf; PRJ-17 op-declared errors merge into protocol responses; PRJ-18 /publish 400 narrowed; PRJ-19 415/422 slots via shared builders; PRJ-20 /call 401 identity split; PRJ-21 unreachable /batch 500 removed; PRJ-23 invalid extension deleted; PRJ-24 dead search_filter removed. gateway-spec 1.2.0 -> 1.3.0 (minor per ADR-045). GW-15 413 context folded into 400-slot docs.
@@ -1,7 +1,7 @@
---
id: review-002-yaml-normalization
name: YAML input normalization — duplicates, .inf, merge keys, non-string keys (OAI-12)
status: pending
status: completed
depends_on: []
scope: narrow
risk: medium
@@ -66,4 +66,8 @@ Keep the walk cheap (one pass, no allocation beyond error messages).
The alias-bomb/depth bounds are dependency-provided and verified
working (review 002 re-verified) — do not re-implement them; the task
is about *semantic* normalization, not resource limits. ADR-051 is the
decision record to update if the merge-key stance changes behavior.
decision record to update if the merge-key stance changes behavior.
## Summary
Post-parse YAML normalization at the from_yaml seam: loud duplicate-key rejection (yaml_serde native), merge keys applied (shallow), .inf/.nan + non-representable keys rejected with pointers, scalar keys stringified per YAML 1.2 core schema. Premise correction recorded: serde_json Value itself last-wins on dups - parity contract is YAML-stricter-by-design. ADR-051 section added.