Skip to content

(standardize-repo): Run the GitHub-side reconcile phase in every mode, probing in lanes and writing from the parent #1669

Open

Description

@evanharmon1

Problem

Update mode never runs task setup:github; it names the task once, only to say it is not the post-merge metadata step. No mode runs the template's audit tasks item by item or records the result. Add a reconcile phase to new-repo, adopt-existing, update and audit modes that composes with the template's tasks: in a lane, run the probe task (task audit:github, task audit:ruleset) and write the rows to the per-repo report; from the parent, after a wave merges, run the write tasks the decisions file pre-approved (task setup:github, task setup:github-labels in additive mode, task setup:github-project, issue fields and types, task setup:ruleset, repo settings) serialized per owner, then re-probe. A class is attached to every item: agent-apply, agent-apply with fleet approval, human-only verified empirically, or unknown when the probe lacks permission.

Surface

ai/skills/repo/standardize-repo/references/mode-*.md, references/post-generation-checklist.md, assets/; template tasks in harmon-init.

Acceptance criteria

  • [CI] Each mode's reference ends with the reconcile phase and the classified item list is a machine-readable asset the template and the skill share.
  • [CI] Lanes make no GitHub-side write; the parent's write step reads the pre-approved classes from the decisions file and refuses others.
  • [CI] Probe results feed the per-repo report rows and the standing status issue; human-only gaps go to the collector with the probe that proved them.
  • [CI] Tests cover a lane that is denied a write, a parent write that re-probes to prove it, and an unknown probe result reported as unknown.

Verify

Re-read the ADR and spec named under Provenance for the current design, and re-establish every path, task name or observation above with git grep in the target checkout (and gh for GitHub state) before acting; a renamed path means the claim needs re-checking, not that the problem is gone.

Out of scope

Shipping the template tasks (harmon-init issues under this epic).

Provenance

Filed from the 2026-10-26 standardize-repo redesign session (harmon-devkit, worktree/clear-river-0602). Design record: harmon-devkit ADR docs/decisions/2026-10-26-fleet-standardization-runs.md and spec specs/standardize-repo-fleet.md.

Activity

  1. added
    featureNew feature or request
    ai-generatedCreated or authored by an AI agent
    layer:integrationExternal boundary: webhooks, API clients, credentials
    domain:standardizationKeeping repos current with conventions: standardize-repo, drift audits, adoption
    area:standardize-repoThe standardize-repo skill and its standards catalog
    impact:highImpact: core benefit, or severe harm prevented even if rarely triggered
    risk:mediumRisk: a mistake breaks a feature or needs a careful rollback
    complexity:lComplexity: large; cross-cutting, with real design and wide verification
    on Oct 26, 2026
  2. added
    tier:frontierModel tier: opus-class heavyweights; no warm-up on weaker models
    on Oct 26, 2026
  3. evanharmon1 commented on Oct 26, 2026

    @evanharmon1
    OwnerAuthor

    Challenge round 1 on the ADR PR amended one line of this issue's scope: the parent's writes run per repository once that repository's PR has merged (serialized per owner), not after the whole wave, so a repository whose PR is closed unmerged or stays blocked keeps its rows pending and never holds back the others. Treat the ADR text as authoritative over the "after a wave merges" wording above.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    ai-generatedCreated or authored by an AI agentarea:standardize-repoThe standardize-repo skill and its standards catalogcomplexity:lComplexity: large; cross-cutting, with real design and wide verificationdomain:standardizationKeeping repos current with conventions: standardize-repo, drift audits, adoptionfeatureNew feature or requestimpact:highImpact: core benefit, or severe harm prevented even if rarely triggeredlayer:integrationExternal boundary: webhooks, API clients, credentialspriority-ai:p2Priority (AI): worth doing, not blockingrisk:mediumRisk: a mistake breaks a feature or needs a careful rollbacktier:frontierModel tier: opus-class heavyweights; no warm-up on weaker models

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions