Skip to content

plan: Fledge's repository-growth roadmap and operator surfaces #547

Open

Description

@HugoXK

Written-by: HugoXK

Context

This is the live roadmap after the first merge wave. Several capabilities that were planned as issues are now merged into main; the remaining issues must be re-read against the tree before they are claimed. The product thesis is #654; the default decision surface is #655; the Software RSI definition is in #433 and #654.

The one loop remains:

connect a repository -> state a goal -> Fledge opens one focused PR
-> the person reviews the diff, tests, CI and cost -> merge -> repeat

Already merged (do not re-plan as new)

Phase 1 — close the core loop

  1. feat: let a repository own its rules and skills at a fixed default-branch commit #538 rules and skills — PR feat: add repository-owned rules and skills context #609 is the remaining core artifact. It must merge before a Strategy Bundle can exist.
  2. ui: split the Work page into a summary, a compact list and detail actions #625 memory audience fix — closes bug: a role-scoped project memory entry can be overwritten by another role, and revisions are read without their own audience #610; a role-scoped revision must be read under its own audience.
  3. feat: add one management service contract for console, API and chat #540 management commands — the base and pause are in; finish create/resume/retry and the settings commands the console actually uses. Do not build a second surface.
  4. feat: onboard a repository CI gate through a reviewed, human-confirmed pull request #543 gate onboarding — only the plan/session/confirm half is merged. Remaining: GitHub file/commit writes, gate PR creation, existing-workflow merge, trial runs.
  5. feat: make scheduled runs first-class occurrences with timezone, misfire and layered budgets #544 schedules — core/preview/tick are in. Remaining: occurrence rows, lease/recovery, misfire once, run-now, layered budgets, notification outbox, event subscriptions, console fields.
  6. feat: manage a connected repository's release, tag and draft notes from Fledge #546 release — preflight/tag/tracking are in. Remaining: release-note sources and skill, optional run analysis, webhook reconciliation, human edit/publish.
  7. feat: govern reactive triggers with mentions, in-flight merge and head supersede #637 trigger governance — revise the body first: the review path already stores pending_followup, and delivery replay is already deduped. The remaining gaps are mention triggers, merging different triggers before the first model call, head supersede and the other-bot budget.
  8. feat: add agent-written project memory and repository document promotion #638 memory follow-up — revise the body first: memory lives in src/lib/memory.ts and src/views/memory.ts; the schema already has owner/verification columns. The missing half is the agent writer and repository document promotion.

Phase 2 — product experience

These issues are review:changes; they must be corrected to target the real gap, not rebuild what exists.

Phase 3 — Software RSI (internal, evidence-gated)

The user never sees a dataset lab or a research console. They see improved outcomes and at most one approval action.

  1. feat: make a repository's development strategy a versioned, canary-able artifact #433 Strategy Bundle — the versioned, keyed, canary-able per-repository artifact. This is the unit RSI evolves.
  2. feat: add privacy-respecting loop analytics for the one loop #635 loop analytics — the outcome vector (first PR, merge wait, rescue, return, evidence completeness).
  3. feat: add a redacted evolution dataset registry with time/repo splits and per-repo consent #425 dataset + feat: compute paired, conformal and sequential evaluation evidence for a candidate #426 evidence — redacted, consent-aware, time/repository holdout; paired/bootstrap/conformal/sequential evidence. Insufficient data is defer.
  4. feat: run the first AgentDescent shadow experiment on the playbook #106 first shadow experiment — one low-risk section (review.md or the reviewer/lead playbook section), default defer.
  5. feat: run AgentDescent evolution as a durable, redacted Fledge job #429 offline evolution job + feat: implement RRSI selection, edit budget and leakage screening for Fledge artifacts #430 RRSI — isolated workspace, no user token, durable and idempotent; selection/edit budget/leakage before measurement.
  6. feat: add a fail-closed promotion pipeline with a signed release receipt #427 promotion receipt + feat: add a per-repository canary and rollback controller for evolved artifacts #428 canary — evidence-bound, human-approved, per-repository canary with rollback.
  7. feat: audit proxy evaluators against a sampled oracle before promoting an artifact #431 audit — proxy evaluator vs sampled oracle; required before a proxy metric is used to promote.
  8. feat: turn repeated failures into a proposed capability and evaluate it #432 failure-to-capability — repeated postmortems (feat: turn every failed job into a linked postmortem with a recurrence count and a preventive action #384, merged) and work types (feat: add a work-type registry and a first-class issue-triage workflow #390, merged) become a skill/rule candidate, not a retry loop.

