Skip to content

feat: autonomous orchestrators p3d — shift digest, proof packets, one comment #568

Closed

Description

@Jammy2211

Overview

Phase 3d of the autonomous-orchestrators epic — closes phase 3. At shift end the orchestrator writes a ## Digest into the shift record and posts it once as a comment on the brief's issue:, in the format fixed by PyAutoMind/batches/AGENTS.md ("Digest", "Proof packet").

Plan

  • batch digest <record>: builds the digest from batch collect member data, the brief (named tasks) and the watcher's counters.
  • Brief work and backlog picks separate; every backlog pick carries a why: naming the brief rule it matched (_brief.scope returns the matching rule).
  • One proof packet per task: workers write <task>.proof.md beside .done (worker template updated); a missing one renders an honest stub.
  • Every counter always printed; glance-auto-merges, reverts, pushes, drafts-filed, packets-sent read 0 from counters.json until phase 4 increments them (human-approved).
  • batch brief --check validates a ## Digest: refuses a missing counter or a backlog pick without why:.
  • Watcher posts once: after review-at, the tick builds the digest, appends it to the record through the one Mind writer, exclusive-creates digest.posted, then one gh issue comment. Never reads comments back (AUTONOMY network surface). Marker = idempotence (human-approved).
  • HTML packet only with packet: yes.
  • Witness: fake shift → digest accepted by brief --check, broken variants refused; live: one comment on a PyAutoMind sandbox issue, second run posts nothing; pytest PyAutoBrain/tests -q green.

Tier: judge — merge mode: human /prm

Detailed implementation plan

Affected Repositories

  • PyAutoBrain (primary): agents/conductors/batch/_batch.py (digest verb), _brief.py (scope reasons + digest check), _orchestrator.py (closed-brief digest + post), worker_template.md, conductor AGENTS.md, tests.
  • PyAutoMind: batches/AGENTS.md (proof file contract, counters provenance), example fixture.

Suggested branch: feature/autonomous-orchestrators-p3d

Original Prompt

Click to expand starting prompt

Autonomous orchestrators phase 3d: batch digest — digest + proof packets, digest validator, one issue comment per shift

Type: feature
Target: PyAutoBrain
Repos:

  • PyAutoBrain
  • PyAutoMind
    Difficulty: medium
    Autonomy: human-required
    Priority: high
    Status: formalised
    Filed: 2026-11-03
    Epic: autonomous-orchestrators
    Phase: 3
    Consequence: judge
    Witness: batch digest appends a ## Digest to a fake shift's brief record matching PyAutoMind/batches/AGENTS.md (brief work vs backlog picks each with a one-line reason, one proof packet per task, every counter), batch brief --check gains a digest check that accepts it and refuses one missing a counter or a pick reason, and the digest is posted exactly once as a comment on a sandbox issue (a second run posts nothing); pytest PyAutoBrain/tests -q green
    Review-minutes: 20
    Unattended: never
    Lane: local-dev

Parent: draft/feature/pyautobrain/autonomous_orchestrators_epic.md; slice of phase 3 (slicing: complete/2026/11/autonomous-orchestrators-p3a.md, prompt section "Slicing"; 3a shipped as PyAutoBrain#556).

Closes phase 3. The network surface for the comment is the one AUTONOMY.md names in 3a. The HTML packet stays opt-in (packet: yes).

Activity

  1. Jammy2211 commented on Nov 4, 2026

    @Jammy2211
    ContributorAuthor

    Library PRs created — PyAutoLabs/PyAutoMind#531 (merge first) + #569. Judge tier, human /prm. Live witness on sandbox PyAutoLabs/PyAutoMind#530: one comment, second tick nothing.

  2. Jammy2211 commented on Nov 4, 2026

    @Jammy2211
    ContributorAuthor

    Shipped — merged 2026-11-04 by human /prm: PyAutoMind#531 then PyAutoBrain#569. CI at head: Brain pytest 3.12/3.13 green; Mind dashboard refresh + privacy green, spawn-drift skipped (path-filtered). Phase 3 complete.

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

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions