Requirements that say @jwildfire reviewed them

Counted 2026-08-18 against the GitHub API ยท 113 requirements on jwildfire/obot.roadmap

Seventy-four roadmap requirements end with a line saying that @jwildfire reviewed them. Nothing anywhere records that he did โ€” not a decision artifact, not a GitHub review, not a reaction on the issue.

Fifty are still open. Thirty-eight of those sit at Requirement Gathering, one stage from the work starting.

What the line says, and what it means

Every agent-drafted artifact in this portfolio ends with an attribution line. Until 2026-08-18 it read:

This Issue was drafted by ๐Ÿงญ๐Ÿค– obot-navigator (Claude Code using Opus 5) and reviewed by @jwildfire.

The first half is a fact the agent knows. The second half is a claim about somebody else, written by the party it benefits, at the moment of filing โ€” which is to say, before any review could have happened. It costs nothing to write and nothing checks it, and 74 times it drifted from the truth.

The clearest case is #215 itself, the requirement that this convention comes from. It was drafted by the Navigator in an unattended session on 2026-08-16 at 21:02 UTC, filed with that line attached, and @jwildfire had not seen it. The requirement about not letting an agent's inference read as his approval asserted his approval on its own face.

This is not carelessness by any one session. It is what a costless assertion does over six weeks. Requirement #215 warned that an approval field would become a self-certification field within a week if anyone could type into it; the measurement here is that warning already come true, in the field nobody thought of as a field.

What was done about it

The line now ends at the author. Whether @jwildfire approved something is recorded separately, on a line that has to resolve to a record the filer did not write:

Authored by: ๐Ÿงญ๐Ÿค– obot-navigator (Claude Code using Opus 5)
Approved by: EMPTY

EMPTY means nobody has approved it, and it is the normal, correct value for work an agent wrote. The alternative is a citation โ€” a decision id such as D0018.1, or his native GitHub review as owner/repo#123 review โ€” which node scripts/provenance.mjs resolve turns back into what was asked, what he said, the channel and the date. Prose does not resolve, and the nightly audit fires on a claim that cannot be shown.

Why these 74 were not rewritten

Editing 74 issue bodies to say something different about @jwildfire's own review is a bulk change to his record, made unattended, on his behalf. That is the shape of act this requirement exists to prevent, and doing it in the name of the requirement would be the joke telling itself.

“Again, we're pushing for transparency and continuous improvement. not perfection.” โ€” @jwildfire, 2026-08-17

So they are counted, named below, and left as they are. Three things follow from that:

Rewriting the population is @jwildfire's call to make, and it is a small one to execute if he wants it: the same tool that reports them can stamp them.

The 50 still open

#RequirementStageFiled
#246what the machine may say about itself in public โ€” session names and draft-release titlesBacklog2026-08-18
#243merging is not deploying โ€” the checkout tracks main, and consumers restart when it movesRequirement Gathering2026-08-17
#242does the briefing get read aloud โ€” and at what cost to the wordsRequirement Gathering2026-08-17
#241an answer you clicked that nothing applied has to reach someoneRequirement Gathering2026-08-17
#240the session skills the fold replaces โ€” one retirement, five re-homings, and the notes that say soRequirement Gathering2026-08-17
#239the weekly briefing โ€” the sink that keeps the daily at nine linesRequirement Gathering2026-08-17
#238the morning fold, and the briefing it producesRequirement Gathering2026-08-17
#237the org chart โ€” who does what, what each may never do, and which failure created each roleRequirement Gathering2026-08-17
#236the admiral โ€” a triggered manager, so finished work stops sitting and nobody has to remember to lookRequirement Gathering2026-08-17
#234one-off tasks โ€” a small fix files against its goal, without a requirement to justify itRequirement Gathering2026-08-17
#229adversarial review of safetyCensus() โ€” does it stay or go, before v1.1.0 publishesRequirement Gathering2026-08-17
#227the dashboard's two views, literally โ€” a session table with filters, and a filterable metrics dashboardRequirement Gathering2026-08-17
#226goal #73 says what it is now โ€” a current body, five workstreams, and a bounded backlogRequirement Gathering2026-08-17
#223every surface renders honestly on a machine with no history โ€” before the move, not afterRequirement Gathering2026-08-16
#220his queue holds exactly three buckets โ€” RC, decision, config โ€” and the remainder is oursRequirement Gathering2026-08-16
#218the dashboard reads like a news feed, not an audit log โ€” rebuild the sessions and Navigator pagesRequirement Gathering2026-08-16
#212a worker that stops โ€” finished, stalled or dead โ€” wakes the NavigatorRequirement Gathering2026-08-16
#206the priced usage artifact refreshes on a cadence, or every surface says how old it isRequirement Gathering2026-08-16
#205a real "since you last looked" โ€” record page views locally, or say plainly that we cannotRequirement Gathering2026-08-16
#200roadmap discipline is measured โ€” the sweep checks all seven repos, and the audit stops reporting staleRequirement Gathering2026-08-16
#199the agent roster โ€” every agent with its id, status, cost and roadmap impactRequirement Gathering2026-08-16
#195the Navigator as operating officer โ€” asks become requirements, and delivery is judged at closeoutRequirement Gathering2026-08-16
#194every worker agent gets a permanent W0001 identity, allocated once and never recycledRequirement Gathering2026-08-16
#186standing sessions survive compaction โ€” continuous state, an explicit setting, and a silent-loss checkRequirement Gathering2026-08-15
#185the first mate โ€” in-flight supervision of worker agentsRequirement Gathering2026-08-15
#184the worker closeout check โ€” every agent finishes into a PR, a question, or a config requestRequirement Gathering2026-08-15
#180the Operations Dashboard โ€” my todo list, with blockers, where I answer decisionsRequirement Gathering2026-08-15
#148fast, responsive /session-wrapup โ€” the closing bookendRequirement Gathering2026-07-31
#147concurrent sessions โ€” autonomous runs alongside @jwildfire's and each otherRequirement Gathering2026-07-31
#146durable todo list โ€” one permanent list per goal and overall, updated not rewrittenRequirement Gathering2026-07-31
#139action log โ€” record and resolve the risks the app identifiesBacklog2026-07-29
#134demo-301 v0 โ€” forkable demo study running the app (Safety + RBQM domains)Requirement Gathering2026-07-28
#132roadmap hierarchy โ€” every issue reachable from a goalBacklog2026-07-28
#119Participant profile: the published copy documents the rail but not the adverse-event domain (sv#112 follow-up)Backlog2026-07-26
#87weekly goal review โ€” freshness sweep proposing linkages, labels, and orphan candidatesBacklog2026-07-25
#76obot GitHub App avatar โ€” Orange's photoBacklog2026-07-24
#74keynote live demo โ€” audience ideas implemented during the talkBacklog2026-07-24
#58ideas-triage v2 โ€” stronger model, richer context, bias-to-promoteRequirement Gathering2026-07-24
#48idea queue โ€” Siri/Reminders + hub Ideas Discussions intake with obot triageRequirement Gathering2026-07-23
#43abnormal-baseline DILI tools โ€” migration Sankey + ALT waterfall (Amirzadegan 2025)Requirement Gathering2026-07-22
#40Recurrent AE analysis (beyond first occurrence)Backlog2026-07-18
#39Benefit-risk value tree (MCDA)Backlog2026-07-18
#38Benefit-risk forest plot (safety-graphics suite)Backlog2026-07-18
#37QT Safety Explorer Phase 2 โ€” QTcI, multi-interval, drill-down, hysteresis & guided ICH-E14 workflowRequirement Gathering2026-07-18
#33legacy renderer issue migration โ€” mine the RhoInc trackers for safety.viz featuresRequirement Gathering2026-07-12
#32hep-explorer user guide โ€” Word doc to HTML (v1.3 release companion)Requirement Gathering2026-07-12
#22R/Pharma 2026 developer-diary blog seriesRequirement Gathering2026-07-09
#15qcthat-compatible QC reporting for safety.viz (JS issue-linked test matrix)Backlog2026-07-04
#10R/Pharma 2026 AI keynote deckRequirement Gathering2026-07-02
#9gsm.safety static safety charts from FDA ST&F guidanceBacklog2026-07-02