Dependency order

#538 -> #433 -> #429 -> #430
#635 -> #425 -> #426 -> #106 -> #427 -> #428
#384/#390 -> #432 -> #427
#431 -> #427 (before the first proxy-based promotion)

Not now

Issue hygiene

Success measures

  • Median time to first merged PR, and ready PR to human decision.
  • Human-rescue rate.
  • Weekly returning repositories.
  • Evidence completeness.
  • Cost per merged PR.
  • Candidate acceptance and canary rollback rate (RSI only).

Read at main b0adcc5.

Activity

  1. added
    enhancementNew feature or request
    area:jobsJob lifecycle, queue, callbacks
    needs-humanNeeds an owner or operator decision/action
    area:docsDocumentation, ADRs, handoff
    priority:ownerOwner-planned task; prioritize ahead of the Product backlog
    on Nov 13, 2026
  2. HugoXK commented on Nov 13, 2026

    @HugoXK
    OwnerAuthor

    Implementation analyses are posted on each issue:

    Each comment covers current code touchpoints, schema, contracts, state machines, failure/concurrency/security, test plan and rollout slices. No effort estimates were included.

  3. added
    needs-reviewWaiting for the Fledge Platform Reviewer's issue review
    on Nov 13, 2026
  4. HugoXK-bot commented on Nov 13, 2026

    @HugoXK-bot
    Collaborator

    Issue-review: PASS at issue #547 body c5036e87fbeb
    Written-by: HugoXK-bot
    Posted-by: HugoXK-bot

    Record card, judged as a record card — not as work. It carries needs-human and priority:owner, and nothing in it is claimable.

    Ran:

    • node scripts/issue-gate.mjs --repo HugoXK/fledge --issue 547 — no-pass; node scripts/issue-hash.mjs — raw c5036e87fbeb, trimmed a87e49f4840c
    • checked the nine referenced cards exist and are the owner-planned set: #538, #539, #540, #541, #542, #543, #544, #545, #546 — all open, all review:approved from my verdicts at their live bodies
    • checked the plan against the repo's own rules in AGENTS.md: agent-ready requires "not an umbrella"; this card is an umbrella by construction (nine P0/P1 children), so it must never take that label
    • duplicate/overlap search in this repository: #278 (open, priority:owner, hold, review:approved) is the standing plan card — "next product slice — finish continuity, then owner surface and review feedback"; #365/#366/#377 are the continuity cards it composes with
    • read the body's own structure: context, nine proposed issues with prior-art references, "why these and not the bot's execution model", verification, references
      Not run: a read of agent-ci-infra/bot at 23e70c2 (outside this repository's review surface, and the card itself says the analysis was read-only); no code change to test.

    Findings:

    1. Scope and honesty are right for a record: it names what not to copy (the multi-harness runtime, per-project computers, a wide write token, management approvals) and puts AGENTS.md rule 7 ("Only original material") in the body, which is the rule that matters when borrowing a design from another project. It also separates "later candidate, not filed" from the filed set.
    2. It does not name #278, the open plan card that already sequences continuity and the owner surface. Two plan cards governing overlapping territory will cost the Lead a reconciliation later. Add one line saying which plan governs which slice, or that #547 extends #278 after #239.
    3. "Verification of the plan" claims each filed issue carries "a problem, expected behavior, a red test, scope/tier, non-goals and prior-art references". That is not true for all nine as they stand: my verdicts on #539 (scope misses bridge/README.md, which can move its tier) and #540 (no catalog named, and "same transaction where possible" is untestable) record gaps. Either soften the claim to "most" or fold those two gaps into the plan's own follow-up list.
    4. The analysis is pinned to Fledge 949726335; live main is 9c00cf6a (#519 and #550 landed after). Harmless for a governance read, but a claimer will be reading a newer tree — say so in the body so the locators are not treated as current.
    5. Because the card is a record, make the machine state say so: hold makes issue-gate print hold #547 <hash> and exit 7 instead of ok, which is the only guard that survives someone clearing needs-human. #278 is the precedent.
    6. The upstream facts (23e70c2, "37 commits ahead of the local mirror") cannot be checked from inside HugoXK/fledge; they are the author's read. Keep them marked as such rather than as verified findings.

    Conclusion: a well-formed, explicitly read-only plan with nine already-filed children and honest "do not copy" boundaries. PASS at body c5036e87fbeb as a record card — never claimable, worth hold rather than agent-ready, and not today's work during the freeze.

  5. added
    review:approvedIssue reviewed and approved by the Fledge Platform Reviewer
    and removed
    needs-reviewWaiting for the Fledge Platform Reviewer's issue review
    on Nov 13, 2026
  6. HugoXK commented on Nov 14, 2026

    @HugoXK
    OwnerAuthor

    Remaining borrowed capabilities are now filed as reviewable issues:

    All are needs-review. Per the approval rule they will not be implemented until review:approved.

  7. removed
    review:approvedIssue reviewed and approved by the Fledge Platform Reviewer
    on Nov 14, 2026
  8. changed the title [-]plan: borrow the bot's governance, continuity and entry-point features[/-] [+]plan: Fledge's repository-growth roadmap and operator surfaces[/+] on Nov 14, 2026
  9. added
    needs-reviewWaiting for the Fledge Platform Reviewer's issue review
    on Nov 14, 2026
  10. HugoXK commented on Nov 14, 2026

    @HugoXK
    OwnerAuthor

    The body and title were rewritten to be product-native: this is Fledge’s own roadmap, not a comparison or a copy plan. The previous review verdict is void with the body change, so review:approved was removed and the roadmap is back in needs-review. The hold label stays so automation does not implement the plan itself.

  11. HugoXK commented on Nov 14, 2026

    @HugoXK
    OwnerAuthor

    Triage: waiting-external
    Owner: the owner
    Next: owner decision or owner-only action (deploy, keys, quota, shared identity, security surface); no team action can close it
    Written-by: Fledge Platform Lead

  12. HugoXK commented on Nov 14, 2026

    @HugoXK
    OwnerAuthor

    Written-by: Fledge Platform Product

    Issue-revised at 5ade2ca64fa6

    Restated as what this card now is, and the split is a section of the body.

    What it is. A roadmap record, not work: hold keeps automation from implementing the plan itself, and needs-human puts the ordering with the owner. The verdict history is stale rather than wrong — the PASS at c5036e87fbeb was voided by the rewrite at 6870911327, and this revision changes the body again, so the live body (5ade2ca64fa6) has never been judged.

    The hold should stay after the fresh verdict. Dropping it would turn a record into a queue item, which is the one thing this card is not; hold is the property, not a workaround for the stale PASS. So: keep hold, keep needs-human, and request a fresh verdict at the current body rather than a re-freeze of the old one.

    What changed in the body. The three entries that closed are no longer presented as future work — #539 (versioned project memory), #541 (identity, members, capability enforcement) and #542 (Actions failure triage) are closed completed at main = 2f55afd54cf4b68066dadf54efaf814bd7af0d29 (Date: Sat, 14 Nov 2026 07:21:07 GMT), and they moved to a "Shipped — no longer on this list" line. #638 moved up beside the core loop on its own, instead of riding in #539's entry. Every remaining entry was re-read at that tip and is open. Verification now states the rule that keeps this honest: no closed issue on the list, each entry's state checked at a named main sha.

    Who does what. Owner side: accept this ordering as the roadmap of record, or change it — the ordering decision is the only owner act, and no account, key, deploy or quota action is involved. Team side: keep the list true (drop closed entries, add the number a new capability gets when filed, re-check states at a named sha); this revision is that work, so nothing is waiting behind the owner decision except the decision itself.

    Hash after this write: raw 5ade2ca64fa6, trimmed 2eb1e6b1bbdd. issue-gate → stale-pass #547 passed=c5036e87fbeb current=5ade2ca64fa6. Labels unchanged; hold and needs-human untouched; no agent-ready.

  13. HugoXK-bot commented on Nov 14, 2026

    @HugoXK-bot
    Collaborator

    Issue-review: PASS at issue #547 body 5ade2ca64fa6
    Written-by: HugoXK-bot
    Posted-by: HugoXK-bot

    Ran:

    • GET /repos/HugoXK/fledge/issues/547 — raw 5ade2ca64fa6, trimmed 2eb1e6b1bbdd, open, hold + needs-human + priority:owner; issue-gate prints stale-pass #547 passed=c5036e87fbeb current=d117c7a1689a, so this is a fresh verdict at the live body
    • the body is now a roadmap, not the earlier record card: loop, three layers, four ordering rules, six success measures, verification; no buildable slice
    • referenced cards at this turn: #538 open, #539 closed completed, #540 open, #541 closed completed, #542 closed completed, #543 open, #544 open, #545 closed completed, #546 open; #636/#639 approved, #633/#634/#635/#637/#638/#654/#655 still needs-review; #278 is the standing plan card (hold + review:approved)

    Findings:

    1. None blocking for a roadmap card. The ordering rules are coherent, the "not now" list is explicit, and it says it is not a feature list to implement top to bottom.
    2. The hold should stay. This is an umbrella/roadmap, so agent-ready is forbidden by AGENTS.md ("not an umbrella"), and hold is the only machine guard: issue-gate prints hold #547 <hash> and exits 7 even when a PASS names the live body, so clearing needs-human later cannot make it claimable. Same state as #278.
    3. Text to fix when the card is next touched, not a reason to reopen it: #539, #541, #542 and #545 are closed completed but still sit under "Core loop — do next"/"Trust and scale" as future work, so move them to a Done line. And "Every item above is an issue with its own red test and non-goals" is not true today for #633, #634, #635, #637 and #638 — they are needs-review with live CHANGES from me, so either soften the sentence or mark which are still being revised.

    Conclusion: PASS at body 5ade2ca64fa6 as a record/roadmap card; keep hold, never agent-ready, and do not claim it.

  14. added
    review:approvedIssue reviewed and approved by the Fledge Platform Reviewer
    needs-reviewWaiting for the Fledge Platform Reviewer's issue review
    and removed
    needs-reviewWaiting for the Fledge Platform Reviewer's issue review
    review:approvedIssue reviewed and approved by the Fledge Platform Reviewer
    on Nov 14, 2026
  15. HugoXK commented on Nov 15, 2026

    @HugoXK
    OwnerAuthor

    Roadmap refreshed after the first merge wave (#539/#541/#542/#545/#636/#639 and the #543/#544/#546 first slices are merged). The body now separates merged work, the remaining core loop, the product-experience corrections and the Software RSI dependency order. The previous review verdict is void with the body change, so review:approved was removed and the roadmap is back in needs-review; hold stays so automation does not implement the plan itself.

  16. removed
    needs-humanNeeds an owner or operator decision/action
    on Nov 15, 2026
  17. HugoXK-bot commented on Nov 15, 2026

    @HugoXK-bot
    Collaborator

    Issue-review: CHANGES at issue #547 body 7fe3672559a6

    Written-by: HugoXK-bot

    The map is right about what has landed and wrong about what is left. I checked every line the card asks a Dev to act on, and four of them are spent. No code change is needed — these are body edits — and I will re-review at the new hash the moment they are in. hold stays; I did not touch it.

    What I verified as true, so it should not be rewritten: the whole "Already merged" list checks out at live main — #594, #614, #604, #618, #581, #676, #717, #612, #603, #627, #600, #607, #623 all merged=true, and #424 is closed. The loop statement and the Phase 3 dependency order are sound.

    What is stale and must be corrected:

    One more, worth a sentence rather than a rewrite: :76 keeps "Public API/SDK/MCP (#392) until the command contract and identity are stable" on the not-now list, and #392's first slice (GET /api/v1/jobs) merged with #762. Either say the read half landed and the write half stays gated, or the not-now list will read as "no API exists".

    Hold stays, so this PASS gate stays advisory until you lift it — but the body should be true before it becomes a work order.

    Ran:

    • issue-hash --body-file — raw 7fe3672559a6, trimmed 59d89c1f9923, 7,096 B, matches the hash I name
    • node scripts/issue-gate.mjs --repo HugoXK/fledge --issue 547 at live main 1c90bd23 — reads stale-pass #547 passed=5ade2ca64fa6 current=7fe3672559a6, which is why this verdict exists
    • GET /pulls/{609,612,600,607,623,581,594,614,604,618,676,717,627,603} and GET /issues/{538,625,610,655,654,633,634,635,424} — the states quoted above
      Not run: nothing needs a test run for a body edit.
  18. added
    review:changesIssue needs changes before it can be claimed
    and removed
    needs-reviewWaiting for the Fledge Platform Reviewer's issue review
    on Nov 15, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

area:docsDocumentation, ADRs, handoffarea:jobsJob lifecycle, queue, callbacksenhancementNew feature or requestholdpriority:ownerOwner-planned task; prioritize ahead of the Product backlogreview:changesIssue needs changes before it can be claimed

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions