fix(oia): count scan-cap truncation separately from scaffolding (#64), and add future-agi/future-agi to pending - #63
Conversation
Inbound contribution invitation from Future AGI's CEO (2026-09-24) surfaced an Apache-2.0, ~2.1k-star agent-stack repo that belongs in the intake funnel rather than in one person's inbox. Row generated by scripts/add-pending.mjs so the placement comes from the same classifier the page's Rescan uses, not from a hand-authored guess. Pending band only, evidence tier 'auto'. Committee review still gates promotion to curated. Filed without a submission issue because the project was not self-submitted; the submitter fields would be wrong. Reviewer note: the heuristic lit L2 through L7 plus L9 as centre of gravity on a 6000-file scan, which is wider than the project plausibly occupies. Treat the vector as a signal pass needing a reader-agent audit, per the row's own gaps[]. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
|
Moving this to draft. Two corrections, one of which I got wrong twice. Adversarial verification returned PARTIAL on this branch. All six mechanical claims hold (diff is exactly two files, 1. The row publishes a false number
Latent until now: the other five pending rows all have 2. My layer-vector explanation was wrong, in both directionsFirst I called the seven-layer vector monorepo signal saturation. Then I posted controls ( The 6,000 scanned file paths contributed nothing. The entire placement comes from a 24,330-character README. That also explains the So the vector is over-broad after all, and the narrative's "Heuristic file-tree scan of 6000 files" actively points readers at the wrong basis for a placement the file tree did not influence. What happens nextParked in draft until #64's first defect is fixed, then this row gets regenerated with honest counts. Defect 2 changes placements for every |
There was a problem hiding this comment.
Copilot review overview
🟡 Changes recommended
The new matrix row’s narrative text is misleading (“from a submission”) despite issue: null and the PR description indicating it was not self-submitted.
Get a fresh assessment by requesting another Copilot review.
Review effort: Lite
Findings: 1
Open (1)
What changed in this PR
Adds future-agi/future-agi as a new pending entry in the OIA application matrix, along with a generated README badge, aligning with the intake pipeline that auto-classifies repos and queues them for committee review.
Changes:
- Appends a new
pendingrow forfuture-agi/future-agiindocs/data/oia-matrix.jsonwith layers, spans, evidence, and narrative metadata. - Adds the corresponding badge SVG at
docs/badges/future-agi/future-agi.svgfor embedding and row linking.
| File | Description |
|---|---|
| docs/data/oia-matrix.json | Adds the new pending matrix entry for future-agi/future-agi (layers/spans/evidence/gaps). |
| docs/badges/future-agi/future-agi.svg | Adds the generated OIA badge for the new matrix row. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
| "7": "signal-detected centre of gravity (Orchestration & Workflow)", | ||
| "9": "signal-detected centre of gravity (Human & Browser Interface)" | ||
| }, | ||
| "narrative": "Auto-classified from a submission. Heuristic file-tree scan of 6000 files (6448 scaffolding paths excluded); language Python, pushed 2026-09-24. Centre of gravity L2, L3, L4, L5, L6, L7, L9; presence none. This is a structural signal pass, NOT a comprehension read, and awaits committee review before promotion.", |
…ticsorg#64) buildCorpus computed `dropped` against the pre-cap path length, so it summed two unrelated things: paths removed by denoisePaths, and paths discarded by the hardcoded 6000-path cap. classify-oia.mjs and the page then rendered that total as '(N scaffolding paths excluded)'. On future-agi/future-agi that published '6455 scaffolding paths excluded' when 58 were scaffolding and 6397 were simply beyond the cap: an overstatement of roughly 110x that also concealed that only 48% of a 12455-path repo was read. It stayed latent because every prior submission was under the cap, so dropped was 0 and the parenthetical never rendered. buildCorpus now returns `dropped` (scaffolding only) and `truncated` (cap overflow) as separate counters that, with `kept`, partition the input. Both callers report them separately and name the cap. SCAN_CAP is exported rather than inlined so the text and the behaviour cannot drift. Reporting only: no signal map, threshold or corpus content changed, and the golden-vector tests are untouched and still pass, so no placement moves. Regenerates the future-agi row with honest counts: '6000 of 12397 project files (58 scaffolding paths excluded; 6397 beyond the 6000-file scan cap, not read)'. Tests added red-first: all three agenticsorg#64 assertions failed against the old counters before the fix, 164/164 pass after. Defect 2 from agenticsorg#64 (the doc>=1 guard corroborating nothing, because all = tree + ' ' + doc) is deliberately NOT addressed here. It moves placements on every auto row and needs the committee, not a drive-by. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>

Two commits: a reporting-accuracy fix in the classifier, and the matrix row that
surfaced the bug.
Closes the first defect in #64. Audit tracker for the row itself: #62.
1.
fix(oia): scan-cap truncation is not scaffoldingbuildCorpuscomputeddroppedagainst the pre-cap path length, so it summed twounrelated quantities: paths removed by
denoisePaths, and paths discarded by ahardcoded 6,000-path cap. Both callers then rendered that total as
(N scaffolding paths excluded).Measured on
future-agi/future-agi:truncatedflagfalseA scaffolding count overstated by roughly 110x, on a governance artifact whose entire
purpose is evidence-tiering credibility, and it concealed that only 48% of the repo was
read at all.
Latent until now: every prior submission was smaller than the cap, so
droppedwas 0and the parenthetical never rendered. This is the first submission large enough to trip
it.
Fix.
buildCorpusreturnsdropped(scaffolding only) andtruncated(capoverflow) as separate counters. With
keptthey partition the input, which is pinnedby a test.
SCAN_CAPis exported rather than inlined, so the reported number and theactual behaviour cannot drift. Both callers,
scripts/classify-oia.mjsand the page'sRescan path, report them separately and name the cap.
Before:
Heuristic file-tree scan of 6000 files (6455 scaffolding paths excluded)After:
Heuristic file-tree scan of 6000 of 12397 project files (58 scaffolding paths excluded; 6397 beyond the 6000-file scan cap, not read)This is a reporting change only. No signal map, threshold, or corpus content
changed. The golden-vector tests are untouched and still pass, so no row's placement
moves.
2. The matrix row
One row in the pending band for
future-agi/future-agi: Apache-2.0,~2.1k stars, bundling simulation, evals, guardrails, OpenTelemetry tracing, an
OpenAI-compatible gateway, and prompt optimization. It reached us as a direct
contribution invitation from the company's CEO, so it is funnel input rather than
personal correspondence.
Generated by
scripts/add-pending.mjs, not hand-authored.status: pending,evidence.t: auto.issueis null on purpose. The project was not self-submitted, so the submissionform's submitter fields would be attributed to the wrong person. #62 tracks the audit
but is not a submission record.
Read this before promoting the row
The row sits on L2, L3, L4, L5, L6, L7 and L9 at centre-of-gravity level, with zero
presence-level layers. That vector is not trustworthy, for a reason this PR does
not fix:
The 6,000 scanned file paths contributed nothing. A 24,330-character README produced the
entire placement, because
classifySignalspromotes onall >= 3 && doc >= 1whileall = tree + ' ' + doc, so the corroboration guard is satisfiable from prose alone.That is defect 2 in #64. It moves placements on every
autorow, so it belongs to adeliberate committee-informed re-classification, not to this PR.
Qualification gate as detected: issues yes, docs yes, infographic yes, ADRs no,
PRD no. Under @mrjcleaver2's proposed criteria that fails two of three documentation
requirements. Committee call, not a classifier call.
One further note for the committee: this is an evaluation and measurement vendor
whose public accuracy claims carry no stated baseline. Listing a measurement tool means
downstream users can inherit its metric definitions as their own gold standard. Listing
is not endorsement of its numbers, but we should know which we are doing.
Verification
#64assertions failed against the old counters before thefix.
npm testnow 164/164 pass, 0 fail. The pre-existing 161 were unaffectedthroughout.
count for the repo.
pre-fix one. Only the narrative and evidence text changed.
curated[]byte-identical at 20 entries;pending[]5 to 6; no duplicate names.testcheck green on this branch.the remediation of the finding that drove it.
Row anchor once deployed:
https://agenticsorg.github.io/community-projects/oia-matrix.html#oia-future-agi-future-agi