chore(tasks): mark yaml-normalization, mcp-batch-cap, cov13, projection-truthfulness completed
This commit is contained in:
@@ -1138,7 +1138,7 @@ mod tests {
|
|||||||
.collect();
|
.collect();
|
||||||
let mut args = Map::new();
|
let mut args = Map::new();
|
||||||
args.insert("calls".to_string(), Value::Array(calls));
|
args.insert("calls".to_string(), Value::Array(calls));
|
||||||
let dispatch_spine = dispatch(registry, provider());
|
let dispatch_spine = dispatch(registry);
|
||||||
let gateway = ToMcpGateway::new(Arc::clone(&dispatch_spine));
|
let gateway = ToMcpGateway::new(Arc::clone(&dispatch_spine));
|
||||||
|
|
||||||
let result = invoke_tool(&gateway, "batch", Some(args), None).await;
|
let result = invoke_tool(&gateway, "batch", Some(args), None).await;
|
||||||
@@ -1176,7 +1176,7 @@ mod tests {
|
|||||||
.collect();
|
.collect();
|
||||||
let mut args = Map::new();
|
let mut args = Map::new();
|
||||||
args.insert("calls".to_string(), Value::Array(calls));
|
args.insert("calls".to_string(), Value::Array(calls));
|
||||||
let dispatch_spine = dispatch(registry, provider());
|
let dispatch_spine = dispatch(registry);
|
||||||
let gateway = ToMcpGateway::new(Arc::clone(&dispatch_spine));
|
let gateway = ToMcpGateway::new(Arc::clone(&dispatch_spine));
|
||||||
|
|
||||||
let result = invoke_tool(&gateway, "batch", Some(args), None).await;
|
let result = invoke_tool(&gateway, "batch", Some(args), None).await;
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
---
|
---
|
||||||
id: review-002-mcp-batch-cap
|
id: review-002-mcp-batch-cap
|
||||||
name: Cap MCP batch tool at MAX_BATCH_OPERATIONS (PRJ-22)
|
name: Cap MCP batch tool at MAX_BATCH_OPERATIONS (PRJ-22)
|
||||||
status: pending
|
status: completed
|
||||||
depends_on: []
|
depends_on: []
|
||||||
scope: single
|
scope: single
|
||||||
risk: low
|
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
|
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
|
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
|
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)
|
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: []
|
depends_on: []
|
||||||
scope: moderate
|
scope: moderate
|
||||||
risk: low
|
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.
|
`golden_doc_with_ops()` fixture replacing per-test registry setup.
|
||||||
ADR-045's version bump: these are doc-contract corrections — bump
|
ADR-045's version bump: these are doc-contract corrections — bump
|
||||||
`info.version` per ADR-045's tracking rule (gateway endpoint contract
|
`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
|
id: review-002-yaml-normalization
|
||||||
name: YAML input normalization — duplicates, .inf, merge keys, non-string keys (OAI-12)
|
name: YAML input normalization — duplicates, .inf, merge keys, non-string keys (OAI-12)
|
||||||
status: pending
|
status: completed
|
||||||
depends_on: []
|
depends_on: []
|
||||||
scope: narrow
|
scope: narrow
|
||||||
risk: medium
|
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
|
The alias-bomb/depth bounds are dependency-provided and verified
|
||||||
working (review 002 re-verified) — do not re-implement them; the task
|
working (review 002 re-verified) — do not re-implement them; the task
|
||||||
is about *semantic* normalization, not resource limits. ADR-051 is the
|
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.
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
---
|
---
|
||||||
id: review-002-cov13-dead-code
|
id: review-002-cov13-dead-code
|
||||||
name: Delete dead accessors and FromRef impls — resolve_bearer wire-or-delete decision (COV-13)
|
name: Delete dead accessors and FromRef impls — resolve_bearer wire-or-delete decision (COV-13)
|
||||||
status: pending
|
status: completed
|
||||||
depends_on: []
|
depends_on: []
|
||||||
scope: single
|
scope: single
|
||||||
risk: low
|
risk: low
|
||||||
@@ -52,4 +52,8 @@ Small, zero-risk deletion sweep. Good pairing with any other session's
|
|||||||
warm-up. If the `resolve_bearer` hook-decision feels non-obvious
|
warm-up. If the `resolve_bearer` hook-decision feels non-obvious
|
||||||
(needs an ADR or design note), default to delete — dead code with an
|
(needs an ADR or design note), default to delete — dead code with an
|
||||||
aspirational doc claim is worse than no hook; a real hook can be added
|
aspirational doc claim is worse than no hook; a real hook can be added
|
||||||
when a concrete assembly-layer need exists.
|
when a concrete assembly-layer need exists.
|
||||||
|
|
||||||
|
## Summary
|
||||||
|
|
||||||
|
Merge note: resolved alongside mcp-batch-cap (invoke_count accessor kept, identity_provider/resolve_bearer deleted single-arg constructor).
|
||||||
|
|||||||
Reference in New Issue
Block a user