The 24 already closed

Listed for completeness. Nothing acts on a closed requirement, so these are the least urgent and the least worth touching.

#RequirementStageFiled
#203one information architecture, two audiences โ€” symmetry between the private dashboard and the public hubReleased2026-08-16
#211rebuild the roadmap page on D0018 โ€” the queue in front, the catalog behindReleased2026-08-16
#198no inline bold in artifacts โ€” emphasis is structural, or it is a calloutReleased2026-08-16
#92nightly roadmap audit โ€” rules, confidence-scored findings, and a one-click apply loopReleased2026-07-25
#77chat with the orchestrator from the live session dashboardReleased2026-07-24
#75participant profile v2 โ€” sidebar surfacing + AE domainsReleased2026-07-24
#35nepExplorer migration โ€” KDIGO kidney-safety explorer for safety.vizReleased2026-07-16
#30safety.viz v1.2 โ€” hep-explorer migrationReleased2026-07-12
#28gsm.safety v1.0 โ€” full adoption of safety.viz v1.1Released2026-07-12
#24session hub โ€” live session dashboard + wrapup session reportReleased2026-07-11
#1safety.viz โ€” consolidated safety-chart JavaScript libraryReleased2026-07-02
#71goal issues โ€” goals move from obot.agent files to hub issuesReleased2026-07-24
#36QT Safety Explorer โ€” ICH-E14 cardiac-safety renderer for safety.vizReleased2026-07-17
#46Session framework: Remote Control on every agent; Claude Tag not viableReleased2026-07-23
#7migrate the obot-claw hub into obot.roadmap as the project's memoryReleased2026-07-02
#202the roadmap page redesign โ€” a design spike he can react toReleased2026-08-16
#140one write-policy decision per repo โ€” unify merge tiers and autonomy grants into profilesReleased2026-07-29
#29safety.viz v1.3 โ€” remaining renderers + explorer demo environmentReleased2026-07-12
#25canonical demo data for safety.viz renderersReleased2026-07-12
#31roadmap transparency โ€” requirements tied to session goals, releases, and live statusReleased2026-07-12
#21safety.viz documentation site โ€” example gallery, test evidence, and API referenceReleased2026-07-09
#2Safety Histogram migration (pilot)Released2026-07-02
#45participant profile โ€” shared drill-down module for safety.vizReleased2026-07-23
#109trigger audit fixes from the page โ€” one click, live run status, decisions logged in placeReleased2026-07-25

Method: every issue labelled requirement on jwildfire/obot.roadmap, open and closed, read through the GitHub API on 2026-08-18. A requirement counts here when its drafted-by line asserts a review by @jwildfire and its body carries no provenance block. Reproduce with node scripts/provenance.mjs report.

Requirement #215 โ€” a requirement says whose decision it carries.


This report was drafted by ๐Ÿ‘ฏ๐Ÿค– W0046 (Claude Code using Opus 5) in an unattended session, and not yet reviewed by @jwildfire.