Point-of-Capture Evidence Discipline: Why a Strong Gate Cannot Save Unmeasured Intake
Abstract
Cryptographic and adversarial verification at the merge gate is necessary and insufficient. Over fourteen days, two repositories created 602 issues and closed 78 (13% closure). Nearly one in four was marked P0 or P1. Duplicate mirrors accumulated without a standing check. This paper specifies a two-tier intake (observations vs governed tasks), a four-field evidence rubric, a severity rubric with an unlinked escape hatch, and three cross-boundary integrity assertions.
Abstract
We enforce rigorous cryptographic and adversarial verification at the gate, but virtually zero validation at the point of capture (task_create, agent finding drops, automated mirrors). A gate that holds cannot measure what never should have become a task.
Over fourteen days (2026-08-01 to 2026-08-14), paginated intake across both repositories was:
| Repository | Issues Created | Open | Closed | Closure Rate | Marked P0 / P1 |
|---|---|---|---|---|---|
Mumega-com/mupot | 210 | 182 | 28 | 13.3% | 43 (20.5%) |
Mumega-com/mumega-com | 392 | 342 | 50 | 12.8% | 99 (25.3%) |
| Total | 602 | 524 | 78 | 13.0% | 142 (23.6%) |
Symptoms: backlog expansion of +524 net intake debt; priority inflation destroying sort; critical defects filed twice and lost in noise; 529 duplicate mirror issues accumulated without a single instrument reporting the anomaly.
1. Two-Tier Intake
Tier 1 — Observations (zero-friction stream)
Raw findings, log anomalies, and agent ideas write to an append-only observation stream. No GitHub issue is created. No task debt is tracked.
Tier 2 — Governed Tasks (mandatory evidence)
To become a tracked task, a filing must satisfy a minimal evidence rubric:
expected— what the specification or ADR guarantees.observed— exact measurement, log excerpt, or status code.reproduction— executable command, curl probe, or test fixture.done_when— falsifiable condition for resolution.
Filing without these fields fails validation at task_create.
2. What Makes P0/P1 Mean Something Again
| Priority | Definition | Gate / Constraint |
|---|---|---|
| P0 (Emergency) | Security boundary breach, active data loss/corruption, or total production outage. | Requires council acknowledgment; alerts immediately. |
| P1 (Flight blocker) | Directly blocks an active flight or an out-of-flight critical finding with a named owner and a stated re-review TTL (max 7 days). | If neither flight_id nor [owner + TTL] is present, routes to Tier 1. |
| P2 (Standard defect) | Verified bug with reproduction fixture, not blocking an active flight. | Default for verified defects. |
| P3 (Backlog / polish) | Non-blocking enhancements, cleanup, refactors. | Default for exploratory ideas. |
Target: P0/P1 drops from 23.6% of the backlog to under 5%.
3. Cross-Boundary Integrity Assertions
Deriving invariants from the local data model creates green signals that touch nothing. On duplicate mirror creation, UPDATE ... WHERE github_issue_url IS NULL matches 0 rows and silently discards orphan URLs. The tasks table remains internally consistent while GitHub accumulates orphans.
The check must cross the boundary into GitHub:
- Footer multi-mirror invariant. Enumerate GitHub issues carrying
_mupot task <uuid>_. Group by footer UUID and assert count equals 1. - Liveness coherence. No open or in-progress task may point at a closed GitHub issue.
- Intake mutation veracity. Never trust HTTP 200 from
task_create. Inspect the persisted row and assert requested fields were actually written.
4. Detection Velocity Is Not Resolution Velocity
An autonomous multi-agent network discovers anomalies faster than humans or agents can implement PRs. Treating every discovery as a committed issue produces false debt. Agents may detect continuously into Tier 1. Tier 2 tasks are created only when bounded inside an active flight or an explicit operator assignment.
5. Field Discoveries at the Capture Point
- Silent assignee stripping.
task_createwithexternal_sourcereturned 200 and nulledassignee_agent_id. Follow-up assign failed 403. - Repo-blind mirroring. Tasks specifying one repository auto-mirrored to another.
- Mirror re-open on
task_update. Updating a Mupot task re-opened a GitHub issue that had been closed. - Silent 100-row truncation.
task_listcapped results without pagination cursors or warning headers. - Cross-squad visibility gap. Tasks created into one squad did not appear in queries scoped to another, requiring global scans for bridge assertions.
6. Implementation Phases
- Evidence schema validation on
task_create; fix silent assignee nulling; guard against re-opening closed GitHub issues. - Enforce P1 flight linkage or named-owner TTL.
- Live cross-boundary integrity checker that fails closed on stale task pointers.