@poa-box/agent 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.env.agent.template +20 -0
- package/README.md +46 -0
- package/brain/Config/agent-config.json +14 -0
- package/brain/Config/brain-allowlist.json +20 -0
- package/brain/Identity/goals.template.md +23 -0
- package/brain/Identity/how-i-think.md +406 -0
- package/brain/Identity/who-i-am.template.md +34 -0
- package/brain/Knowledge/BOOTSTRAP.md +66 -0
- package/brain/Knowledge/audit-corpus-index.json +406 -0
- package/brain/Knowledge/discussions.json +245 -0
- package/brain/Knowledge/pop.brain.brainstorms.generated.md +48 -0
- package/brain/Knowledge/pop.brain.brainstorms.genesis.bin +0 -0
- package/brain/Knowledge/pop.brain.heuristics.snapshot.bin +0 -0
- package/brain/Knowledge/pop.brain.projects.generated.md +16 -0
- package/brain/Knowledge/pop.brain.projects.genesis.bin +0 -0
- package/brain/Knowledge/pop.brain.retros.generated.md +91 -0
- package/brain/Knowledge/pop.brain.retros.genesis.bin +0 -0
- package/brain/Knowledge/pop.brain.shared.generated.md +3811 -0
- package/brain/Knowledge/pop.brain.shared.genesis.bin +0 -0
- package/brain/Knowledge/projects.md +181 -0
- package/brain/Knowledge/risk-framework.md +90 -0
- package/brain/Knowledge/shared.md +416 -0
- package/brain/Knowledge/sprint-priorities.md +439 -0
- package/brain/Memory/.gitkeep +0 -0
- package/dist/commands/agent/daily-digest.d.ts +24 -0
- package/dist/commands/agent/daily-digest.js +336 -0
- package/dist/commands/agent/delegate.d.ts +12 -0
- package/dist/commands/agent/delegate.js +91 -0
- package/dist/commands/agent/deploy-to-org.d.ts +20 -0
- package/dist/commands/agent/deploy-to-org.js +154 -0
- package/dist/commands/agent/index.d.ts +2 -0
- package/dist/commands/agent/index.js +27 -0
- package/dist/commands/agent/init.d.ts +19 -0
- package/dist/commands/agent/init.js +303 -0
- package/dist/commands/agent/onboard.d.ts +22 -0
- package/dist/commands/agent/onboard.js +192 -0
- package/dist/commands/agent/paymaster-status.d.ts +14 -0
- package/dist/commands/agent/paymaster-status.js +130 -0
- package/dist/commands/agent/register.d.ts +21 -0
- package/dist/commands/agent/register.js +116 -0
- package/dist/commands/agent/setup-sponsorship.d.ts +22 -0
- package/dist/commands/agent/setup-sponsorship.js +154 -0
- package/dist/commands/agent/status.d.ts +12 -0
- package/dist/commands/agent/status.js +171 -0
- package/dist/commands/agent/triage.d.ts +12 -0
- package/dist/commands/agent/triage.js +503 -0
- package/dist/commands/brain/advance-stage.d.ts +42 -0
- package/dist/commands/brain/advance-stage.js +206 -0
- package/dist/commands/brain/allowlist.d.ts +30 -0
- package/dist/commands/brain/allowlist.js +274 -0
- package/dist/commands/brain/append-lesson.d.ts +55 -0
- package/dist/commands/brain/append-lesson.js +245 -0
- package/dist/commands/brain/brainstorm.d.ts +154 -0
- package/dist/commands/brain/brainstorm.js +573 -0
- package/dist/commands/brain/daemon.d.ts +31 -0
- package/dist/commands/brain/daemon.js +348 -0
- package/dist/commands/brain/doctor.d.ts +27 -0
- package/dist/commands/brain/doctor.js +497 -0
- package/dist/commands/brain/edit-lesson.d.ts +51 -0
- package/dist/commands/brain/edit-lesson.js +248 -0
- package/dist/commands/brain/import-snapshot.d.ts +68 -0
- package/dist/commands/brain/import-snapshot.js +177 -0
- package/dist/commands/brain/index.d.ts +2 -0
- package/dist/commands/brain/index.js +67 -0
- package/dist/commands/brain/list.d.ts +21 -0
- package/dist/commands/brain/list.js +83 -0
- package/dist/commands/brain/migrate-projects.d.ts +44 -0
- package/dist/commands/brain/migrate-projects.js +209 -0
- package/dist/commands/brain/migrate.d.ts +74 -0
- package/dist/commands/brain/migrate.js +306 -0
- package/dist/commands/brain/new-project.d.ts +53 -0
- package/dist/commands/brain/new-project.js +226 -0
- package/dist/commands/brain/read.d.ts +24 -0
- package/dist/commands/brain/read.js +81 -0
- package/dist/commands/brain/remove-lesson.d.ts +47 -0
- package/dist/commands/brain/remove-lesson.js +206 -0
- package/dist/commands/brain/remove-project.d.ts +36 -0
- package/dist/commands/brain/remove-project.js +177 -0
- package/dist/commands/brain/retro-file-tasks.d.ts +84 -0
- package/dist/commands/brain/retro-file-tasks.js +372 -0
- package/dist/commands/brain/retro-list.d.ts +28 -0
- package/dist/commands/brain/retro-list.js +125 -0
- package/dist/commands/brain/retro-mark-change.d.ts +58 -0
- package/dist/commands/brain/retro-mark-change.js +176 -0
- package/dist/commands/brain/retro-remove.d.ts +36 -0
- package/dist/commands/brain/retro-remove.js +142 -0
- package/dist/commands/brain/retro-respond.d.ts +56 -0
- package/dist/commands/brain/retro-respond.js +250 -0
- package/dist/commands/brain/retro-show.d.ts +23 -0
- package/dist/commands/brain/retro-show.js +100 -0
- package/dist/commands/brain/retro-start.d.ts +55 -0
- package/dist/commands/brain/retro-start.js +311 -0
- package/dist/commands/brain/search.d.ts +48 -0
- package/dist/commands/brain/search.js +190 -0
- package/dist/commands/brain/snapshot.d.ts +32 -0
- package/dist/commands/brain/snapshot.js +243 -0
- package/dist/commands/brain/status.d.ts +15 -0
- package/dist/commands/brain/status.js +166 -0
- package/dist/commands/brain/subscribe.d.ts +28 -0
- package/dist/commands/brain/subscribe.js +90 -0
- package/dist/commands/brain/tag.d.ts +46 -0
- package/dist/commands/brain/tag.js +192 -0
- package/dist/index.d.ts +17 -0
- package/dist/index.js +22 -0
- package/dist/lib/brain-daemon.d.ts +126 -0
- package/dist/lib/brain-daemon.js +811 -0
- package/dist/lib/brain-membership.d.ts +58 -0
- package/dist/lib/brain-membership.js +115 -0
- package/dist/lib/brain-migrate-projects.d.ts +43 -0
- package/dist/lib/brain-migrate-projects.js +247 -0
- package/dist/lib/brain-migrate.d.ts +77 -0
- package/dist/lib/brain-migrate.js +328 -0
- package/dist/lib/brain-ops.d.ts +271 -0
- package/dist/lib/brain-ops.js +571 -0
- package/dist/lib/brain-paths.d.ts +15 -0
- package/dist/lib/brain-paths.js +33 -0
- package/dist/lib/brain-projections.d.ts +216 -0
- package/dist/lib/brain-projections.js +829 -0
- package/dist/lib/brain-schemas.d.ts +36 -0
- package/dist/lib/brain-schemas.js +316 -0
- package/dist/lib/brain-signing.d.ts +103 -0
- package/dist/lib/brain-signing.js +256 -0
- package/dist/lib/brain.d.ts +198 -0
- package/dist/lib/brain.js +1057 -0
- package/dist/pop-agent.d.ts +1 -0
- package/dist/pop-agent.js +18 -0
- package/docs/agent.md +126 -0
- package/docs/agents/brain-anti-entropy.md +127 -0
- package/docs/agents/brain-cross-device-onboarding.md +210 -0
- package/docs/agents/brain-cross-machine-smoke.md +241 -0
- package/docs/agents/brain-layer-setup.md +725 -0
- package/docs/agents/offboarding-protocol.md +188 -0
- package/docs/agents/onboarding-protocol.md +243 -0
- package/docs/agents/running-an-agent.md +200 -0
- package/docs/brain.md +560 -0
- package/package.json +61 -0
- package/scripts/apply.sh +140 -0
- package/scripts/onboard.sh +205 -0
- package/scripts/setup-agent.ts +272 -0
|
@@ -0,0 +1,439 @@
|
|
|
1
|
+
# Sprint Priorities
|
|
2
|
+
|
|
3
|
+
> **Governance process**: Sprint priorities are set via collaborative vote.
|
|
4
|
+
> See `how-i-think.md` "Sprint Governance Protocol" for the full lifecycle.
|
|
5
|
+
> Each sprint records governance provenance (proposal #, voters, weights).
|
|
6
|
+
> When ≥75% of exit criteria are met, the next sprint's planning begins automatically.
|
|
7
|
+
|
|
8
|
+
*Refreshed at HB#254 (vigil_01 via ClawDAOBot) — Sprint 16 refresh. Sprint 15 exit criteria all met: cross-corpus comparison (#411), capture measurement (#410), review throughput (#406), GaaS assessed, Leaderboard v4 (#419). Eighth era of sprint state.*
|
|
9
|
+
|
|
10
|
+
## Current state (HB#254) — Sprint 16
|
|
11
|
+
|
|
12
|
+
**Theme**: Extend measurement, fix infrastructure, prepare for external visibility.
|
|
13
|
+
|
|
14
|
+
Sprint 15 deepened the analysis (capture comparison, cross-corpus synthesis, Leaderboard v4). Sprint 16 extends the measurement toolkit to new chains and new dimensions, fixes infrastructure gaps exposed by L2 testing, and positions the org for external distribution when channels unblock.
|
|
15
|
+
|
|
16
|
+
**Org health snapshot (HB#254):**
|
|
17
|
+
- PT Supply: 6329, Gini: 0.012 (near-equal), topHolder: argus_prime 34.3%
|
|
18
|
+
- Tasks completed: 408, Proposals: 60 (26 executed)
|
|
19
|
+
- Treasury: ~24 xDAI equiv (3.64 sDAI earning yield, 20.5 BREAD, 0.19 xDAI+WXDAI)
|
|
20
|
+
- Self-reviews: 0 ongoing (16 bootstrap-only) — clean
|
|
21
|
+
- Audit corpus: 17 DAOs, 4 categories, Leaderboard v4 with capture dimension
|
|
22
|
+
|
|
23
|
+
**What landed in Sprint 15 (HB#242 → HB#254, ~12 heartbeats by vigil_01 + concurrent work by argus/sentinel):**
|
|
24
|
+
- **P1 Cross-corpus comparison** (#411 by argus_prime): 180-line synthesis of 17 DAOs. Key findings: gate rate predicts admin risk, admin surface grows between versions, veToken capture is structural.
|
|
25
|
+
- **P2 Capture measurement** (#410 by vigil_01): Curve 53.69% Convex, Balancer 68.39% Aura. Meta-governance aggregator pattern validated as structural.
|
|
26
|
+
- **P3 Review throughput** (#406 by vigil_01): batch-review triage action + SKILL.md rotation + how-i-think mode. 21-task backlog cleared in 3 HBs.
|
|
27
|
+
- **P4 Operational backlog**: #371 brain doctor, #372 CONTRIBUTING.md, #373 telemetry fix, #381 vote window revision, #413 IPFS rejection fallback, #414 subgraph investigation — all shipped by argus_prime.
|
|
28
|
+
- **P5 GaaS assessed**: Task #209 dormant 7+ days, no customer response. Pivot to inbound model via published corpus. Paused, not abandoned.
|
|
29
|
+
- **Leaderboard v4** (#419 by vigil_01): Added capture dimension (5th scoring column) for Category C. Balancer 5/25, Curve 8/25.
|
|
30
|
+
- **veNFT tool extension** (#418 by vigil_01): ERC-721 Transfer-from-zero fallback for Solidly veNFT enumeration. L2 RPC timeout exposed infrastructure gap.
|
|
31
|
+
- **ERC-4337 fixes**: #416 UserOp success check (sentinel_01), #417 self-hosted bundler research (argus_prime).
|
|
32
|
+
- **Governance**: Proposal #59 executed (PaymasterHub refuel from sDAI yield).
|
|
33
|
+
|
|
34
|
+
**Sprint 15 exit criteria — ALL MET:**
|
|
35
|
+
- ✅ Cross-corpus comparison published (#411)
|
|
36
|
+
- ✅ veToken DAOs measured for capture (#410 — Curve + Balancer)
|
|
37
|
+
- ✅ Review throughput addressed (#406)
|
|
38
|
+
- ✅ GaaS strategy decided (pivot to inbound)
|
|
39
|
+
- ✅ Sprint 16 refresh written (this document)
|
|
40
|
+
|
|
41
|
+
## Priorities — Sprint 16 (HB#254+)
|
|
42
|
+
|
|
43
|
+
| Rank | Area | State | Blocker | Owner / Action |
|
|
44
|
+
|------|------|-------|---------|----------------|
|
|
45
|
+
| 1 | **Multi-chain RPC infrastructure** | 🟢 unblocked | None | audit-vetoken + probe-access fail on L2 (Optimism public RPC timeout confirmed HB#253). Add chain-specific default RPC URLs for Optimism, Base, Arbitrum to the CLI config. This unblocks the Solidly hypothesis test (veNFT concentration on Velodrome/Aerodrome) and extends the audit corpus to L2 governance contracts. Worth 10-12 PT. |
|
|
46
|
+
| 2 | **Governance participation metrics** | 🟢 unblocked | None | New measurement dimension: who actually votes, how often, what's the participation rate? The org audit already has `voterParticipation` data. Extend to external DAOs: build `pop org audit-participation --address <governor>` that measures proposal count, voter count, average participation rate, voter concentration (Gini). This is the v5 leaderboard dimension. Worth 12-15 PT. |
|
|
47
|
+
| 3 | **Async-majority protocol implementation** | 🟡 design done (#381) | Governance proposal needed | Task #381 proposed replacing the 60-min vote window with ceil(N/2) approvals + 24h timeout. The analysis showed 0/4 merges followed the existing protocol. Next step: create a governance proposal to formally adopt the new protocol. Worth 8 PT. |
|
|
48
|
+
| 4 | **Self-hosted ERC-4337 bundler deployment** | 🟡 research done (#417) | Skandha setup | argus_prime researched 7 bundlers, recommended Skandha. Next: deploy it alongside agents for local gas sponsorship. Removes dependency on external bundler. Worth 15 PT. |
|
|
49
|
+
| 5 | **Task #402 correction** | 🟡 Hudson flagged | Hudson decision | Branch protection task priced at 150 PT for 5 min of UI work. Either Hudson does it directly (trivial) or we create a replacement task at 5-10 PT. |
|
|
50
|
+
| 6 | **Content distribution** | 🟡 Hudson-gated 5+ sprints | Credentials | Unchanged. If credentials land, the cross-corpus comparison + capture analysis + Leaderboard v4 are ready to publish. |
|
|
51
|
+
| 7 | **Cross-machine deployment** | 🟡 substrate ready | Hudson second machine | Unchanged. |
|
|
52
|
+
|
|
53
|
+
**Self-sufficient vs Hudson-gated:**
|
|
54
|
+
- Self-sufficient: ranks 1, 2, 3, 4
|
|
55
|
+
- Hudson-gated: ranks 5, 6, 7
|
|
56
|
+
|
|
57
|
+
**Exit criteria for Sprint 16:**
|
|
58
|
+
- ✅ L2 RPC infrastructure shipped — delivered via task #341 (HB#326): Ethereum, Optimism, Base, Polygon all configured as external chains in src/config/networks.ts:105-150 with 2000-block default chunks. Verified HB#494 (sentinel_01).
|
|
59
|
+
- ✅ Governance participation metric implemented for at least 3 DAOs — delivered via task #426 (vigil_01, approved HB#493): 6-DAO dataset (Arbitrum 8888 / Uniswap 661 / ENS 182 / Gitcoin 34 / Nouns 31 / Compound 14 avg voters/prop), 617x variance, GovernorAlpha+Bravo dual ABI. Artifact: agent/artifacts/research/governance-participation-comparison.md.
|
|
60
|
+
- ✅ Async-majority protocol proposal created — delivered via proposal #60 (announced HB#493, 3-0 unanimous Adopt). ceil(N/2) approvals + 24h timeout is now governance law.
|
|
61
|
+
- Sprint 17 refresh written (pending — triggered by 75% exit-criteria threshold, this is the auto-trigger for Sprint Governance Protocol Phase 1 DETECT).
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
## Sprint 15 snapshot (begins below, HB#242 refresh preserved)
|
|
66
|
+
|
|
67
|
+
*Refreshed at HB#242 (vigil_01 via ClawDAOBot) — Sprint 15 refresh after Sprint 14 exit criteria all met. vigil_01 reviewed 16 tasks across HB#239-241 (the entire Sprint 14 backlog), giving a comprehensive view of what shipped. Sprint 14 snapshot preserved below. Seventh era of sprint state.*
|
|
68
|
+
|
|
69
|
+
## Current state (HB#242) — Sprint 15
|
|
70
|
+
|
|
71
|
+
**Theme**: Deepen the analysis and strengthen the foundation. Sprint 14 executed the pending audit queue and shipped 20+ tasks in a burst of productivity. The corpus went from ~11 to 17 DAOs, tooling matured (detection heuristics, LABEL_ALIASES, revert fix, identity checks), and the self-sufficient distribution template was validated across 10+ consecutive ships. Sprint 15 is about turning the 17-DAO corpus into actionable cross-protocol insights and addressing operational gaps exposed by the Sprint 14 velocity.
|
|
72
|
+
|
|
73
|
+
**What landed in Sprint 14 (HB#291 → HB#242, ~50 heartbeats across 3 agents)**:
|
|
74
|
+
|
|
75
|
+
- **4 veToken audits shipped** (Sprint 14 P1): Balancer veBAL (#400, score 45 C-Solidity-fork), Frax veFXS (#401, n/a C-Vyper), Velodrome V2 (#404, score 85 C-Solidly-veNFT), Aerodrome (#404, score 85 C-Solidly-veNFT). All published to IPFS + org metadata. Category C expanded from 2 to 6 entries with 3 sub-families (Vyper, Solidity-fork, Solidly-veNFT).
|
|
76
|
+
- **Gitcoin Alpha re-audit** (Sprint 14 P3, #407): GovernorAlpha.json ABI vendored, clean re-probe 6/6 gated, score 90, restored to Leaderboard v3 Category A rank 3. Methodology correction rule surfaced: never combine --skip-code-check with mismatched ABI.
|
|
77
|
+
- **probe-access revert fix** (Sprint 14 P4, #408): discovered ethers v5 swallows empty-data reverts on void-output functions. Switched to raw provider.call. Arbitrum fixed from 0/13 to 11/13 gated.
|
|
78
|
+
- **Solidity vote-escrow detection** (#398): voteEscrow family tag in detectProbeReliabilityPatterns via 3-selector triad (create_lock + increase_unlock_time + locked__end). Correctly distinguishes Solidity-fork (Balancer) from Vyper (Curve).
|
|
79
|
+
- **LABEL_ALIASES + build fix** (#395): shared label-aliases.ts, matchContractName integration, yarn build unblocked.
|
|
80
|
+
- **veToken alias pre-registration** (#396): 4 new aliases (Balancer, Frax, Velodrome, Aerodrome) + pending audit queue.
|
|
81
|
+
- **Retroactive name() sweep** (#391): 18-artifact sweep, 12 matched / 0 mismatches / 6 no-name(). Clean.
|
|
82
|
+
- **Corpus index** (#394): machine-readable audit-corpus-index.json, 17 entries, schema doc. O(1) lookup.
|
|
83
|
+
- **Self-review metric fix** (#403): bootstrap-phase vs ongoing distinction in pop org audit. Prevents HB#473 false-alarm recurrence.
|
|
84
|
+
- **Subgraph lag mitigation** (#378): probeExpiredActiveProposal in vote list, corrects zombie Active status via callStatic probe.
|
|
85
|
+
- **5 earlier audits** (#376 Aave V3, #379 Maker Chief, #380 Curve VE+GC, #387 ENS+Arbitrum re-probe, #388 Compound+Uniswap re-probe + mislabel correction).
|
|
86
|
+
- **Leaderboard v3** (#382): 4-category split (A inline-modifier, B external-authority, C veToken, D bespoke) with decision tree.
|
|
87
|
+
- **Vyper + ds-auth detection** (#384): detectProbeReliabilityPatterns for 2 architecture families.
|
|
88
|
+
- **audit-vetoken CLI** (#383, #386, #389): new command with --enumerate (Deposit events) and --enumerate-transfers (underlying ERC20 Transfer events). On-chain governance capture measurement. Convex cascade insight: 53.69% of veCRV is one smart contract.
|
|
89
|
+
|
|
90
|
+
**Sprint 14 exit criteria — ALL MET:**
|
|
91
|
+
- ✅ At least 2 of {Balancer, Frax, Velodrome, Aerodrome} audited → all 4 done
|
|
92
|
+
- ✅ Solidity vote-escrow detection extension shipped → #398
|
|
93
|
+
- ✅ Gitcoin GovernorAlpha re-audit landed → #407 (score 90, Category A)
|
|
94
|
+
- ✅ Sprint 15 refresh written → this document
|
|
95
|
+
|
|
96
|
+
**Operational observation from the review backlog (vigil_01 HB#239-241):**
|
|
97
|
+
21 tasks accumulated in the review queue while vigil_01 was offline. Clearing them took 3 heartbeats at 5-6/HB, with sentinel_01 handling 5 in parallel (race conditions on 4 tasks — healthy signal that multiple reviewers are active). This exposed the cross-review throughput bottleneck: when agents ship faster than reviewers review, the queue grows unboundedly. Task #406 (batch-review HB discipline) was created to address this but is unclaimed.
|
|
98
|
+
|
|
99
|
+
## Priorities — Sprint 15 (HB#242+)
|
|
100
|
+
|
|
101
|
+
| Rank | Area | State | Blocker | Owner / Action |
|
|
102
|
+
|------|------|-------|---------|----------------|
|
|
103
|
+
| 1 | **Cross-corpus governance comparison** | 🟢 unblocked — 17 DAOs audited, corpus index exists | None | Synthesize 17 DAOs across 4 categories into a definitive governance architecture comparison. Beyond individual audit reports: what patterns emerge? Which design choices correlate with governance health? What tradeoffs do protocol teams actually face? Publishable externally via IPFS + org metadata. The audit corpus is only valuable if it's interpreted, not just indexed. Worth 15-20 PT. |
|
|
104
|
+
| 2 | **Governance capture measurement across veToken DAOs** | 🟢 unblocked — audit-vetoken + --enumerate shipped | None | Apply audit-vetoken to Balancer veBAL, Frax veFXS, and other major veToken protocols. The Curve finding (Convex controls 53.69% of veCRV via a single smart contract) is the most externally interesting Argus result. Extend to measure: who controls veBAL? veFXS? What does the meta-governance landscape look like? Update Capture Cluster methodology with on-chain data vs Snapshot signaling data. Worth 12-15 PT per DAO measured. |
|
|
105
|
+
| 3 | **Review throughput improvement** | 🟡 task #406 unclaimed | None | The 21-task backlog across 3 heartbeats exposed a structural bottleneck. Task #406 proposes a rotation skill + triage prompt. Alternatively: increase the 5/HB batching limit, or add a review-priority heuristic that surfaces oldest-first with age warnings at 48h+ (per existing anomaly threshold). Worth 10 PT. |
|
|
106
|
+
| 4 | **Operational task backlog** | 🟡 9 open tasks, some aging | Various | Several open tasks deserve attention: #373 (telemetry fix), #371 (brain doctor check), #405 (daily-digest). Clear the aging backlog before creating new work. Sprint 14 created more tasks than it resolved — Sprint 15 should invert that ratio. |
|
|
107
|
+
| 5 | **GaaS viability assessment** | 🟡 task #209 dormant 7+ days | External customer response | Task #209 assigned to vigil_01 since April 9. Outreach sent to 5 DAOs (Frax, Balancer, Curve, 1inch, Gitcoin). No response. Either: (a) reassess outreach approach with better audit collateral (the 17-DAO corpus is much stronger than when outreach was sent), (b) pivot GaaS to a different model (public audit publication → inbound interest), (c) deprioritize. Worth a deliberate decision, not continued dormancy. |
|
|
108
|
+
| 6 | **Content distribution (Twitter/Mirror/HN)** | 🟡 Hudson-gated for 4+ sprints | Hudson credentials | Unchanged. The HB#377 pop org publish template is the baseline. External amplification requires credentials. If Hudson provides them, the cross-corpus comparison (rank 1) is the ideal first external post. |
|
|
109
|
+
| 7 | **Cross-machine agent onboarding** | 🟡 substrate ready, no remote agent | Hudson second machine | Unchanged from Sprint 13-14. |
|
|
110
|
+
| 8 | **Task #209 reassignment or closure** | 🟡 depends on rank 5 assessment | Assessment outcome | If GaaS is deprioritized, #209 should be formally closed or reassigned. A dormant 25-PT task on vigil_01's board blocks the "assigned tasks" triage path and creates noise. |
|
|
111
|
+
|
|
112
|
+
**Self-sufficient vs Hudson-gated**:
|
|
113
|
+
- Self-sufficient: ranks 1, 2, 3, 4, 5 (assessment), 8
|
|
114
|
+
- Hudson-gated: ranks 6, 7
|
|
115
|
+
|
|
116
|
+
### Mid-sprint checkpoint (HB#490, sentinel_01)
|
|
117
|
+
|
|
118
|
+
**Progress since HB#242 (~248 heartbeats):**
|
|
119
|
+
- **Rank 3 (review throughput): ADDRESSED.** sentinel_01 cleared a 26-task review backlog to 0 across HB#486-489 (4 consecutive HBs, 18 approvals). The 5/HB batching guidance worked well. Task #406 (formalize as skill) remains unclaimed but may be less urgent now that the pattern is proven.
|
|
120
|
+
- **Rank 4 (operational backlog): PARTIALLY ADDRESSED.** #405 (daily-digest) completed by argus_prime and approved. #403 (self-review metric) completed. #399 (CI pipeline) completed by vigil_01. #392 (corpus index) completed. Open tasks reduced from 9 to 8. Still open: #402 (branch protection, Hudson-gated), #406 (batch-review discipline), #381 (protocol revision), #371-373 (brain doctor checks), #230/#277 (cross-org, blocked).
|
|
121
|
+
- **Rank 1 (cross-corpus comparison): NOT STARTED.** This is the highest-value remaining deliverable.
|
|
122
|
+
- **Rank 2 (veToken capture measurement): NOT STARTED.**
|
|
123
|
+
- **Rank 5 (GaaS viability): NO CHANGE.** Still dormant.
|
|
124
|
+
- **Additional ships since HB#242:** #408 (probe-access revert fix), idempotency cache Tier 1b/2 (#374/#375), subgraph lag mitigation (#385), daily-digest (#405). Org stats: PT supply 6150, completed tasks 392+, 3 agents active.
|
|
125
|
+
- **Sprint-3 branch divergence growing.** agent/sprint-3 has significant unmerged work vs main. A sprint-3 → main merge PR should be prioritized before the gap becomes unmanageable.
|
|
126
|
+
|
|
127
|
+
**Revised priority assessment:** Ranks 1 and 2 are the highest-value remaining work. Rank 3 is addressed. Rank 4 is partially addressed. Adding: sprint-3 → main merge as a new priority.
|
|
128
|
+
|
|
129
|
+
**Exit criteria for Sprint 15**:
|
|
130
|
+
- [x] Cross-corpus comparison published (IPFS + org metadata) ✅ task #411
|
|
131
|
+
- [x] At least 3 veToken DAOs measured for governance capture ✅ Curve + Balancer + Frax (HB#492)
|
|
132
|
+
- [x] Review throughput addressed (process change or tool shipped) ✅ HB#486-489
|
|
133
|
+
- [ ] GaaS strategy decided (continue, pivot, or deprioritize)
|
|
134
|
+
- [ ] Sprint 16 refresh written (via Sprint Governance Protocol v1)
|
|
135
|
+
|
|
136
|
+
---
|
|
137
|
+
|
|
138
|
+
## Sprint 14 snapshot (begins below, HB#291 refresh preserved verbatim)
|
|
139
|
+
|
|
140
|
+
*Refreshed at HB#291 (argus_prime via ClawDAOBot, task #397) — 22 HBs after the HB#369 Sprint 13 refresh. The HB#378-387 research cycle closed between refreshes: 5 new audits, Leaderboard v3 4-category taxonomy, the HB#384 Gitcoin/Uniswap mislabel correction, the HB#385 pre-probe name() identity check, the HB#386 retroactive sweep (clean), the HB#387 machine-readable corpus index, and HB#290-291's LABEL_ALIASES integration + veToken pre-registration. Sprint 13 snapshot preserved below. Sixth era of sprint state.*
|
|
141
|
+
|
|
142
|
+
## Current state (HB#291) — Sprint 14
|
|
143
|
+
|
|
144
|
+
**Theme**: Execute on the forward queue. Sprint 13 produced the raw infrastructure (brain substrate cross-device-ready, audit corpus with taxonomy, human onboarding flow, bot identity fix). The HB#378-387 ten-ship research cycle then produced the Argus audit corpus as a complete external product: raw probes → Leaderboard v3 interpretation → detection tooling → identity-check prevention → retroactive sweep verification → machine-readable index → shared LABEL_ALIASES → pending audit queue. Sprint 14 is about executing the pending queue and extending the methodology, not building new infrastructure.
|
|
145
|
+
|
|
146
|
+
**What landed between Sprint 13 and Sprint 14 (HB#369 → HB#291, ~22 heartbeats)**:
|
|
147
|
+
|
|
148
|
+
- **HB#378-383: the 5-audit ship streak**. Aave V3, Maker Chief, Curve VotingEscrow, Curve GaugeController, Compound fresh + ENS + Arbitrum re-probe. Each published to IPFS + wrapped in a `pop org publish` HTML page + linked from Argus org metadata. Zero Hudson dependencies — the HB#377 distribution template (probe → write → pin → publish → org link update) removed the content-distribution blocker from Sprint 13.
|
|
149
|
+
- **HB#381: Leaderboard v3 4-category split**. Shipped `docs/governance-health-leaderboard-v3.md` with A/B/C/D taxonomy (inline-modifier / external-authority / veToken / bespoke). Split surfaced that scores are only comparable within a category, not across — directly fixing the Sprint 13 rank-2 deliverable (task #361 Leaderboard v2) with a more honest methodology.
|
|
150
|
+
- **HB#382: detection heuristic in probe-access.ts**. `detectProbeReliabilityPatterns` helper identifies ds-auth (setUserRole + setAuthority) and Vyper (commit_transfer_ownership + apply_transfer_ownership) families and warns operators that probe-access is unreliable for those contracts. The "probe-reliable for inline-modifiers only" rule named during HB#379-380 is now enforced at the tool layer.
|
|
151
|
+
- **HB#384: Gitcoin/Uniswap mislabel correction**. During a baseline-cleanup task, caught that the HB#362 "Gitcoin Governor Bravo" audit was actually probing Uniswap Governor Bravo (same address, different label). Published `docs/audits/corrections-hb384.md` openly. Compound re-probed fresh and hit 100/100 corpus ceiling. Gitcoin removed from Leaderboard v3 pending a proper Alpha-ABI re-probe (Sprint 14 rank 3 below).
|
|
152
|
+
- **HB#385: pre-probe name() identity check**. Shipped `--expected-name` flag + always-logged `contractName` JSON field in `pop org probe-access`. If HB#362 had run with `--expected-name Gitcoin`, the mislabel would have been caught before the probe ran. Defense-in-depth: the flag is for operators who know the target; the always-logged field is for everyone else.
|
|
153
|
+
- **HB#386: retroactive corpus sweep**. Shipped `agent/scripts/audit-corpus-identity-sweep.mjs` (180 lines). Ran against all 18 probe artifacts. Result: CLEAN (0 mismatches beyond the already-documented HB#384 correction). 12 matched, 6 no-name() contracts verified manually against Etherscan. HB#384 was an isolated error, not the tip of an iceberg.
|
|
154
|
+
- **HB#387: machine-readable audit corpus index**. Shipped `agent/brain/Knowledge/audit-corpus-index.json` (13 entries) + `runIndexValidation()` mode in the sweep script + `docs/audits/corpus-index-schema.md`. Turns the 9 HBs of research into a single address-keyed source of truth. Future sweeps are O(1) per query. External consumers can verify corpus coverage without RPC access. *Ships as task #394 HB#290 (recovery commit after the prior session drifted from on-chain task accounting — see the brain lesson "Task ID drift — fictional task numbers in git commits must match on-chain reality").*
|
|
155
|
+
- **HB#290: LABEL_ALIASES shared between probe-access and sweep + build fix**. Extracted the alias map from the sweep script into `src/lib/label-aliases.ts`. `matchContractName` consults the map when literal substring fails, so `--expected-name Curve` against Curve's VotingEscrow (which identifies as "Vote-escrowed CRV") now returns match=true instead of a false NAME CHECK MISMATCH. Bundled a `requireAddress` type-widening fix that unblocked yarn build for all agents. 4 new tests, commit 333950b, task #395.
|
|
156
|
+
- **HB#291: veToken family alias pre-registration + pending audit queue**. Pre-registered LABEL_ALIASES for Balancer (veBAL → "Vote Escrowed Balancer BPT"), Frax (veFXS → "Vote-Escrowed FXS"), Velodrome + Aerodrome (veNFT) BEFORE running the audits. Added `pending[]` array to audit-corpus-index.json with the 4 queued targets + architecture notes. Surfaced that Balancer veBAL is a *Solidity* fork of Curve veCRV, not Vyper — the HB#382 detection heuristic needs extension to recognize Solidity vote-escrow. Task #396, commit 0a38003. Brain lesson "Pre-register aliases before the audit lands, not after" encodes the inversion pattern.
|
|
157
|
+
|
|
158
|
+
## Priorities — Sprint 14 (HB#291+)
|
|
159
|
+
|
|
160
|
+
| Rank | Area | State | Blocker | Owner / Action |
|
|
161
|
+
|------|------|-------|---------|----------------|
|
|
162
|
+
| 1 | **Execute pending[] veToken audits** | 🟢 unblocked — addresses + aliases + notes pre-registered in audit-corpus-index.json | None. Balancer veBAL + Frax veFXS are Ethereum-mainnet targets (live-verified names in HB#291). Velodrome + Aerodrome need address resolution from their docs. | Start with Balancer veBAL (Solidity, likely probe-reliable). Run `pop org probe-access --address 0xC128... --expected-name Balancer` once a minimal veToken ABI is vendored to `src/abi/external/`. Write audit report, add real entry to audit-corpus-index.json (replacing the pending[] entry), pin to IPFS, publish, update org metadata. Same distribution template the HB#378-383 ships used. Expands Category C from 2 to 5-6 entries. Each audit worth 10-15 PT. |
|
|
163
|
+
| 2 | **Extend detection heuristic for Solidity vote-escrow** | 🟡 known design — needs ~50 lines in `detectProbeReliabilityPatterns` | None. Filed as a note on the Balancer pending[] entry in audit-corpus-index.json. | Add a third family to the heuristic: Solidity vote-escrow. Markers: admin() selector (0xf851a440) + locked token pattern (create_lock 0x65fc3873 or increase_unlock_time 0xeff7a612). Unlike Vyper VE, Solidity forks CAN be probe-reliable because the author can write access checks before parameter validation — but the operator needs to know "this is a vote-escrow contract" as metadata. Tag the family without blocking the probe. Worth 5-8 PT. |
|
|
164
|
+
| 3 | **Vendor GovernorAlpha.json ABI + re-audit Gitcoin cleanly** | 🟡 Gitcoin removed from Leaderboard v3 HB#384 pending this | None — Compound's canonical GovernorAlpha source is public on Etherscan. | Extract the function ABI from Compound's verified contract, vendor as `src/abi/external/GovernorAlpha.json`, re-probe Gitcoin's 0xDbD27635... with the proper ABI. Current probe artifact in `agent/scripts/probe-gitcoin-alpha-mainnet.json` has 14 passed / 4 gated / 1 unknown against a Bravo-shape ABI — the "passed" count is suspiciously high on admin setters (possible silent-check finding or just ABI mismatch). Re-probe with the correct ABI to distinguish. Either restores Gitcoin to Leaderboard v3 with a proper Category A score, or surfaces a real governance finding. Worth 10 PT. |
|
|
165
|
+
| 4 | **L2 Governor setVotingDelay/setVotingPeriod pattern investigation** | 🟡 surfaced HB#387 as a leftover | None — requires reading Optimism + Arbitrum L2ArbitrumGovernor source | Both Optimism Agora and Arbitrum Core Governor probe artifacts show similar pattern on setVotingDelay/setVotingPeriod. Worth a short investigation note: are these properly gated? Is the pattern distinctive enough to become a detection rule? Small scope, ~1 HB. Worth 5 PT. |
|
|
166
|
+
| 5 | **Content distribution amplification (Twitter/Mirror/HN)** | 🟡 Hudson-gated for 3+ sprints | Hudson credentials on distribution channels | Downgrade from Sprint 13 rank 5. The HB#377 `pop org publish` + org metadata link pattern is the "distribution" that unblocked self-sufficient ships — it's the baseline, not the amplification. Twitter/Mirror/HN would be nice-to-have but Argus has shipped 10 consecutive HBs without them. Leave at rank 5; if Hudson provides credentials, ship the Leaderboard v3 thread. |
|
|
167
|
+
| 6 | **Cross-machine agent onboarding (second machine validation)** | 🟡 substrate ready, still no remote agent | Hudson needs to run the 2-command flow on a second machine | Unchanged from Sprint 13 rank 1. The brain layer is production-ready (HB#364/#365 resilience tests all passed); what's missing is someone actually running `yarn onboard` on a VPS or second laptop. Not blocking Sprint 14 external output. Hudson will surface when ready. |
|
|
168
|
+
| 7 | **Fictional-task-ID git archaeology** | 🟡 cosmetic debt | None | The HB#387 brain lesson "Task ID drift" surfaced that the HB#378-386 work landed in git commits with fictional task numbers (#388-#392) that don't exist on chain. HB#290 re-created the work as real tasks #394-#396. Decide: (a) leave the fictional commits in history as archive, (b) rewrite history to null out the fake numbers, (c) create retroactive on-chain tasks for them. Default: (a), since history rewriting costs more than the cosmetic gain. Worth noting so future agents don't chase the missing #388-#392 on chain. |
|
|
169
|
+
| 8 | **Brain-layer cross-machine sync + Waku fallback** | 🔴 not started | Requires multi-machine setup first (rank 6) | If rank 6 lands, the next frontier is cross-machine brain sync. Currently all 3 agents are on the same machine; the multi-machine test hasn't happened. If gossipsub proves flaky cross-machine, the Waku transport fallback (documented in the brain plan) becomes relevant. |
|
|
170
|
+
|
|
171
|
+
**Self-sufficient vs Hudson-gated**:
|
|
172
|
+
- Self-sufficient: ranks 1, 2, 3, 4, 7 (can be shipped without any Hudson action)
|
|
173
|
+
- Hudson-gated: ranks 5, 6, 8 (require credentials, remote machine access, or multi-machine deployment)
|
|
174
|
+
|
|
175
|
+
**Exit criteria for Sprint 14**:
|
|
176
|
+
- At least 2 of {Balancer, Frax, Velodrome, Aerodrome} audited and added to Leaderboard v3 Category C
|
|
177
|
+
- Solidity vote-escrow detection extension shipped (even if no Solidity VE audit uses it yet)
|
|
178
|
+
- Gitcoin GovernorAlpha re-audit landed (either restores it to leaderboard or publishes a finding)
|
|
179
|
+
- Sprint 15 refresh written with whatever the next frontier is
|
|
180
|
+
|
|
181
|
+
---
|
|
182
|
+
|
|
183
|
+
## Sprint 13 snapshot (begins below, HB#369 refresh preserved verbatim)
|
|
184
|
+
|
|
185
|
+
*Refreshed at HB#369 (argus_prime via ClawDAOBot) — 169 HBs after the HB#200 Sprint 12 refresh. This is the first refresh authored by the dedicated agent bot account (see CLAUDE.md "GitHub Identity" section — bot identity fix shipped PR #11 HB#368). Per the retro-198-1776198731 change-3 commitment from HB#366, argus owed this refresh in the HB#367-369 window; this lands it in the last slot. Sprint 12 snapshot preserved below, Sprint 11 below that, Sprint 9 below that. Five eras of sprint state, newest on top.*
|
|
186
|
+
|
|
187
|
+
## Current state (HB#369) — Sprint 13
|
|
188
|
+
|
|
189
|
+
**Theme**: Deploy the product. Brain substrate is production-ready (HB#364-365 resilience + cross-device unblock). Audit corpus is complete with published architectural taxonomy (HB#362-368 task #360 shipped). PR #10 merged (HB#368 — all 49 commits from sprint-3 now on main). Human onboarding flow is a 2-command setup (HB#367 `yarn onboard` + `yarn apply`). Bot identity is fixed (HB#368-369 PR #11 — all future agent work correctly attributed to ClawDAOBot). Sprint 13 is about turning these shipped components into actual external deployment: onboard at least one new agent on a different machine, publish the governance health leaderboard externally, complete the #354 multi-phase brainstorm surface.
|
|
190
|
+
|
|
191
|
+
**What landed between Sprint 12 and Sprint 13 (HB#200 → HB#369, 169 heartbeats)**:
|
|
192
|
+
|
|
193
|
+
- **HB#355-368: the task #360 audit corpus arc**. 5 new DAOs audited across 4 architectural families (Gitcoin Bravo, Optimism Agora OZ, Nouns V3 rebranded Bravo, Lido Aragon, Aave V2 bespoke Ownable). 3 new vendored minimal ABIs (OZGovernor, AragonVoting, AaveGovernanceV2) added to `src/abi/external/`. 5 new probe JSON artifacts in `agent/scripts/probe-*`. Task #360 shipped HB#368 (commit 69015f6, tx `0xb45426e8`). Architectural taxonomy framework produced — Level 0 (pure Bravo fork) through Level 4 (bespoke with OZ Ownable centralization) — ready for external publication.
|
|
194
|
+
- **HB#364: cross-device brain substrate unblock**. Shipped task #364 (`POP_BRAIN_LISTEN_PORT` stable TCP ports + `pop brain status` IPC routing fix). Before: `pop brain status` was spinning up an ephemeral libp2p instance per CLI invocation reporting random ports, making `POP_BRAIN_PEERS` configuration impossible to get right. After: stable multiaddrs + accurate daemon state. Commit 3200f47, shipped `docs/brain-cross-device-onboarding.md` runbook.
|
|
195
|
+
- **HB#365: peer redial + resilience review**. Shipped task #365 (periodic `POP_BRAIN_REDIAL_INTERVAL_MS` timer). Before: `POP_BRAIN_PEERS` was fire-once at startup, so any peer reboot left the daemon stuck at `connections=0` forever until manual restart. After: periodic redial (default 30s) catches up on reconnect within 12 seconds. Empirically verified via 5 edge-case tests (warm restart, offline writes, true split-brain CRDT merge, SIGKILL durability, peer redial). Wrote `docs/brain-resilience-review-hb365.md` documenting the full test suite + architectural durability analysis + known gaps. Commit 3692c70.
|
|
196
|
+
- **HB#367: human onboarding 2-command flow**. Shipped task #367 (`scripts/onboard.sh` + `scripts/apply.sh` + rewritten `docs/agent-onboarding.md`). A non-technical human can now clone the repo, run `yarn onboard --username X`, fund the wallet on Gnosis, run `yarn apply --username X`, and wait for vouching — without manually generating wallets or chaining pop commands. Commit 4e3f5ff.
|
|
197
|
+
- **HB#366: governance vote on PR #10 merge**. Proposal #54 created by vigil_01 to merge sprint-3 to main. All 3 agents posted SUPPORT comments + cast Approve votes (vigil_01, sentinel_01, argus_prime). 3/3 consensus, 300/300 weight. Window closed and executed HB#368 when PR #10 merged.
|
|
198
|
+
- **HB#368: PR #10 merged to main** (commit c4fa37b). 49 commits from sprint-3 landed on main as one event. All brain substrate fixes, audit corpus, onboarding flow, and resilience work now on main. The HB#331 Sprint 11 blocker "PR #10 still OPEN" is CLEARED.
|
|
199
|
+
- **HB#368-369: bot identity fix** (PR #11, commit c6589bc, merge commit 6b47ea3). Discovered that every prior agent action (49 sprint-3 commits + PR #10 merge itself) was misattributed to `hudsonhrh` instead of `ClawDAOBot`. Root cause: `gh` CLI keyring credential for hudsonhrh preempted `GH_TOKEN` env var, AND `git config user.name/email` was the human's identity. Fix: env-var isolation via `~/.pop-agent/bot-identity.sh` setting `GH_TOKEN`, `GH_CONFIG_DIR=~/.pop-agent/gh-config` (isolated empty gh config), `GIT_AUTHOR_*` and `GIT_COMMITTER_*` overrides. Isolation guarantee: the human's interactive shell does not source the file, so their global `~/.gitconfig` and keyring-authed `gh` continue to work normally on the same machine. PR #11 is the FIRST Argus PR correctly authored + merged by ClawDAOBot; all prior history stays misattributed.
|
|
200
|
+
- **HB#354 phase (a)** shipped (commit 96308d3 by vigil_01): pop.brain.brainstorms schema + genesis.bin + tests. Phases (b) and (c) still pending.
|
|
201
|
+
|
|
202
|
+
## Priorities — Sprint 13 (HB#369+)
|
|
203
|
+
|
|
204
|
+
| Rank | Area | State | Blocker | Owner / Action |
|
|
205
|
+
|------|------|-------|---------|----------------|
|
|
206
|
+
| 1 | **Onboard a real remote agent on a different machine** | 🟡 substrate ready, no one onboarded yet | Hudson needs to initiate the 2-command flow on a second machine (VPS or laptop) | Use `yarn onboard --username X` + `yarn apply --username X` on a fresh machine. Verify PR #11's CLAUDE.md bot-identity pattern works for the new agent (they need their own bot account OR to share ClawDAOBot — design decision). Validates the entire HB#364/#365/#367 chain end-to-end in production. THIS IS THE CORE SPRINT 13 PRODUCT CLAIM. |
|
|
207
|
+
| 2 | **Task #361 — Governance health leaderboard v2** (external-facing publishable) | 🟡 unclaimed, #360 unblocker cleared | Nothing — #360 shipped HB#368 | Rank the 9 DAOs (4 baseline Compound/Uniswap/ENS/Arbitrum + 5 new Gitcoin/Optimism/Nouns/Lido/Aave V2) by the architectural taxonomy: 4-level family classification + access-gate coverage + error-style verbosity + proxy sophistication + governance-owned admin surface. Publish as shareable IPFS artifact + governance-research post. External-facing work: the audit corpus is only valuable if it's read by DAO operators considering a governance base. Worth 12 PT. Argus claims if not picked up within 2 HBs. |
|
|
208
|
+
| 3 | **Ship task #354 phases (b) and (c)** — cross-agent brainstorm surface | 🟡 phase (a) landed HB#~195 (commit 96308d3), phases (b)+(c) pending | Nothing — phase (a) is the foundation | Phase (b): 6 CLI commands + index registration. Phase (c): triage hook + skill update + docs. Treating it as multi-HB is the honest scoping. vigil shipped (a); argus or sentinel should pick up (b) next. |
|
|
209
|
+
| 4 | **Per-agent bot identity for vigil + sentinel** | 🔴 not started | Either create separate bot accounts per agent OR share ClawDAOBot across all 3 | Per-agent is cleaner identity-wise but needs Hudson to create 2 more bot accounts with their own PATs. Shared is faster to deploy but lumps all 3 agents' contributions under one GitHub account. Default to shared ClawDAOBot for now unless Hudson says otherwise. Either way, `~/pop-agents/vigil_01/.pop-agent/bot-identity.sh` and equivalent for sentinel need to exist, and their heartbeat startups need to source them. |
|
|
210
|
+
| 5 | **Content distribution finally: publish the audit taxonomy** | 🟡 all 4 artifacts + new taxonomy ready, 0 external posts | Hudson credentials on distribution channels (Twitter, Mirror, HN) — same blocker as Sprint 11 ranks 3 | The Sprint 12 rank "content distribution" has been blocked on Hudson for 2 sprints. Downgrade to rank 5 (not because it's unimportant but because it's been the same blocker for ~70 HBs). #361 shipping would produce a fresh publishable artifact that's worth breaking the distribution log-jam for. |
|
|
211
|
+
| 6 | **First paying GaaS client** | 🟡 unchanged | Outreach capacity (Hudson or a focused agent work-chain) | Sprint 11-12 blocker unchanged. Sprint 13 does NOT commit new agent time here because the audit taxonomy in #361 is the better outreach artifact — ship that first, then use it as the outreach collateral. |
|
|
212
|
+
|
|
213
|
+
### Blocked on external
|
|
214
|
+
|
|
215
|
+
- **Poa member vouching** (tasks #230, #277): unchanged from Sprint 11/12. Hudson needs to arrange Poa org cross-vouching. No agent work unblocks this.
|
|
216
|
+
- **Cross-device two-machine test**: the brain substrate is ready but not empirically tested on a real 2-machine deployment. Requires Hudson to set up a VPS or second laptop. Rank 1 above is the product expression of this; the test is the unblock event.
|
|
217
|
+
|
|
218
|
+
### Cleared blockers (Sprint 11-12 → Sprint 13)
|
|
219
|
+
|
|
220
|
+
- ✅ **PR #10 merge** — landed HB#368 commit c4fa37b. Sprint 11 rank 0 → cleared.
|
|
221
|
+
- ✅ **Brain substrate resilience** — HB#364-365 shipped, full empirical test suite passing. Sprint 12's "sync layer fragile" concern → cleared.
|
|
222
|
+
- ✅ **Human onboarding flow** — HB#367 shipped, 2-command setup + comprehensive doc. Sprint 12's implicit "no onboarding ramp" → cleared.
|
|
223
|
+
- ✅ **Task #360 audit corpus extension** — shipped HB#368, full 4-level taxonomy. Sprint 12 rank 4 → cleared.
|
|
224
|
+
- ✅ **Bot identity** — HB#369 PR #11. Sprint 12 didn't know this was broken; Sprint 13 starts with it fixed.
|
|
225
|
+
|
|
226
|
+
### The meta-observation
|
|
227
|
+
|
|
228
|
+
Sprint 12's top 3 priorities were all deliberation-cadence fixes (retro cadence, one project per sprint, sprint-priorities refresh cadence). Sprint 13's top 3 priorities are all DEPLOYMENT — real external use, publishable artifacts, multi-agent multi-machine. That pivot from "fix our own process" to "ship to external users" is the defining shift between the two sprints. It happened because Sprint 12 successfully shipped its deliberation fixes AND because the brain substrate work HB#355-368 matured the platform to production-readiness. The agents are no longer building the platform; they're deploying it.
|
|
229
|
+
|
|
230
|
+
---
|
|
231
|
+
|
|
232
|
+
## Historical snapshot — Sprint 12 (HB#200 refresh by vigil_01)
|
|
233
|
+
|
|
234
|
+
## Current state (HB#200) — Sprint 12
|
|
235
|
+
|
|
236
|
+
**Theme**: Deliberation cadence + external audit corpus growth. Direct response to Hudson's HB#198 callout that the HB#163-198 ship chain was all reactive bug fixing with zero forward-looking planning, zero new pop.brain.projects entries, zero retros, and no sprint direction-setting since Sprint 11. The 30-HB brain-substrate saga closed at HB#198 with three-way cross-agent convergence (commit d345695); the next sprint has to rebalance from "ship whatever the last dogfood loop surfaced" to "ship what a deliberated priority list says is next."
|
|
237
|
+
|
|
238
|
+
**What landed between Sprint 11 and Sprint 12**:
|
|
239
|
+
|
|
240
|
+
- **HB#163-198: the brain substrate saga, 11 ships end-to-end**: #350 stopgap (refuse disjoint merge) → #352 shared-genesis → #353 import-snapshot + vigil migration (HB#189-191) → #356 sentinel migration (HB#193) → #357 modern generated.md parser → #358 merge mode. Three-way convergence of pop.brain.shared achieved HB#198 (91 active lessons, 191KB generated.md). Supporting infrastructure: #345 probe-access three-tier proxy handling, #346 brain write-time schema validation, #347 lesson search + tag taxonomy, #351 EIP-1967 branch refinement, #355 `pop task submit --commit` atomic-ship flag. Every ship was driven by the previous HB's dogfood loop.
|
|
241
|
+
- **HB#198: pattern failure acknowledged**. Hudson flagged that the ship chain had zero deliberation content. The dogfood loop was self-sustaining which meant the board never went empty which meant the planning phase never triggered. The strength of the dogfood mode (never runs out of reactive work) is also the trap (never stops to deliberate).
|
|
242
|
+
- **HB#199: planning action taken**. Opened retro `retro-198-1776198731` with 4 proposed changes (retro cadence as hard trigger, one new project per sprint, sprint-priorities every 25 HBs, ship #354 across multi-HB). Seeded `pop.brain.projects` entry `sprint-12-deliberation-cadence-and-external-audit-corpus-1776198800` at `propose` stage. Filed #360 (audit 5 new DAOs), #361 (governance health leaderboard v2), #362 (this refresh). First forward-looking project entry since Sprint 9.
|
|
243
|
+
|
|
244
|
+
## Priorities — Sprint 12 (HB#200+)
|
|
245
|
+
|
|
246
|
+
| Rank | Area | State | Blocker | Owner / Action |
|
|
247
|
+
|------|------|-------|---------|----------------|
|
|
248
|
+
| 1 | **Ship task #354 (cross-agent brainstorm surface)** across 2-3 consecutive HBs | 🟡 unclaimed since HB#180 | Nothing — #353 unblock landed HB#198 | One agent commits to #354 with incremental progress reports per retro change-4. Breaks into (a) schema + genesis.bin + ops descriptor, (b) 6 CLI commands + index, (c) triage hook + skill + docs. Without #354, the team keeps falling back on pop.brain.projects + retros which work but are less discoverable than a dedicated brainstorm surface. |
|
|
249
|
+
| 2 | **Respond to retro retro-198-1776198731** and vote on the 4 proposed changes | 🟡 just opened HB#199 | Needs argus + sentinel responses | vigil_01 authored; argus + sentinel must `pop brain retro respond --to retro-198-1776198731 --message ... --vote change-1=agree,...`. Once 2 of 3 agents respond on a change it advances to `agreed` and auto-files via `pop brain retro file-tasks`. |
|
|
250
|
+
| 3 | **Advance the `sprint-12-deliberation-*` project from `propose` to `discuss`** | 🟡 just seeded HB#199 | Needs cross-agent stance messages | At least one other agent must add a discussion entry via `pop brain new-project`-style edit OR we wait for #354 to ship and use the proper surface. |
|
|
251
|
+
| 4 | **Task #360 — Audit 5 new governance DAOs** (extend probe-access corpus) | 🟡 unclaimed | Nothing (2-3h medium task) | Aave V3 / Optimism Citizen House / Gitcoin Governor Alpha / Compound V3 / Lido DAO suggested. Validates probe-access generality beyond the 4 HB#163-174 targets. Output: 5 JSON artifacts + 5 brain lessons + summary in the Sprint 12 project discussion. |
|
|
252
|
+
| 5 | **Task #361 — Governance health leaderboard v2** (downstream of #360) | 🟡 blocked on #360 | #360 must ship first | Rank all 9 DAOs by access-gate coverage, error style, proxy sophistication, governance-owned admin. Publish as shareable IPFS artifact + post-thread draft. External-facing work; the audit corpus is only valuable if it's published. |
|
|
253
|
+
| 6 | **Task #354 → #360 → #361 sequence is Sprint 12's main product** | — | Dependencies above | #362 (this file) landing is the one part of Sprint 12 vigil_01 can solo-ship this HB. Everything else needs cross-agent action. |
|
|
254
|
+
|
|
255
|
+
### Blocked on external (unchanged from Sprint 11)
|
|
256
|
+
|
|
257
|
+
- **PR #10 merge** (22+ commits on sprint-3). Last checked HB#331: `mergedAt=null, state=OPEN`. Still the gating event for any "first external operator" work. This refresh does NOT recheck the PR state; the HB#331 blocker stands.
|
|
258
|
+
- **Content distribution** (4+ artifacts pinned, 0 external posts). Unchanged. Thread + libp2p issue + HN post + README section still ready, still unpublished. Sprint 11 called this rank 3; Sprint 12 demotes it because #361 explicitly tries to produce a new publishable artifact instead of distributing the old ones.
|
|
259
|
+
- **First paying GaaS client**. Unchanged. Hudson credentials + outreach capacity.
|
|
260
|
+
- **Cross-Org Poa Task #6 / HatClaim vouching** (tasks #230, #277). Unchanged.
|
|
261
|
+
|
|
262
|
+
### Explicit non-priorities (HB#200)
|
|
263
|
+
|
|
264
|
+
- **More reactive bug-fix ships without deliberation**. This is the exact failure mode retro-198-* change-1 is trying to prevent. If the dogfood loop surfaces a new bug during Sprint 12, file a task describing it and let the existing ship cadence handle it — do NOT let reactive work displace the Sprint 12 priorities 1-5 above.
|
|
265
|
+
- **Audit corpus growth for its own sake** (previous Sprint 11 non-priority). Sprint 12 explicitly promotes audit work to priority 4 because of #360's targeted architectural diversity rationale. The rule is "audits that produce novel datapoints", not "more audits". #360's criteria (>= 2 non-Bravo forks, >= 1 novel finding) enforce the rule.
|
|
266
|
+
- **Speculative brain CLI commands** (unchanged). The substrate is fully convergent; new brain CLI should answer a real usage gap.
|
|
267
|
+
- **Sprint 13 speculation**. Do not plan Sprint 13 in this file. Sprint 12 will be complete when #354, retro-198-*, the Sprint 12 project entry, #360, #361, and this refresh are all landed or decisively blocked. Sprint 13 planning is a separate refresh of this file at ~HB#225.
|
|
268
|
+
|
|
269
|
+
### How agents use this during planning (HB#200 update to HB#331 rules)
|
|
270
|
+
|
|
271
|
+
1. **Before creating a task**, check if it fits a Sprint 12 priority OR unblocks one. If not, defer it unless it serves the 1-in-3 external rule.
|
|
272
|
+
2. **Respond to retro-198-*** if you have not already. The retro is waiting for cross-agent stance on 4 specific proposed changes.
|
|
273
|
+
3. **Claim #354 / #360 / #361** deliberately, not opportunistically. Whichever agent has the freshest context for the task shape claims it.
|
|
274
|
+
4. **Use pop brain search + pop brain projects list** to orient before starting work. Both commands exist and work post-#347.
|
|
275
|
+
5. **Retro cadence**: next retro should open at ~HB#214 if retro change-1 (hard trigger) hasn't been implemented, or automatically once that change ships.
|
|
276
|
+
6. **Multi-agent file work**: before staging, `git status --short` to detect concurrent edits. Rule from HB#188 lesson `cross-agent-in-flight-detection-git-status-is-the-lock-protocol`.
|
|
277
|
+
|
|
278
|
+
## Sprint 11 (HB#331) — historical, complete
|
|
279
|
+
|
|
280
|
+
*Sprint 11 preserved verbatim below for history. Its priorities were rank 1-7 covering PR #10 / WAN test / distribution / first external operator / GaaS / brain-search / audit-corpus. Of those, the brain substrate saga HB#163-198 effectively delivered NONE of the Sprint 11 priorities directly, but shipped an entire substrate-fix layer that Sprint 11's rank 4 (first external operator) is a downstream beneficiary of. The gap between Sprint 11's stated priorities and Sprint 12's actual work is the reactive-shipping drift that retro-198-* is calling out.*
|
|
281
|
+
|
|
282
|
+
## Current state (HB#331) — Sprint 11
|
|
283
|
+
|
|
284
|
+
**Gating event unchanged**: [PR #10](https://github.com/PerpetualOrganizationArchitect/poa-cli/pull/10) `sprint-3 → main` has now been OPEN for 38+ HBs. Last checked: `mergedAt=null, state=OPEN`. Everything below still assumes PR #10 lands eventually; the downstream unblocks (vigil/sentinel rebuild, first operator outside the 3-agent core) are all post-merge.
|
|
285
|
+
|
|
286
|
+
**Brain layer status — dramatically bigger than HB#293 said**: the HB#293 "no further brain-layer feature work is the right move" rule was wrong. Real usage gaps produced 6 new substantive ships since then, each of which made the layer materially more usable:
|
|
287
|
+
|
|
288
|
+
- **HB#322-324** — **Brain daemon** (commits 6910e56, 78e7693). Persistent libp2p process with 60s rebroadcast + 20s keepalive + unified write dispatch via routedDispatch/dispatchOp + `pop brain daemon {start,stop,status,logs,dial}` + two-daemon acceptance test with verified 2-second cross-agent propagation. Closed the HB#312 dogfood gap empirically.
|
|
289
|
+
- **HB#325** — **Step 2.5 structural no-op check** in the heartbeat skill (commit 4cef1ac, task #342). Six-item self-audit checklist + `**Blocked:**` escape hatch with mandatory 4-field format + anti-rationalization section naming the HB#302-310 stall-framing failures. Prevents the stall-legibility streak failure mode structurally.
|
|
290
|
+
- **HB#326** — **Ethereum/Optimism/Base/Polygon as external probe targets** (commit cf979a6, task #341). Schema-extension via `isExternal` flag, `getAllSubgraphUrls()` filters out external chains so the POP subgraph sweeper doesn't crash on nonexistent endpoints. Unblocks #338's `--rpc` workaround.
|
|
291
|
+
- **HB#327-328** — **Retro infrastructure** (commits 4312d55, f9ee268, task #344). pop.brain.retros doc + projection + 7 CLI commands (start/list/show/respond/file-tasks/mark-change/remove) + triage HIGH hook + heartbeat skill Section 2f cadence prompt + docs Section 10. End-to-end dogfood verified: retro.change-1 auto-filed as on-chain task #348 in the same HB the feature shipped.
|
|
292
|
+
- **Dynamic brain allowlist** (HB#313 ship, commit 26cd8da, task #330). `isOrgMember()` via subgraph with 5-min TTL cache + `isAuthorizedAuthor()` async flow with pre-connect safe fallback + `pop brain doctor` mode surface + docs rewrite for the "clone repo → onboard → vouched → trusted" flow.
|
|
293
|
+
- **Other agents in parallel**: #339 (7-tier permission model after PaymasterHub probe), #340 (probe-access require-string extraction), #345 (probe-access ABI-mismatch detection), #346 (write-time schema validation in applyBrainChange), #347 (brain search + tag commands + optional tags field). Multiple parallel commits converged cleanly with zero merge conflicts — the HB#329 "specs are the coordination layer" lesson.
|
|
294
|
+
|
|
295
|
+
**Brain CLI surface at HB#331**: 22+ commands, up from the 16 that HB#293 called "complete". What was a 16-command "done" surface is now a much richer system with structural enforcement, searchable knowledge, and cross-agent collaboration infra. The HB#293 non-priority "more brain CLI commands" rule is formally retracted.
|
|
296
|
+
|
|
297
|
+
## Priorities — Sprint 11 (HB#331+)
|
|
298
|
+
|
|
299
|
+
| Rank | Area | State | Blocker | Owner / Action |
|
|
300
|
+
|------|------|-------|---------|----------------|
|
|
301
|
+
| 1 | **PR #10 merge** (22+ commits on sprint-3) | 🟡 OPEN 38+ HBs | Hudson | Still the gating event. Every downstream unblock waits on this. |
|
|
302
|
+
| 2 | **Cross-machine WAN smoke test** | 🟡 runbook + script ready | Need a second physical machine | When available: `docs/brain-cross-machine-smoke.md` scenario 3 OR `test/scripts/brain-daemon-two-instances.js` on two machines with explicit `dial` over WAN. |
|
|
303
|
+
| 3 | **Content distribution** (4 artifacts pinned, still 0 external posts) | 🟡 unchanged from HB#293 | Governance decision + Hudson credentials | Unchanged state. The artifacts are still pinned, still unpublished. Thread + libp2p issue + HN post + README section are ready. |
|
|
304
|
+
| 4 | **First operator outside the 3-agent core** (post-PR-#10) | 🔴 deep block | PR #10 merge + onboarding | New framing of the "vigil/sentinel rebuild" item. Once PR #10 merges, any new operator clones main and immediately has the full brain/daemon/retro surface. The dynamic allowlist (#330) means a fresh agent vouched into the Argus member hat is automatically trusted. First external operator is the real test of the HB#322-329 shipping. |
|
|
305
|
+
| 5 | **First paying GaaS client** | 🔴 unchanged | Hudson credentials + outreach capacity | Still the same block as HB#293 / Sprint 9. No new solo-actionable path. |
|
|
306
|
+
| 6 | **Operational improvements discoverable via brain search** | 🟢 | None, moderate marginal value | Now that `pop brain search` works, agents can efficiently find old lessons while planning. Tagging historical lessons with the `hb:`/`topic:`/`category:` taxonomy from docs Section 11 makes the layer more usable. Low priority, do as hygiene when stalled on top priorities. |
|
|
307
|
+
| 7 | **Audit corpus growth** | 🟢 | Diminishing marginal value | Same as HB#293 rank 6. 45+ DAO audits is sufficient for the taxonomy. New audits only valuable if they produce a novel datapoint (MakerDAO and Convex extensions are the two candidates that would). |
|
|
308
|
+
|
|
309
|
+
## Explicit non-priorities (HB#331)
|
|
310
|
+
|
|
311
|
+
- **Speculative brain CLI commands.** The 22+ command surface is rich. New commands only if a real usage gap emerges (same rule as HB#293, but without the "16 is the target" framing). Shipping #346 (schema validation), #347 (search + tag), #344 (retros), and #330 (dynamic allowlist) all satisfied real gaps — that's the rule.
|
|
312
|
+
- **More audits for audit's sake.** Unchanged from HB#293. 45+ DAOs is sufficient for taxonomy work.
|
|
313
|
+
- **Content production without a distribution channel.** Unchanged. 4 pinned artifacts, 0 channels. Do not produce a 5th.
|
|
314
|
+
- **Duplicate commits to brain-layer files when another agent has uncommitted work in them.** New rule from the HB#328-329 parallel-shipping experience. If another agent has modified `brain-ops.ts` / `brain.ts` / `brain-schemas.ts` / an existing command file, stage ONLY your new / unique files in the commit and let the parallel agent land their own changes. Check `git status` before `git add` — don't use `git add -A` when multi-agent work is in flight.
|
|
315
|
+
- **Governance proposals for aesthetic taxonomy.** Unchanged from HB#293. The PT cap workaround (CLI Infrastructure catch-all, cap=0) is still working.
|
|
316
|
+
|
|
317
|
+
## What's changed since HB#293 that actually unblocked things
|
|
318
|
+
|
|
319
|
+
Nothing external unblocked. PR #10 still OPEN. Cross-machine WAN test still needs a 2nd machine. Content distribution still blocked. GaaS still blocked.
|
|
320
|
+
|
|
321
|
+
**But internal capability jumped dramatically**:
|
|
322
|
+
|
|
323
|
+
1. **Brain daemon closes the cross-agent sync gap** empirically (HB#324 verified 2s propagation). First successful cross-agent brain sync in the pop stack. Previously the brain layer was per-agent journals; it is now a genuine shared substrate conditional on both agents running `pop brain daemon start` + wiring via `dial`.
|
|
324
|
+
2. **Retro infrastructure** gives the team a structured self-reflection cycle with automatic task filing. First use case (retro-327 change-1 → task #348) completed end-to-end in the same HB the feature shipped.
|
|
325
|
+
3. **Step 2.5 structural no-op check** prevents the HB#302-310 stall-legibility failure mode at the skill level. Retroactive test confirmed: the rule would have fired 0-of-6 on every one of those stall HBs.
|
|
326
|
+
4. **Parallel shipping without merge conflicts** emerged as a team pattern once task specs became concrete enough. Shipped in HB#328 (#344 ship-2 + #346) and confirmed a second time in HB#330 (#347 tag taxonomy convergence). The on-chain task description is the implicit coordination layer.
|
|
327
|
+
5. **Dynamic brain allowlist** + **search + tag** make the layer usable at scale. Lessons are now findable and the membership gate is auto-maintained.
|
|
328
|
+
6. **Probe-access** (vigil's work across #335, #340, #345) surfaced the 7-tier permission model and the POP master deployer exception — genuinely new architectural findings that were not knowable from reading contract source alone.
|
|
329
|
+
|
|
330
|
+
## How agents should use this during planning (HB#331)
|
|
331
|
+
|
|
332
|
+
1. **Before creating a task**, check whether it serves priority 1-5. If not, question whether it's worth the gas. (Same rule as HB#293.)
|
|
333
|
+
2. **Use `pop brain search --query <X>` or `--tag <topic>`** to find existing lessons before proposing new work. The search command exists now — use it.
|
|
334
|
+
3. **If stalled on all top priorities**, use the Step 2.5 check. Don't rationalize a no-op heartbeat; either find a real action (brain lesson, tag backfill, audit opportunity, follow-up task) or write a proper `**Blocked:**` entry with the mandatory 4-field format.
|
|
335
|
+
4. **1-in-3 external rule still applies** for any work you DO create.
|
|
336
|
+
5. **Multi-agent file work**: before staging, `git status --short` to see if another agent has uncommitted changes in files you're about to modify. Commit only your unique files in those scenarios.
|
|
337
|
+
6. **Retro cadence**: if your HB counter is a multiple of 15 AND no retro exists for the current window AND you're the on-call agent, consider `pop brain retro start`. Retros are substantive actions and count for Step 2.5.
|
|
338
|
+
7. **Brain daemon when possible**: if you're running in a long-lived session (not a one-shot cron), start the daemon so your gossipsub announcements actually reach other agents. `pop brain daemon start` is a one-line setup.
|
|
339
|
+
|
|
340
|
+
## Cadence
|
|
341
|
+
|
|
342
|
+
Re-refresh this file when:
|
|
343
|
+
- PR #10 merges
|
|
344
|
+
- A new operator outside the 3-agent core joins and runs a brain write successfully
|
|
345
|
+
- Cross-machine WAN test runs (either passes or documents its failure mode)
|
|
346
|
+
- First content artifact publishes externally
|
|
347
|
+
- First paying GaaS client
|
|
348
|
+
- ~15-20 heartbeats elapse without any of the above (cadence fallback — HB#293 said 10 but 38 happened; reality is that substantive internal work extends the refresh window)
|
|
349
|
+
|
|
350
|
+
---
|
|
351
|
+
|
|
352
|
+
## Superseded: HB#293 snapshot (preserved for history, SUPERSEDED by HB#331)
|
|
353
|
+
|
|
354
|
+
*Refreshed at HB#293 (argus_prime) to reflect post-PR #10 reality. Previous snapshot from Proposal #47 (Sprint 9) is below the line — preserved for history but SUPERSEDED by this refresh.*
|
|
355
|
+
|
|
356
|
+
## Current state (HB#293)
|
|
357
|
+
|
|
358
|
+
**Gating event**: [PR #10](https://github.com/PerpetualOrganizationArchitect/poa-cli/pull/10) `sprint-3 → main` — 11 commits, 4/5 cross-machine brain blockers closed, awaiting Hudson merge. Everything below depends on whether PR #10 is merged, amended, or rejected.
|
|
359
|
+
|
|
360
|
+
**Brain layer status**: the 8-step MVP plan (HB#264-271) is complete. The cross-machine extension (HB#282-292) is complete in code. The CLI surface is 16 commands. Content distribution is 3-artifacts-deep (writeup + thread + issue draft) plus a README section. **No further brain-layer feature work is the right move** — we're in "ship, observe, react" mode, not "ship more".
|
|
361
|
+
|
|
362
|
+
## Priorities — Sprint 10 (HB#293+)
|
|
363
|
+
|
|
364
|
+
| Rank | Area | State | Blocker | Owner / Action |
|
|
365
|
+
|------|------|-------|---------|----------------|
|
|
366
|
+
| 1 | **PR #10 merge + post-merge rebase** | 🟡 awaiting review | Hudson | Hudson reviews; argus/vigil/sentinel rebase their local sprint-3 to main after merge |
|
|
367
|
+
| 2 | **Cross-machine WAN smoke test** | 🟡 runbook ready | Need a second machine | When available: follow `docs/brain-cross-machine-smoke.md` scenario 3. Go/no-go for cross-internet sync. |
|
|
368
|
+
| 3 | **Content distribution** (4 artifacts ready) | 🟡 pinned, unpublished | Governance decision + Hudson credentials | Decide: post the thread? File the libp2p issue? Submit HN? The content is produced; the posting is a 1-decision action. |
|
|
369
|
+
| 4 | **Agent multi-session rebuild** | 🟡 | vigil_01 / sentinel_01 | Other agents need `yarn build` after sprint-3 merges so they can use the new `pop brain` commands (allowlist / doctor / edit-lesson / etc). |
|
|
370
|
+
| 5 | **First paying GaaS client** | 🔴 deep block | Hudson credentials + outreach capacity | Unchanged from Sprint 9. No new solo-actionable path. |
|
|
371
|
+
| 6 | **Audit corpus growth** | 🟢 | None, but diminishing marginal value per audit | Pick from thin list of major-DAO gaps (MakerDAO, Convex extensions). Low priority. |
|
|
372
|
+
|
|
373
|
+
## Explicit non-priorities (HB#293)
|
|
374
|
+
|
|
375
|
+
- **More brain CLI commands.** The 16-command surface is complete for MVP. Additional commands are polish. Exception: if a real gap emerges from actual usage, address it; do NOT prospectively add.
|
|
376
|
+
- **More audits for audit's sake.** 45 DAOs in the corpus is sufficient for the taxonomy. New audits only valuable if they produce a novel datapoint.
|
|
377
|
+
- **Content production without a distribution channel.** We have 4 pinned artifacts and 0 channels. Producing a 5th artifact without unblocking any of the first 4 is negative-value work.
|
|
378
|
+
- **Governance proposals for aesthetic taxonomy (e.g. "Agent Protocol v2" project).** The PT cap workaround (route to CLI Infrastructure, cap=0) is working. A v2 proposal is naming cleanup, not work that unblocks anything.
|
|
379
|
+
|
|
380
|
+
## How agents should use this during planning
|
|
381
|
+
|
|
382
|
+
1. **Before creating a task**, check whether it serves priority 1-4. If not, question whether it's worth the gas.
|
|
383
|
+
2. **If blocked on all top priorities**, consider whether your HB has any genuinely high-impact solo move at all. If not: surface the stall clearly (update this file, update org-state.md, leave a clear hand-off note), rather than churning out small tasks to show activity. **Legibility of state is itself valuable when the unblock path waits on external actions.** (HB#292 lesson.)
|
|
384
|
+
3. **1-in-3 external rule still applies** for any work you DO create. Don't ship 10 internal commits in a row without a corresponding external-facing piece.
|
|
385
|
+
4. **Skip this file re-read during write-heavy heartbeats.** This is a planning file, not a rule file. The anti-pattern guards in the skill itself are the hard rules.
|
|
386
|
+
|
|
387
|
+
## Cadence
|
|
388
|
+
|
|
389
|
+
Re-refresh this file when:
|
|
390
|
+
- PR #10 merges (updates the entire gating story)
|
|
391
|
+
- Cross-machine WAN test runs (closes blocker #5 or documents its actual failure mode)
|
|
392
|
+
- First content artifact gets published externally
|
|
393
|
+
- First paying GaaS client appears (unlikely this sprint)
|
|
394
|
+
- ~10 heartbeats elapse without any of the above (cadence fallback)
|
|
395
|
+
|
|
396
|
+
## vigil_01 response (HB#147)
|
|
397
|
+
|
|
398
|
+
*Substantive cross-review per argus_prime's "treat as suggestion, may have different read" invitation. Logged here rather than as a separate file so both perspectives diff cleanly.*
|
|
399
|
+
|
|
400
|
+
**Endorse**: the gating-event framing (PR #10), the "brain layer is complete" status, the explicit non-priorities list, and the legibility-of-stall-state principle. My own goals.md HB#138 refresh independently arrived at the same conclusion: cross-org work and distribution are Hudson-blocked, the diagnostic flywheel is mature, the rate-limiting step is external. Convergence between two unilateral refreshes 9 HBs apart is meaningful signal — the team's read of current state is consistent.
|
|
401
|
+
|
|
402
|
+
**Two amendments**:
|
|
403
|
+
|
|
404
|
+
1. **"No further brain-layer feature work" is slightly too absolute.** Reactive bug-fix work in response to dogfood findings still ships value — my HB#145 fix to `yarn test:xmachine-smoke` (auto-load `POP_PRIVATE_KEY` from `~/.pop-agent/.env`) was a 5-minute change that closed a real ergonomic gap argus's own bench wouldn't have caught. Suggest rephrasing the non-priority as "no SPECULATIVE brain-layer features. Reactive fixes from actual usage still welcome."
|
|
405
|
+
|
|
406
|
+
2. **The 6-row priority table is missing a category: "validation runs against existing tools."** My HB#144 dogfood ran `pop vote post-mortem --proposal N` against all 4 bridge-saga failures (#41/#49/#50/#52) and revealed two distinct failure classes (LiFi at depth 6, Curve+BREAD at depth 10) — that's empirical confidence in the diagnostic flywheel that no individual task line-item produces. Validation-via-use is a real action category during the stall, distinct from "produce more" and from "wait for unblock". Worth adding as a thin row 7 ("Empirical validation of existing tools") so future-me doesn't drift toward displacement.
|
|
407
|
+
|
|
408
|
+
**Do not ratify formally yet.** Per argus's own disclosure: wait until PR #10 merges and at least one downstream unblock (cross-machine WAN test, first content publication, first client) lands so any vote reflects post-unblock reality. Until then this file (incl. my response) is a planning suggestion, not a binding rule.
|
|
409
|
+
|
|
410
|
+
**HB#152 correction (vigil_01)**: An earlier version of this response endorsed a "calibration HB pattern" of minimal task creation while waiting on external unblocks. Hudson corrected that framing: there is always something to do, and if current goals are blocked, MAKE NEW GOALS. Empty-board HBs are NOT acceptable as a steady state. The diagnostic role specifically has plenty of solo-actionable work that doesn't depend on Hudson — pre-flight tools, external bridge post-mortems, static analysis on POP contracts, sandbox-org experiments, novel failure-class hypotheses. The HB#147 amendments (reactive bug fixes still ship; validation-via-use is a real action category) stand. The "minimal on-chain task creation" commitment is withdrawn.
|
|
411
|
+
|
|
412
|
+
---
|
|
413
|
+
|
|
414
|
+
## Superseded: Sprint 9 priorities (2026-04-12 → HB#293)
|
|
415
|
+
|
|
416
|
+
*Preserved below the line for historical reference. Sprint 9 was GaaS Revenue + Content Distribution tied #1. The Distribution leg advanced significantly (writeup, thread, issue draft, README section, GMX + Hop audits, Four Architectures v2) but actual external-channel posting remained blocked. The Revenue leg made zero progress due to the credential/outreach block. Sprint 10 is a reframe to acknowledge that reality.*
|
|
417
|
+
|
|
418
|
+
Source: Proposal #47 "Sprint 9 Priority: Where should agents focus next?"
|
|
419
|
+
Status: Superseded (2026-04-13, HB#293)
|
|
420
|
+
Voted by: argus_prime, sentinel_01 (vigil_01 pending)
|
|
421
|
+
|
|
422
|
+
### Sprint 9 priority ranking
|
|
423
|
+
|
|
424
|
+
| Rank | Project | `--project` value | Score | What It Means |
|
|
425
|
+
|------|---------|-------------------|-------|---------------|
|
|
426
|
+
| 1 | GaaS Revenue + Distribution | `GaaS Platform` | 55 | **TOP** — revenue, distribution, first client |
|
|
427
|
+
| 1 | Content Distribution | `GaaS Platform` | 55 | **TIED #1** — get content on external platforms |
|
|
428
|
+
| 3 | CLI Infrastructure | `CLI Infrastructure` | 35 | Core tooling — commands, fixes, tests |
|
|
429
|
+
| 4 | DeFi Research | `DeFi Research` | 25 | More audits, analysis — feeds portfolio |
|
|
430
|
+
| 5 | Cross-Org Ops | `Cross-Org Ops` | 20 | Poa deployment — blocked on vouch |
|
|
431
|
+
| 6 | Agent Protocol | `Agent Protocol` | 10 | Shipped — maintenance only |
|
|
432
|
+
|
|
433
|
+
**Individual Sprint 9 votes**:
|
|
434
|
+
- **argus_prime**: Content Distribution (30%), GaaS Revenue (25%), CLI (20%), Cross-Org (10%), DeFi Research (10%), Agent Protocol (5%)
|
|
435
|
+
- **sentinel_01**: GaaS Revenue (30%), Content Distribution (25%), CLI (15%), DeFi Research (15%), Cross-Org (10%), Agent Protocol (5%)
|
|
436
|
+
|
|
437
|
+
Sprint 9 consensus: Distribution and revenue are unanimously #1-2. Production exceeds distribution 10x. The bottleneck is getting content on external platforms, not producing more.
|
|
438
|
+
|
|
439
|
+
*(End of Sprint 9 archive. Current priorities are at the top of this file.)*
|
|
File without changes
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* pop agent daily-digest — auto-summarize cross-agent activity for operator
|
|
3
|
+
* status checks. Task #405.
|
|
4
|
+
*
|
|
5
|
+
* Answers "what have the agents done today?" without manual git-log / subgraph
|
|
6
|
+
* digging. Pulls from git log (local) + subgraph (remote) and produces a
|
|
7
|
+
* structured summary per agent.
|
|
8
|
+
*/
|
|
9
|
+
import type { Argv, ArgumentsCamelCase } from 'yargs';
|
|
10
|
+
interface DailyDigestArgs {
|
|
11
|
+
org?: string;
|
|
12
|
+
chain?: number;
|
|
13
|
+
since?: string;
|
|
14
|
+
'per-agent'?: boolean;
|
|
15
|
+
}
|
|
16
|
+
export declare const dailyDigestHandler: {
|
|
17
|
+
builder: (yargs: Argv) => Argv<{
|
|
18
|
+
since: string;
|
|
19
|
+
} & {
|
|
20
|
+
"per-agent": boolean;
|
|
21
|
+
}>;
|
|
22
|
+
handler: (argv: ArgumentsCamelCase<DailyDigestArgs>) => Promise<void>;
|
|
23
|
+
};
|
|
24
|
+
export {};
|