S00-018: Approve bounded XML ingress after independent framing checks

Changes: Accept the isolated S00-018 ingress experiment and bounded ADR; record independent security findings and review handoff. Preserve all browser, live WSS, interoperability and production resource limitations.
Validation: Fresh-cache npm ci and all 55 integrated tests passed on Node 24.21.0/npm 11.19.0; six additional adversarial documents rejected before real JXT.parse with stale callback/fresh attempt checks. Verified ten dependency licenses/integrities, 340 unchanged Stanza files, upstream saxes license bytes and matching digests. Stock defects reproduced; make check passed 72 tooling tests. Initial getter-only tracing attempt failed and is recorded separately. Scope/whitespace inspected; no browser or live WSS test.

Task: S00-018
Agent: auto-security-64dc2d9fa232
Role: security
Action: review
Status: done

Task title: Validate bounded standalone XML ingress for the XMPP candidate
This commit is contained in:
wt committed 2026-10-15 02:35:56 +07:00
1 parent e2b4dbdb76
commit 74e1fd87d9
8 files changed
+198 -21

No files matched your search

+34 -12
View File
@@ -1,6 +1,6 @@
{
"schema_version": 1,
"revision": 45,
"revision": 46,
"tasks": {
"S00-001": {
"status": "done",
@@ -32,18 +32,16 @@
"completed_at": "2026-10-14T19:06:23+00:00"
},
"S00-003": {
"status": "blocked",
"owner": "auto-protocol-902594b44429",
"status": "todo",
"owner": null,
"started_at": "2026-10-14T19:20:57+00:00",
"reason": "S00-003 cannot attest parser limits: Stanza 12.22.1 exposes no resource bounds and its persistent WebSocket parser accepts large/deep XML and reassembles incomplete documents across separate input messages.",
"updated_at": "2026-10-14T19:24:00+00:00",
"blocked_by": [
"S00-018"
],
"reason": null,
"updated_at": "2026-10-14T19:35:55+00:00",
"blocked_by": [],
"resume_status": "in_progress",
"blocker_report": "state/blockers/S00-018.md",
"handoff": "state/handoffs/S00-003.md",
"previous_owner": "auto-protocol-826aa6bc12ef",
"previous_owner": "auto-protocol-902594b44429",
"resumed_after_blocker": true
},
"S00-004": {
@@ -1236,14 +1234,17 @@
"completed_at": "2026-10-14T19:20:57+00:00"
},
"S00-018": {
"status": "review",
"status": "done",
"owner": "auto-protocol-89fe6563092c",
"external_wait": false,
"reason": null,
"started_at": "2026-10-14T19:24:01+00:00",
"updated_at": "2026-10-14T19:31:32+00:00",
"updated_at": "2026-10-14T19:35:55+00:00",
"evidence": "state/evidence/S00-018-auto-protocol-89fe6563092c.md",
"handoff": "state/handoffs/S00-018.md"
"handoff": "state/handoffs/S00-018.md",
"reviewer": "auto-security-64dc2d9fa232",
"review_evidence": "state/evidence/S00-018-review.md",
"completed_at": "2026-10-14T19:35:55+00:00"
}
},
"events": [
@@ -1825,6 +1826,27 @@
"to": "review",
"reason": null,
"evidence": "state/evidence/S00-018-auto-protocol-89fe6563092c.md"
},
{
"revision": 46,
"at": "2026-10-14T19:35:55+00:00",
"action": "auto-unblock",
"task": "S00-003",
"resolved_by": "S00-018",
"to": "todo",
"fresh_agent_required": true
},
{
"revision": 46,
"at": "2026-10-14T19:35:55+00:00",
"action": "approve",
"task": "S00-018",
"agent": "auto-security-64dc2d9fa232",
"role": "security",
"from": "review",
"to": "done",
"reason": null,
"evidence": "state/evidence/S00-018-review.md"
}
],
"retired_agents": [