Skip to content

docs(plan): community-layout, expertise, AI-Wire & sys-notification epics + bead tree - #14

Closed
jeremylongshore wants to merge 3 commits into
mainfrom
feat/buzz-community-expertise-epics
Closed

docs(plan): community-layout, expertise, AI-Wire & sys-notification epics + bead tree#14
jeremylongshore wants to merge 3 commits into
mainfrom
feat/buzz-community-expertise-epics

Conversation

@jeremylongshore

@jeremylongshore jeremylongshore commented Jul 31, 2026

Copy link
Copy Markdown

What

Extends the Buzz adoption master blueprint (001-PP-PLAN) with the four workstreams opened this session, hand-rolled as a dependency-ordered bead tree so the work proceeds systematically.

Why

The blueprint's E1–E9 predated the community channel architecture, the AI-Wire feed engine, the operational-expertise (reference/skill/agents) work, and the sys-notification consolidation. Scattered execution was the failure mode; a dependency-ordered backlog fixes it.

Ledger changes

  • E6 corrected: the isolated coding agent (goose minimax3) is LIVE on prod (decision-log/039, PR Update dependency @tanstack/react-router to v1.168.13 block/buzz#301), not "not started".
  • E10 Community channel layout & identity roster (buzz-ehv) — build DONE.
  • E11 Buzz operational expertise: reference + skill + agents (buzz-yfe) — COMPLETE.
  • E12 AI-Wire feed engine (buzz-w92) — posting primitive done, pipeline next.
  • E13 Estate system notifications into sys-* (buzz-0ts) — Track B, not started.

Beads (deps wired)

buzz-ehv (2), buzz-yfe (7, CLOSED), buzz-w92 (8), buzz-0ts (4). Cross-epic deps: the AI-Wire pipeline waits on the feed-curator agent; sys-notifications reuse the posting primitive. bd ready now surfaces buzz-w92.2 as the next unblocked build.

Verification

Both source-cited references written (100% citation-consistent with the fork); buzz-ops skill PASS /validate-skillmd; 3 operator agents PASS /validate-agent; posting primitive live (AI Wire bot posted first cards). Estate-private detail (host/secrets/runbook) stays in the intent-os ops/buzz/ lane, not here.

  • Jeremy Longshore
    intentsolutions.io

Summary by CodeRabbit

  • Documentation

    • Updated the Buzz adoption blueprint with production deployment, bridge, channel layout, operational expertise, and AI-Wire progress.
    • Recorded the current production URL, validation outcomes, deployment details, completed milestones, and remaining work.
  • Chores

    • Expanded issue and activity records covering integrations, observability, testing, notifications, onboarding, feed operations, restore tooling, and go-live readiness.
    • Updated statuses, evidence, dependencies, and production completion details.

…on epics; refresh ledger

Extends the Buzz adoption master blueprint with the four workstreams this
session opened, and hand-rolls them as a dependency-ordered bead tree so the
work proceeds systematically instead of ad-hoc.

Plan ledger (001-PP-PLAN):
- E6 corrected: the isolated coding agent (goose minimax3) is LIVE on prod
  (decision-log/039, PR block#301), not "not started".
- E10 Community channel layout & identity roster (buzz-ehv) — build DONE.
- E11 Buzz operational expertise: reference + skill + agents (buzz-yfe) — COMPLETE.
- E12 AI-Wire feed engine (buzz-w92) — posting primitive done, pipeline next.
- E13 Estate system notifications into sys-* (buzz-0ts) — Track B, not started.

Beads (hand-rolled, one epic at a time, deps wired):
- buzz-ehv (2 children), buzz-yfe (7, CLOSED), buzz-w92 (8), buzz-0ts (4).
- Cross-epic deps: the AI-Wire pipeline (w92.2) waits on the feed-curator agent
  (yfe.5); sys-notifications reuse the posting primitive (w92.1). bd ready now
  correctly surfaces w92.2 as the next unblocked build.

Shipped this session and closed with evidence: both source-cited references,
the buzz-ops skill (PASS /validate-skillmd), the 3 operator agents
(PASS /validate-agent), the posting primitive (AI Wire bot live).
@coderabbitai

coderabbitai Bot commented Jul 31, 2026

Copy link
Copy Markdown

Review Change Stack

📝 Walkthrough

Walkthrough

The PR updates Buzz operational records and the adoption ledger. It records production hardening, restore, deployment, validation, feed, agent, provider, notification, onboarding, and channel work. It updates E6 and adds E10–E13 milestone entries.

Changes

Buzz operations and adoption tracking

Layer / File(s) Summary
Production status and validation records
.beads/interactions.jsonl, .beads/issues.jsonl
Records document completed deployment, restore, edge-control, staging, pairing, CORS, go-live, and related verification work.
Feed and operational capability records
.beads/interactions.jsonl, .beads/issues.jsonl
Records cover AI Wire feed infrastructure, scheduling, digest generation, provider coverage, operational agents, references, and validation.
Agentic backlog and adoption milestones
.beads/issues.jsonl, 000-docs/001-PP-PLAN-buzz-adoption-master-blueprint.md
The inventory adds agentic estate tasks and deferred follow-ups. The ledger records the production buzz-acp deployment, completed E10–E12 milestones, and the pending E13 notification migration.

Estimated code review effort: 3 (Moderate) | ~20 minutes

Possibly related PRs

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately identifies the documented epics and bead tree added by the pull request.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/buzz-community-expertise-epics

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

…e tree

Adds two workstreams surfaced while reviewing our coverage:

- buzz-1zr — Establish and run the Buzz testing procedure: a staging drill
  harness (buzz-testing.intentsolutions.io, NEVER prod), hermetic tests wired
  into ci:drills, golden behavioral evals for the 3 operator agents, and the
  reference-vs-code citation gate. Chose staging-only drills over prod testing
  because prod carries real members/channels and the ops/buzz doctrine forbids
  destructive drills on prod.
- buzz-b6z — Wire Buzz observability: export relay OTel traces to SigNoz
  staging, ship logs off-box before rotation drops them, alert runtime relay
  errors/panics into sys-incidents, and verify the buzz-audit hash-chain.

Deps wired: agent evals depend on the built agents (buzz-yfe.4/.5/.6, closed);
error-alerting depends on the notifier (buzz-0ts.1).

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 4

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In @.beads/interactions.jsonl:
- Line 17: Keep the restore production-use gate open until the host-side
scratch-stack drill passes: update .beads/interactions.jsonl at line 17 so the
closure record remains open or separates implementation completion from
validation, and update .beads/issues.jsonl at line 27 so buzz-bsy remains open
or is replaced with a separate open release-gate issue.
- Around line 18-20: Remove the production IP 169.58.95.32 from the close-reason
records in .beads/interactions.jsonl lines 18-20, replacing it with a
private-lane reference to intent-os/ops/buzz/; also remove the IP from the epic
close reason in .beads/issues.jsonl line 14. Preserve the remaining deployment
and closure details.

In @.beads/issues.jsonl:
- Around line 11-14: Reconcile the retired apex-cutover state across
.beads/issues.jsonl lines 11-14 and
000-docs/001-PP-PLAN-buzz-adoption-master-blueprint.md line 79: remove obsolete
apex-cutover blockers and pre-cutover wording, retain any genuine owner
desktop-key gate as a separate current-state item, and describe
buzz-prod.intentsolutions.io as the permanent production URL with no remaining
apex-cutover gate.

In `@000-docs/001-PP-PLAN-buzz-adoption-master-blueprint.md`:
- Line 83: Update the E6 Agent bridge entry to replace the unresolved “GH #?”
placeholder with a valid, resolvable GitHub issue or PR reference; if no
suitable reference exists, remove the GitHub field while preserving the existing
PR `#301` evidence.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 7965c4a4-5375-45d5-8272-3ff7d73e7315

📥 Commits

Reviewing files that changed from the base of the PR and between 9b0ff3c and 95c222a.

📒 Files selected for processing (3)
  • .beads/interactions.jsonl
  • .beads/issues.jsonl
  • 000-docs/001-PP-PLAN-buzz-adoption-master-blueprint.md

Comment thread .beads/interactions.jsonl
Comment thread .beads/interactions.jsonl
Comment on lines +18 to +20
{"id":"int-be2173d658fc095081a9083e49d64528","kind":"field_change","created_at":"2026-07-30T07:17:44.135065314Z","actor":"jeremylongshore","issue_id":"buzz-nry.2","extra":{"field":"status","new_value":"closed","old_value":"open","reason":"DONE 2026-07-30. Production deployed from proven staging artifacts with FRESH secrets on the dedicated host intent-ops-buzz, serving buzz-prod.intentsolutions.io (169.58.95.32). The 'cut DNS over' (apex → buzz.) requirement is DROPPED by owner decision 2026-07-30: buzz-prod.intentsolutions.io is the PERMANENT production URL (no apex cutover). Prod DNS is therefore already on its permanent, correct name — nothing further to cut over."}}
{"id":"int-f42f74288896136765cfddee4c2de26e","kind":"field_change","created_at":"2026-07-30T07:17:46.752322494Z","actor":"jeremylongshore","issue_id":"buzz-nry.3","extra":{"field":"status","new_value":"closed","old_value":"open","reason":"DONE 2026-07-30. Full go-live gate suite PASSED against prod (buzz-prod.intentsolutions.io): smoke 200/NIP-11/functional PASS; unauth-matrix 6/6 REJECT; functional-probe (member NIP-42 auth+publish+readback, un-invited refused) with cleanup CONFIRMED (baseline count 3). Was dependency-blocked by buzz-nry.2 (apex cutover) — that dependency is resolved by the owner decision to keep buzz-prod permanent, so this now closes with its already-captured green evidence."}}
{"id":"int-67f8b7a8627b3a18e0b7b5d935a2d3c1","kind":"field_change","created_at":"2026-07-30T07:18:01.27822535Z","actor":"jeremylongshore","issue_id":"buzz-nry","extra":{"field":"status","new_value":"closed","old_value":"in_progress","reason":"EPIC DONE 2026-07-30. Dedicated Buzz production VPS (intent-ops-buzz, 169.58.95.32) stood up to estate conventions (.1), deployed with fresh secrets serving buzz-prod.intentsolutions.io (.2), and the full go-live gate suite passed against it (.3). Owner decision 2026-07-30: buzz-prod.intentsolutions.io is the PERMANENT production URL — the 'cut the prod domain over' (apex) part of this epic is intentionally NOT done and is retired, not deferred. All three children closed."}}

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔒 Security & Privacy | 🟠 Major | ⚡ Quick win

Remove the production IP from tracked records.

The changed records publish 169.58.95.32, although estate-private operational details belong in intent-os/ops/buzz/.

  • .beads/interactions.jsonl#L18-L20: replace the IP with a private-lane reference.
  • .beads/issues.jsonl#L14-L14: remove the IP from the epic close reason.
📍 Affects 2 files
  • .beads/interactions.jsonl#L18-L20 (this comment)
  • .beads/issues.jsonl#L14-L14
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.beads/interactions.jsonl around lines 18 - 20, Remove the production IP
169.58.95.32 from the close-reason records in .beads/interactions.jsonl lines
18-20, replacing it with a private-lane reference to intent-os/ops/buzz/; also
remove the IP from the epic close reason in .beads/issues.jsonl line 14.
Preserve the remaining deployment and closure details.

Comment thread .beads/issues.jsonl
| E4 — Headless administration | 2.5 | not started | — |
| E5 — Team onboarding (all-in) | 3 | not started | — |
| E6 — Agent bridge (`@claude`, isolated) | 4 | not started | — |
| E6 — Agent bridge (isolated coding agent `goose minimax3`) | 4 | **LIVE on prod** (2026-07-30, decision-log/039, PR #301): `buzz-acp`+goose/MiniMax-M3 running as a member on the prod host, owner-gated + PR-gated, egress-isolated. Open: wire the prod PR loop (repo + scoped token + branch protection — owner inputs) | GH #? · PR #301 |

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🗄️ Data Integrity & Integration | 🟡 Minor | ⚡ Quick win

Replace the unresolved evidence placeholder.

Line 83 uses GH #?. Use a real issue reference or remove the GitHub field. A production-live claim needs a resolvable evidence identifier.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@000-docs/001-PP-PLAN-buzz-adoption-master-blueprint.md` at line 83, Update
the E6 Agent bridge entry to replace the unresolved “GH #?” placeholder with a
valid, resolvable GitHub issue or PR reference; if no suitable reference exists,
remove the GitHub field while preserving the existing PR `#301` evidence.

…ion bead

What: adds epic buzz-20l (build the agentic Buzz estate-ops surface — repo-home channels, a
GitHub-event bridge, goose-triage + Claude/Codex-impl division of labor) with 10 dependency-ordered
children, plus a P2 bead to evaluate the relay upgrade off v0.2.0 (owner-gated; we're on Block's
stable :latest, newer code is unreleased :main).

Why: hand-rolled from the 14-agent research report (intent-os ops/buzz/RESEARCH-agentic-buzz-
utilization-2026-07-31.md), design-first per the Dolt-is-git-for-beads discipline — not scripted.

Verified: bd ready surfaces buzz-20l.1/.2/.3 as the unblocked start points; deps wired.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1


ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 24ee1cd3-4f12-438a-9bc6-d75af421dc36

📥 Commits

Reviewing files that changed from the base of the PR and between 95c222a and c7c5b17.

📒 Files selected for processing (2)
  • .beads/interactions.jsonl
  • .beads/issues.jsonl

Comment thread .beads/issues.jsonl
{"_type":"issue","id":"buzz-w92.7","title":"Curation and the daily ai-wire digest (the anti-firehose moat)","description":"The curator promotes the day's best cross-lab items into one ai-wire digest + one announcements headline; members @mention to go deeper. AC: a real daily digest posts to ai-wire.","status":"closed","priority":2,"issue_type":"feature","owner":"jeremylongshore@users.noreply.github.com","created_at":"2026-07-31T03:29:12Z","created_by":"jeremylongshore","updated_at":"2026-07-31T04:30:55Z","closed_at":"2026-07-31T04:30:55Z","close_reason":"Daily ai-wire digest live — --digest composes cross-lab roundup (70b→8b→NVIDIA), posts to 1-ai-wire, cron 06:30 CT","dependencies":[{"issue_id":"buzz-w92.7","depends_on_id":"buzz-w92.3","type":"blocks","created_at":"2026-07-30T21:29:16Z","created_by":"jeremylongshore","metadata":"{}"},{"issue_id":"buzz-w92.7","depends_on_id":"buzz-w92","type":"parent-child","created_at":"2026-07-30T21:29:11Z","created_by":"jeremylongshore","metadata":"{}"}],"dependency_count":1,"dependent_count":0,"comment_count":0}
{"_type":"issue","id":"buzz-w92.8","title":"Schedule the pipeline via cron and register it in automations.md","description":"Cron the ingestion + digest on the dev box (estate automation home), armed with notify-lib liveness markers, registered in mission-control/automations.md. AC: cron live + registry row + liveness sweep row.","status":"closed","priority":2,"issue_type":"task","owner":"jeremylongshore@users.noreply.github.com","created_at":"2026-07-31T03:29:12Z","created_by":"jeremylongshore","updated_at":"2026-07-31T04:18:42Z","closed_at":"2026-07-31T04:18:42Z","close_reason":"3h cron deployed (~/bin/buzz-wire-cron.sh) + notify-lib liveness + registered in automations.md","dependencies":[{"issue_id":"buzz-w92.8","depends_on_id":"buzz-w92.3","type":"blocks","created_at":"2026-07-30T21:29:16Z","created_by":"jeremylongshore","metadata":"{}"},{"issue_id":"buzz-w92.8","depends_on_id":"buzz-w92","type":"parent-child","created_at":"2026-07-30T21:29:12Z","created_by":"jeremylongshore","metadata":"{}"}],"dependency_count":1,"dependent_count":0,"comment_count":0}
{"_type":"issue","id":"buzz-w92.4","title":"Wire the existing Anthropic monitor fleet into the anthropic-* channels","description":"The dev-box ~/bin monitors (claude-code-changelog, claude-blog, anthropic-news/research/engineering, anthropic-status) already summarize NEW items to Slack; add a Buzz post path -\u003e anthropic-changelog / anthropic-blogs / anthropic-research / anthropic-outages. AC: a real Anthropic release lands in anthropic-changelog.","status":"closed","priority":2,"issue_type":"task","owner":"jeremylongshore@users.noreply.github.com","created_at":"2026-07-31T03:29:09Z","created_by":"jeremylongshore","updated_at":"2026-07-31T14:04:52Z","closed_at":"2026-07-31T14:04:52Z","close_reason":"Anthropic bridged via HTML-scrape source type (news/research/engineering -\u003e anthropic-blogs/research), mirroring the estate monitors; Mistral added. buzz-w92.6 partially done (tooling/mcp/newsletters/ships/status live).","dependencies":[{"issue_id":"buzz-w92.4","depends_on_id":"buzz-w92.1","type":"blocks","created_at":"2026-07-30T21:29:14Z","created_by":"jeremylongshore","metadata":"{}"},{"issue_id":"buzz-w92.4","depends_on_id":"buzz-w92","type":"parent-child","created_at":"2026-07-30T21:29:09Z","created_by":"jeremylongshore","metadata":"{}"}],"dependency_count":1,"dependent_count":0,"comment_count":0}
{"_type":"issue","id":"buzz-w92.3","title":"Ship the easy-tier provider feeds (clean RSS/status)","description":"Anthropic, OpenAI, Google/DeepMind, Groq, DeepSeek, MiniMax -\u003e their *-wire channels. AC: each posts real items on a schedule.","status":"closed","priority":2,"issue_type":"task","owner":"jeremylongshore@users.noreply.github.com","created_at":"2026-07-31T03:29:08Z","created_by":"jeremylongshore","updated_at":"2026-07-31T04:18:40Z","closed_at":"2026-07-31T04:18:40Z","close_reason":"easy-tier feeds live — OpenAI, HuggingFace, arXiv cs.AI, Google DeepMind; 4 seed cards posted with summaries","dependencies":[{"issue_id":"buzz-w92.3","depends_on_id":"buzz-w92.2","type":"blocks","created_at":"2026-07-30T21:29:13Z","created_by":"jeremylongshore","metadata":"{}"},{"issue_id":"buzz-w92.3","depends_on_id":"buzz-w92","type":"parent-child","created_at":"2026-07-30T21:29:08Z","created_by":"jeremylongshore","metadata":"{}"}],"dependency_count":1,"dependent_count":4,"comment_count":0}

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🗄️ Data Integrity & Integration | 🟠 Major | ⚡ Quick win

Keep incomplete feed work open or revise its accepted scope.

These tasks are marked closed although their recorded outcomes leave required sources or destinations absent. This makes the dependency inventory report incomplete feed coverage as delivered.

  • .beads/issues.jsonl#L37-L37: Reopen or narrow buzz-w92.3. DeepSeek and MiniMax remain absent under the task’s listed provider scope.
  • .beads/interactions.jsonl#L32-L32: Append a corrective status event after reconciling buzz-w92.3; do not alter the historical closure event.
  • .beads/issues.jsonl#L36-L36: Reopen or narrow buzz-w92.4. Its close reason records only anthropic-blogs and anthropic-research, not the required anthropic-changelog delivery.
  • .beads/interactions.jsonl#L35-L35: Append a corrective status event after reconciling buzz-w92.4.
  • .beads/issues.jsonl#L66-L66: Reopen or revise buzz-w92.5. Its acceptance criteria require RSSHub and each listed provider feed, while the close reason says RSSHub was not deployed and several feeds remain empty.
  • .beads/interactions.jsonl#L36-L36: Append a corrective status event after reconciling buzz-w92.5.
📍 Affects 2 files
  • .beads/issues.jsonl#L37-L37 (this comment)
  • .beads/interactions.jsonl#L32-L32
  • .beads/issues.jsonl#L36-L36
  • .beads/interactions.jsonl#L35-L35
  • .beads/issues.jsonl#L66-L66
  • .beads/interactions.jsonl#L36-L36

Comment thread .beads/interactions.jsonl
{"id":"int-ecdd102b39c09f97150839220f0b0d34","kind":"field_change","created_at":"2026-07-30T04:47:05.19034745Z","actor":"jeremylongshore","issue_id":"buzz-ocv.5","extra":{"field":"status","new_value":"closed","old_value":"in_progress","reason":"DONE 2026-07-30. Tauri desktop CORS origins (tauri://localhost + http://tauri.localhost) composed into version-controlled compose (intent-os PR #283), applied live to both hosts (PR #284), cors-config-test 2/2 in ci:drills. Final owner-gated gate met: Jeremy joined from the PACKAGED Linux desktop client to buzz-prod.intentsolutions.io (connected, admin, channels visible) — the packaged-client CORS verification the acceptance required."}}
{"id":"int-9d63f6e48fc6157929c47a230eede39a","kind":"field_change","created_at":"2026-07-30T05:45:53.661302817Z","actor":"jeremylongshore","issue_id":"buzz-ocv.2","extra":{"field":"status","new_value":"closed","old_value":"open","reason":"DONE 2026-07-30 (ultracode Track-A workflow). Compensating edge controls shipped + applied. CODE: ops/buzz/scripts/apply-edge-controls.sh (plan-only default, --apply to install) + hermetic test, merged intent-os PR #292 (4/4 estate-CI green, adversarially verified sound). APPLIED LIVE on the dedicated prod host intent-ops-buzz: fail2ban 'caddy-buzz' jail (bans public 4xx-flooders from /var/log/caddy/buzz-access.log) + nftables 'inet buzz_edge' connlimit (128 concurrent NEW/IP on tcp 80+443 only) + buzz-edge-nft.service enabled (reboot-safe). VERIFIED no self-lock: SSH intact, relay _readiness 200 off-box, tailnet/port-22 never touched (WS/established never dropped). SCOPING: applied to the Buzz-DEDICATED prod host only; deliberately NOT applied host-wide on the shared VPS staging (its connlimit would rate-limit co-tenant estate stacks Plane/ERP/CRM) — request_body caps + security headers already exist in Caddy on both. Closes the last non-owner-gated piece of go-live edge hardening."}}
{"id":"int-d1b3bcb9725ff332970aacd020a3a368","kind":"field_change","created_at":"2026-07-30T05:54:52.463260258Z","actor":"jeremylongshore","issue_id":"buzz-bsy","extra":{"field":"status","new_value":"closed","old_value":"open","reason":"DONE 2026-07-30 (ultracode Track-A workflow). Built ops/buzz/scripts/restore.sh — the real destructive three-store restore (Postgres pg_restore --clean --if-exists → media mc mirror --overwrite → git volume), gated behind --in-place with verify-before-destroy (sha256 every artifact + PGDMP header + manifest.env==--env cross-check; exit 2 writes nothing). Chose --in-place-required over auto-restore so decision-log/038's human-gate holds with ZERO updater.sh changes: the updater's flagless call exits 64 → rc5 page unchanged (updater-drill 6/6 still green). Hermetic restore-test.sh 6/6 with mutation-proven teeth; restore-drill-test 4/4 no regression; wired into ci:drills. Merged intent-os PR #293 (4/4 estate-CI green). Remaining real-tool proof = a host-side scratch-stack drill before first prod use (noted in runbook)."}}
{"id":"int-be2173d658fc095081a9083e49d64528","kind":"field_change","created_at":"2026-07-30T07:17:44.135065314Z","actor":"jeremylongshore","issue_id":"buzz-nry.2","extra":{"field":"status","new_value":"closed","old_value":"open","reason":"DONE 2026-07-30. Production deployed from proven staging artifacts with FRESH secrets on the dedicated host intent-ops-buzz, serving buzz-prod.intentsolutions.io (169.58.95.32). The 'cut DNS over' (apex → buzz.) requirement is DROPPED by owner decision 2026-07-30: buzz-prod.intentsolutions.io is the PERMANENT production URL (no apex cutover). Prod DNS is therefore already on its permanent, correct name — nothing further to cut over."}}

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

WARNING: Production IP address exposed in epic closure record

The buzz-nry epic close_reason contains the production IP 169.58.95.32. Per the PR description and project policy, estate-private operational details (hosts, IPs, keys, runbooks) must stay in the private intent-os/ops/buzz/ lane, not in the public fork's .beads/ records. This is a separate occurrence from the buzz-nry.2 task closure (line 16) which was already flagged.


Reply with @kilocode-bot fix it to have Kilo Code address this issue.

Comment thread .beads/interactions.jsonl
{"id":"int-85fdaa9e88769d07584be2fb1e04cf42","kind":"field_change","created_at":"2026-07-31T03:36:19.601340573Z","actor":"jeremylongshore","issue_id":"buzz-yfe.5","extra":{"field":"status","new_value":"closed","old_value":"open","reason":"buzz-feed-curator agent built + PASS /validate-agent"}}
{"id":"int-8850efaef9cdedb9badb537fc62935ba","kind":"field_change","created_at":"2026-07-31T03:36:21.08100149Z","actor":"jeremylongshore","issue_id":"buzz-yfe.6","extra":{"field":"status","new_value":"closed","old_value":"open","reason":"buzz-relay-admin agent built + PASS /validate-agent"}}
{"id":"int-4260303d729ddb42abd839cb31f38f27","kind":"field_change","created_at":"2026-07-31T03:36:22.349391594Z","actor":"jeremylongshore","issue_id":"buzz-yfe.7","extra":{"field":"status","new_value":"closed","old_value":"open","reason":"all 3 agents PASS /validate-agent; skill PASS /validate-skillmd; reference-vs-code consistency 106 citations 100% resolve to real fork source (no fabrications)"}}
{"id":"int-f0b734dccd26f403f2e9576181b68a3f","kind":"field_change","created_at":"2026-07-31T03:37:20.957039522Z","actor":"jeremylongshore","issue_id":"buzz-yfe","extra":{"field":"status","new_value":"closed","old_value":"open","reason":"All 7 children closed: 2 references + skill + 3 agents + validation; all PASS the IS validators"}}

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

WARNING: Internal implementation path exposed in closure record

The buzz-w92.2 close_reason exposes the internal path ops/buzz/wire/buzz-wire.py. Estate-private operational details should not be published in the public fork's interaction records.


Reply with @kilocode-bot fix it to have Kilo Code address this issue.

Comment thread .beads/interactions.jsonl
{"id":"int-4260303d729ddb42abd839cb31f38f27","kind":"field_change","created_at":"2026-07-31T03:36:22.349391594Z","actor":"jeremylongshore","issue_id":"buzz-yfe.7","extra":{"field":"status","new_value":"closed","old_value":"open","reason":"all 3 agents PASS /validate-agent; skill PASS /validate-skillmd; reference-vs-code consistency 106 citations 100% resolve to real fork source (no fabrications)"}}
{"id":"int-f0b734dccd26f403f2e9576181b68a3f","kind":"field_change","created_at":"2026-07-31T03:37:20.957039522Z","actor":"jeremylongshore","issue_id":"buzz-yfe","extra":{"field":"status","new_value":"closed","old_value":"open","reason":"All 7 children closed: 2 references + skill + 3 agents + validation; all PASS the IS validators"}}
{"id":"int-630ab91f0cf7e0e25edae67f26073244","kind":"field_change","created_at":"2026-07-31T04:06:15.368820216Z","actor":"jeremylongshore","issue_id":"buzz-w92.2","extra":{"field":"status","new_value":"in_progress","old_value":"open"}}
{"id":"int-cca6517e1c6ee0187914938b7edd0144","kind":"field_change","created_at":"2026-07-31T04:18:38.265063552Z","actor":"jeremylongshore","issue_id":"buzz-w92.2","extra":{"field":"status","new_value":"closed","old_value":"in_progress","reason":"pipeline built + hardened (fetch→dedupe(newest-25)→Groq/NVIDIA summary→card), rate-limit fallback chain, ops/buzz/wire/buzz-wire.py"}}

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

WARNING: Internal paths and automation registry exposed in closure record

The buzz-w92.8 close_reason exposes ~/bin/buzz-wire-cron.sh (host-specific path) and automations.md (internal registry). These operational details belong in the private intent-os/ops/buzz/ lane.


Reply with @kilocode-bot fix it to have Kilo Code address this issue.

Comment thread .beads/interactions.jsonl
{"id":"int-f0b734dccd26f403f2e9576181b68a3f","kind":"field_change","created_at":"2026-07-31T03:37:20.957039522Z","actor":"jeremylongshore","issue_id":"buzz-yfe","extra":{"field":"status","new_value":"closed","old_value":"open","reason":"All 7 children closed: 2 references + skill + 3 agents + validation; all PASS the IS validators"}}
{"id":"int-630ab91f0cf7e0e25edae67f26073244","kind":"field_change","created_at":"2026-07-31T04:06:15.368820216Z","actor":"jeremylongshore","issue_id":"buzz-w92.2","extra":{"field":"status","new_value":"in_progress","old_value":"open"}}
{"id":"int-cca6517e1c6ee0187914938b7edd0144","kind":"field_change","created_at":"2026-07-31T04:18:38.265063552Z","actor":"jeremylongshore","issue_id":"buzz-w92.2","extra":{"field":"status","new_value":"closed","old_value":"in_progress","reason":"pipeline built + hardened (fetch→dedupe(newest-25)→Groq/NVIDIA summary→card), rate-limit fallback chain, ops/buzz/wire/buzz-wire.py"}}
{"id":"int-78e02ffa7530bcd16898d0cbbffeec34","kind":"field_change","created_at":"2026-07-31T04:18:40.136787487Z","actor":"jeremylongshore","issue_id":"buzz-w92.3","extra":{"field":"status","new_value":"closed","old_value":"open","reason":"easy-tier feeds live — OpenAI, HuggingFace, arXiv cs.AI, Google DeepMind; 4 seed cards posted with summaries"}}

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

WARNING: Cron schedule exposed in closure record

The buzz-w92.7 close_reason exposes the production cron schedule cron 06:30 CT. Operational scheduling details should not be published in public records.


Reply with @kilocode-bot fix it to have Kilo Code address this issue.

Comment thread .beads/interactions.jsonl
{"id":"int-630ab91f0cf7e0e25edae67f26073244","kind":"field_change","created_at":"2026-07-31T04:06:15.368820216Z","actor":"jeremylongshore","issue_id":"buzz-w92.2","extra":{"field":"status","new_value":"in_progress","old_value":"open"}}
{"id":"int-cca6517e1c6ee0187914938b7edd0144","kind":"field_change","created_at":"2026-07-31T04:18:38.265063552Z","actor":"jeremylongshore","issue_id":"buzz-w92.2","extra":{"field":"status","new_value":"closed","old_value":"in_progress","reason":"pipeline built + hardened (fetch→dedupe(newest-25)→Groq/NVIDIA summary→card), rate-limit fallback chain, ops/buzz/wire/buzz-wire.py"}}
{"id":"int-78e02ffa7530bcd16898d0cbbffeec34","kind":"field_change","created_at":"2026-07-31T04:18:40.136787487Z","actor":"jeremylongshore","issue_id":"buzz-w92.3","extra":{"field":"status","new_value":"closed","old_value":"open","reason":"easy-tier feeds live — OpenAI, HuggingFace, arXiv cs.AI, Google DeepMind; 4 seed cards posted with summaries"}}
{"id":"int-ca89c97ced65361b3070b31df6bec542","kind":"field_change","created_at":"2026-07-31T04:18:41.731887559Z","actor":"jeremylongshore","issue_id":"buzz-w92.8","extra":{"field":"status","new_value":"closed","old_value":"open","reason":"3h cron deployed (~/bin/buzz-wire-cron.sh) + notify-lib liveness + registered in automations.md"}}

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

WARNING: Internal tooling path exposed in closure record

The buzz-w92.4 close_reason exposes tooling/mcp/newsletters/ships/status which references internal tooling structure. Estate-private implementation details should stay in the private lane.


Reply with @kilocode-bot fix it to have Kilo Code address this issue.

Comment thread .beads/interactions.jsonl
{"id":"int-cca6517e1c6ee0187914938b7edd0144","kind":"field_change","created_at":"2026-07-31T04:18:38.265063552Z","actor":"jeremylongshore","issue_id":"buzz-w92.2","extra":{"field":"status","new_value":"closed","old_value":"in_progress","reason":"pipeline built + hardened (fetch→dedupe(newest-25)→Groq/NVIDIA summary→card), rate-limit fallback chain, ops/buzz/wire/buzz-wire.py"}}
{"id":"int-78e02ffa7530bcd16898d0cbbffeec34","kind":"field_change","created_at":"2026-07-31T04:18:40.136787487Z","actor":"jeremylongshore","issue_id":"buzz-w92.3","extra":{"field":"status","new_value":"closed","old_value":"open","reason":"easy-tier feeds live — OpenAI, HuggingFace, arXiv cs.AI, Google DeepMind; 4 seed cards posted with summaries"}}
{"id":"int-ca89c97ced65361b3070b31df6bec542","kind":"field_change","created_at":"2026-07-31T04:18:41.731887559Z","actor":"jeremylongshore","issue_id":"buzz-w92.8","extra":{"field":"status","new_value":"closed","old_value":"open","reason":"3h cron deployed (~/bin/buzz-wire-cron.sh) + notify-lib liveness + registered in automations.md"}}
{"id":"int-e4c1bfdb34ec5b768b2fe150c50071fc","kind":"field_change","created_at":"2026-07-31T04:30:55.252637052Z","actor":"jeremylongshore","issue_id":"buzz-w92.7","extra":{"field":"status","new_value":"closed","old_value":"open","reason":"Daily ai-wire digest live — --digest composes cross-lab roundup (70b→8b→NVIDIA), posts to 1-ai-wire, cron 06:30 CT"}}

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

WARNING: Internal feed mirror reference exposed in closure record

The buzz-w92.5 close_reason exposes Olshansk RSS mirrors (from perception repo) which references internal feed infrastructure. This operational detail belongs in the private lane.


Reply with @kilocode-bot fix it to have Kilo Code address this issue.

Comment thread .beads/issues.jsonl
{"_type":"issue","id":"buzz-20l.6","title":"Add the Claude impl-agent identity as a second buzz-acp process that authors PRs from goose-filed issues only","description":"Second buzz-acp process: Claude (claude-agent-acp), PermissionMode acceptEdits, PR-scoped PAT, a /work cwd that clones REPOS/\u003crepo\u003e on demand; reads ONLY goose-authored issues (never the raw channel firehose — invariant 2). Handoff is a human @mention of the impl agent on goose's issue (invariant 1). Acceptance: human @mention on issue #N =\u003e impl agent opens a PR against that repo; CI gates the merge; the agent cannot merge. DEPENDS on the ACP-headless spike.","status":"open","priority":1,"issue_type":"task","owner":"jeremylongshore@users.noreply.github.com","created_at":"2026-07-31T19:58:11Z","created_by":"jeremylongshore","updated_at":"2026-07-31T19:58:11Z","labels":["agentic-ops","estate","github-bridge","impl-agent"],"dependencies":[{"issue_id":"buzz-20l.6","depends_on_id":"buzz-20l","type":"parent-child","created_at":"2026-07-31T13:58:10Z","created_by":"jeremylongshore","metadata":"{}"},{"issue_id":"buzz-20l.6","depends_on_id":"buzz-20l.1","type":"blocks","created_at":"2026-07-31T13:58:36Z","created_by":"jeremylongshore","metadata":"{}"},{"issue_id":"buzz-20l.6","depends_on_id":"buzz-20l.5","type":"blocks","created_at":"2026-07-31T13:58:37Z","created_by":"jeremylongshore","metadata":"{}"}],"dependency_count":2,"dependent_count":0,"comment_count":0}
{"_type":"issue","id":"buzz-20l.5","title":"Configure the goose-triage profile — owner-gated, issue-filing only, reading the repo-channel firehose","description":"goose (MiniMax) runs owner-only, PermissionMode plan/dontAsk, no-merge PAT, subscribed to the repo-home channels; reads the raw bridge feed and files ONE GitHub issue per finding via the finding-id upsert. It NEVER authors code and NEVER hands off via chat @mention. Acceptance: a posted CI-failure card results in exactly one filed issue; goose has no write path to code.","status":"open","priority":1,"issue_type":"task","owner":"jeremylongshore@users.noreply.github.com","created_at":"2026-07-31T19:58:09Z","created_by":"jeremylongshore","updated_at":"2026-07-31T19:58:09Z","labels":["agentic-ops","estate","github-bridge","triage-agent"],"dependencies":[{"issue_id":"buzz-20l.5","depends_on_id":"buzz-20l.3","type":"blocks","created_at":"2026-07-31T13:58:34Z","created_by":"jeremylongshore","metadata":"{}"},{"issue_id":"buzz-20l.5","depends_on_id":"buzz-20l.4","type":"blocks","created_at":"2026-07-31T13:58:34Z","created_by":"jeremylongshore","metadata":"{}"},{"issue_id":"buzz-20l.5","depends_on_id":"buzz-20l","type":"parent-child","created_at":"2026-07-31T13:58:09Z","created_by":"jeremylongshore","metadata":"{}"}],"dependency_count":2,"dependent_count":3,"comment_count":0}
{"_type":"issue","id":"buzz-20l.4","title":"Build the finding-id and level-triggered reconciler so every failure maps to exactly one auto-closing issue","description":"finding-id = hash(repo, workflow, normalized-failure) for idempotent issue upsert (create-only-if-absent); a periodic level-triggered reconciler computes currently-failing finding-ids and closes every finding-issue no longer in that set (do NOT rely on edge-triggered 'green run-\u003eclose' — Buzz drops replies #2459/#3587, agents go deaf in threads #2270). BUILD BEFORE the first repo channel goes live. Acceptance: three retries of one flaky failure =\u003e one issue; recovery =\u003e the issue auto-closes within one reconcile cycle.","status":"open","priority":1,"issue_type":"task","owner":"jeremylongshore@users.noreply.github.com","created_at":"2026-07-31T19:58:08Z","created_by":"jeremylongshore","updated_at":"2026-07-31T19:58:08Z","labels":["agentic-ops","estate","github-bridge","reliability"],"dependencies":[{"issue_id":"buzz-20l.4","depends_on_id":"buzz-20l.3","type":"blocks","created_at":"2026-07-31T13:58:33Z","created_by":"jeremylongshore","metadata":"{}"},{"issue_id":"buzz-20l.4","depends_on_id":"buzz-20l","type":"parent-child","created_at":"2026-07-31T13:58:08Z","created_by":"jeremylongshore","metadata":"{}"}],"dependency_count":1,"dependent_count":2,"comment_count":0}
{"_type":"issue","id":"buzz-20l.3","title":"Build buzz-gh-bridge: a webhook receiver plus a GitHub App on both orgs that posts repo events as cards into repo-home channels","description":"FastAPI receiver on intent-ops-buzz (~100 lines): verify X-Hub-Signature-256 HMAC, dedup on X-GitHub-Delivery, map owner/repo-\u003echannel_id, render event-\u003ecard, post via the EXISTING local docker-exec path in ops/buzz/wire/buzz-wire.py (no ssh hop). One GitHub App installed on jeremylongshore + intent-solutions-io subscribed to pull_request, pull_request_review, pull_request_review_comment, issues, issue_comment, workflow_run, push, release, deployment_status. Webhooks (real-time), not polling; CI status via the workflow_run event. Caddy route -\u003eloopback. Acceptance: a real PR/CI event posts a card into its repo channel; HMAC-invalid and duplicate deliveries are rejected.","status":"open","priority":1,"issue_type":"task","owner":"jeremylongshore@users.noreply.github.com","created_at":"2026-07-31T19:58:07Z","created_by":"jeremylongshore","updated_at":"2026-07-31T19:58:07Z","labels":["agentic-ops","estate","github-bridge"],"dependencies":[{"issue_id":"buzz-20l.3","depends_on_id":"buzz-20l","type":"parent-child","created_at":"2026-07-31T13:58:06Z","created_by":"jeremylongshore","metadata":"{}"}],"dependency_count":0,"dependent_count":3,"comment_count":0}

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

WARNING: Production hostname and internal path exposed in new issue

The new issue buzz-20l.3 description exposes the production hostname intent-ops-buzz and internal path ops/buzz/wire/buzz-wire.py. New issues in the public fork should not contain estate-private operational details.


Reply with @kilocode-bot fix it to have Kilo Code address this issue.

Comment thread .beads/issues.jsonl
{"_type":"issue","id":"buzz-20l.4","title":"Build the finding-id and level-triggered reconciler so every failure maps to exactly one auto-closing issue","description":"finding-id = hash(repo, workflow, normalized-failure) for idempotent issue upsert (create-only-if-absent); a periodic level-triggered reconciler computes currently-failing finding-ids and closes every finding-issue no longer in that set (do NOT rely on edge-triggered 'green run-\u003eclose' — Buzz drops replies #2459/#3587, agents go deaf in threads #2270). BUILD BEFORE the first repo channel goes live. Acceptance: three retries of one flaky failure =\u003e one issue; recovery =\u003e the issue auto-closes within one reconcile cycle.","status":"open","priority":1,"issue_type":"task","owner":"jeremylongshore@users.noreply.github.com","created_at":"2026-07-31T19:58:08Z","created_by":"jeremylongshore","updated_at":"2026-07-31T19:58:08Z","labels":["agentic-ops","estate","github-bridge","reliability"],"dependencies":[{"issue_id":"buzz-20l.4","depends_on_id":"buzz-20l.3","type":"blocks","created_at":"2026-07-31T13:58:33Z","created_by":"jeremylongshore","metadata":"{}"},{"issue_id":"buzz-20l.4","depends_on_id":"buzz-20l","type":"parent-child","created_at":"2026-07-31T13:58:08Z","created_by":"jeremylongshore","metadata":"{}"}],"dependency_count":1,"dependent_count":2,"comment_count":0}
{"_type":"issue","id":"buzz-20l.3","title":"Build buzz-gh-bridge: a webhook receiver plus a GitHub App on both orgs that posts repo events as cards into repo-home channels","description":"FastAPI receiver on intent-ops-buzz (~100 lines): verify X-Hub-Signature-256 HMAC, dedup on X-GitHub-Delivery, map owner/repo-\u003echannel_id, render event-\u003ecard, post via the EXISTING local docker-exec path in ops/buzz/wire/buzz-wire.py (no ssh hop). One GitHub App installed on jeremylongshore + intent-solutions-io subscribed to pull_request, pull_request_review, pull_request_review_comment, issues, issue_comment, workflow_run, push, release, deployment_status. Webhooks (real-time), not polling; CI status via the workflow_run event. Caddy route -\u003eloopback. Acceptance: a real PR/CI event posts a card into its repo channel; HMAC-invalid and duplicate deliveries are rejected.","status":"open","priority":1,"issue_type":"task","owner":"jeremylongshore@users.noreply.github.com","created_at":"2026-07-31T19:58:07Z","created_by":"jeremylongshore","updated_at":"2026-07-31T19:58:07Z","labels":["agentic-ops","estate","github-bridge"],"dependencies":[{"issue_id":"buzz-20l.3","depends_on_id":"buzz-20l","type":"parent-child","created_at":"2026-07-31T13:58:06Z","created_by":"jeremylongshore","metadata":"{}"}],"dependency_count":0,"dependent_count":3,"comment_count":0}
{"_type":"issue","id":"buzz-20l.2","title":"Record the agentic-Buzz architecture decisions in decision-log (division of labor, source-of-truth, the two invariants)","description":"Append a decision-log/040 (or new) entry: goose=issues / Claude|Codex=PRs; GitHub is source of truth and Buzz is a projection (NO NIP-34 issue/PR mirror); invariant 1 = the GitHub issue IS the handoff (no agent-to-agent chat @mention); invariant 2 = untrusted channel/webhook text never reaches the shell+creds process; 3-process topology (not per-repo). Acceptance: entry merged, cited by the build beads.","status":"open","priority":1,"issue_type":"task","owner":"jeremylongshore@users.noreply.github.com","created_at":"2026-07-31T19:58:05Z","created_by":"jeremylongshore","updated_at":"2026-07-31T19:58:05Z","labels":["agentic-ops","decision","estate","github-bridge"],"dependencies":[{"issue_id":"buzz-20l.2","depends_on_id":"buzz-20l","type":"parent-child","created_at":"2026-07-31T13:58:05Z","created_by":"jeremylongshore","metadata":"{}"}],"dependency_count":0,"dependent_count":0,"comment_count":0}
{"_type":"issue","id":"buzz-20l.1","title":"Confirm Claude Code and Codex ACP harnesses run headless with API keys on the Buzz VPS (the build gate for the impl lane)","description":"Report source-4 flags upstream leans toward subscription/ChatGPT-login auth; we need headless API-key auth. Verify claude-agent-acp and codex-acp start, authenticate via API key, and complete a trivial task headless in an isolated container on intent-ops-buzz. BLOCKS the impl-agent bead. Acceptance: a headless ACP session with each harness completes a no-op task using an API key only, evidenced.","status":"open","priority":1,"issue_type":"task","owner":"jeremylongshore@users.noreply.github.com","created_at":"2026-07-31T19:58:04Z","created_by":"jeremylongshore","updated_at":"2026-07-31T19:58:04Z","labels":["agentic-ops","estate","github-bridge","spike"],"dependencies":[{"issue_id":"buzz-20l.1","depends_on_id":"buzz-20l","type":"parent-child","created_at":"2026-07-31T13:58:03Z","created_by":"jeremylongshore","metadata":"{}"}],"dependency_count":0,"dependent_count":2,"comment_count":0}

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

WARNING: Production hostname exposed in new issue

The new issue buzz-20l.1 description exposes the production hostname intent-ops-buzz. Estate-private host details should not be in public issue records.


Reply with @kilocode-bot fix it to have Kilo Code address this issue.

Comment thread .beads/issues.jsonl
{"_type":"issue","id":"buzz-20l.1","title":"Confirm Claude Code and Codex ACP harnesses run headless with API keys on the Buzz VPS (the build gate for the impl lane)","description":"Report source-4 flags upstream leans toward subscription/ChatGPT-login auth; we need headless API-key auth. Verify claude-agent-acp and codex-acp start, authenticate via API key, and complete a trivial task headless in an isolated container on intent-ops-buzz. BLOCKS the impl-agent bead. Acceptance: a headless ACP session with each harness completes a no-op task using an API key only, evidenced.","status":"open","priority":1,"issue_type":"task","owner":"jeremylongshore@users.noreply.github.com","created_at":"2026-07-31T19:58:04Z","created_by":"jeremylongshore","updated_at":"2026-07-31T19:58:04Z","labels":["agentic-ops","estate","github-bridge","spike"],"dependencies":[{"issue_id":"buzz-20l.1","depends_on_id":"buzz-20l","type":"parent-child","created_at":"2026-07-31T13:58:03Z","created_by":"jeremylongshore","metadata":"{}"}],"dependency_count":0,"dependent_count":2,"comment_count":0}
{"_type":"issue","id":"buzz-20l","title":"Build the agentic Buzz estate-ops surface — repo-home channels, a GitHub event bridge, and a goose-triage + Claude-impl division of labor","description":"Evolve Buzz from a chat+feed surface into the estate's agentic operations surface, replacing the dead Greptile/Gemini/CodeRabbit 'what was found' review stream on our own stack. Research: ops/buzz/RESEARCH-agentic-buzz-utilization-2026-07-31.md (14-agent ultracode workflow, 2026-07-31).\n\nOwner decisions locked: goose files ISSUES only (owner-gated, plan/dontAsk, no-merge PAT); Claude/Codex authors PRs (native buzz-acp harnesses, config.rs:696 — nothing to build at harness level); every ACTIVE repo (both orgs, minus archived/dead) gets a repo-home channel + lazy-create on next push; GitHub is the source of truth, Buzz is a projection (NO NIP-34 mirror). Two load-bearing invariants: (1) the GitHub issue IS the triage-\u003eimpl handoff, never an agent-to-agent chat @mention; (2) untrusted channel/webhook text never reaches the process holding a shell + git creds.\n\nDependency-ordered children below. Build gate: confirm Claude/Codex ACP run headless with API keys on our VPS before the impl lane.","status":"open","priority":1,"issue_type":"epic","owner":"jeremylongshore@users.noreply.github.com","created_at":"2026-07-31T19:57:05Z","created_by":"jeremylongshore","updated_at":"2026-07-31T19:57:05Z","labels":["agentic-ops","estate","github-bridge"],"dependency_count":0,"dependent_count":0,"comment_count":0}
{"_type":"issue","id":"buzz-1zr.1","title":"Stand up the staging drill harness for channel/identity/feed/notify actions","description":"A script suite that exercises the real actions against buzz-testing.intentsolutions.io with throwaway keys/channels, asserting the load-bearing rules: only-owner-can-delete returns the right error; a non-member post gets 403 relay_membership_required; add-member --role owner is rejected; provider-first naming; verify via channels list. Torn down after each run. AC: harness runs green on staging, prod untouched.","status":"open","priority":1,"issue_type":"feature","owner":"jeremylongshore@users.noreply.github.com","created_at":"2026-07-31T03:39:32Z","created_by":"jeremylongshore","updated_at":"2026-07-31T03:39:32Z","dependencies":[{"issue_id":"buzz-1zr.1","depends_on_id":"buzz-1zr","type":"parent-child","created_at":"2026-07-30T21:39:32Z","created_by":"jeremylongshore","metadata":"{}"}],"dependency_count":0,"dependent_count":0,"comment_count":0}
{"_type":"issue","id":"buzz-1zr","title":"Establish and run the Buzz testing procedure — staging drills, hermetic tests, agent evals","description":"A repeatable way to test the actions we build against Buzz, following the estate pattern (hermetic test in ci:drills + live drill) + the IS testing SOP (/audit-tests, /implement-tests, audit-harness). HARD SAFETY RULE: every destructive/live drill runs on the STAGING relay buzz-testing.intentsolutions.io (drills-only, never real members/channels) — NEVER prod (per ops/buzz/README.md). Covers the new surfaces: channel/identity ops, feed posting, sys-notification routing, and operator-agent behavior.","status":"open","priority":1,"issue_type":"epic","owner":"jeremylongshore@users.noreply.github.com","created_at":"2026-07-31T03:39:31Z","created_by":"jeremylongshore","updated_at":"2026-07-31T03:39:31Z","dependency_count":0,"dependent_count":0,"comment_count":0}

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

WARNING: Staging relay URL exposed in new issue

The new issue buzz-1zr description exposes the staging relay URL buzz-testing.intentsolutions.io. Infrastructure endpoints should not be published in public issue records.


Reply with @kilocode-bot fix it to have Kilo Code address this issue.

Comment thread .beads/issues.jsonl
{"_type":"issue","id":"buzz-0ts.1","title":"Build buzz-notify.sh (topic -\u003e channel-uuid) + a notifier bot key","description":"A notifier bot (own key, separate from the AI Wire + goose keys) + buzz-notify.sh wrapping buzz messages send (kind:9), mapping a topic to a sys-* channel uuid. AC: a test alert posts to sys-incidents.","status":"open","priority":2,"issue_type":"feature","owner":"jeremylongshore@users.noreply.github.com","created_at":"2026-07-31T03:29:18Z","created_by":"jeremylongshore","updated_at":"2026-07-31T03:29:18Z","dependencies":[{"issue_id":"buzz-0ts.1","depends_on_id":"buzz-0ts","type":"parent-child","created_at":"2026-07-30T21:29:18Z","created_by":"jeremylongshore","metadata":"{}"},{"issue_id":"buzz-0ts.1","depends_on_id":"buzz-w92.1","type":"blocks","created_at":"2026-07-30T21:29:21Z","created_by":"jeremylongshore","metadata":"{}"}],"dependency_count":1,"dependent_count":2,"comment_count":0}
{"_type":"issue","id":"buzz-0ts","title":"Route estate system notifications into the private sys-* channels","description":"Track B internal consolidation: the estate's ops alerts post into the private sys-* channels (incidents/health/backups/deploys/automation), retiring Slack/notify/Moshi. Keep the off-estate survivability floor (healthchecks.io + af_email_floor) and Ezekiel's blog emails. Inherits dedup/rate-limit/spool/floor from the governed af_dispatch chain.","status":"open","priority":2,"issue_type":"epic","owner":"jeremylongshore@users.noreply.github.com","created_at":"2026-07-31T03:29:17Z","created_by":"jeremylongshore","updated_at":"2026-07-31T03:29:17Z","dependency_count":0,"dependent_count":0,"comment_count":0}
{"_type":"issue","id":"buzz-w92.7","title":"Curation and the daily ai-wire digest (the anti-firehose moat)","description":"The curator promotes the day's best cross-lab items into one ai-wire digest + one announcements headline; members @mention to go deeper. AC: a real daily digest posts to ai-wire.","status":"closed","priority":2,"issue_type":"feature","owner":"jeremylongshore@users.noreply.github.com","created_at":"2026-07-31T03:29:12Z","created_by":"jeremylongshore","updated_at":"2026-07-31T04:30:55Z","closed_at":"2026-07-31T04:30:55Z","close_reason":"Daily ai-wire digest live — --digest composes cross-lab roundup (70b→8b→NVIDIA), posts to 1-ai-wire, cron 06:30 CT","dependencies":[{"issue_id":"buzz-w92.7","depends_on_id":"buzz-w92.3","type":"blocks","created_at":"2026-07-30T21:29:16Z","created_by":"jeremylongshore","metadata":"{}"},{"issue_id":"buzz-w92.7","depends_on_id":"buzz-w92","type":"parent-child","created_at":"2026-07-30T21:29:11Z","created_by":"jeremylongshore","metadata":"{}"}],"dependency_count":1,"dependent_count":0,"comment_count":0}
{"_type":"issue","id":"buzz-w92.8","title":"Schedule the pipeline via cron and register it in automations.md","description":"Cron the ingestion + digest on the dev box (estate automation home), armed with notify-lib liveness markers, registered in mission-control/automations.md. AC: cron live + registry row + liveness sweep row.","status":"closed","priority":2,"issue_type":"task","owner":"jeremylongshore@users.noreply.github.com","created_at":"2026-07-31T03:29:12Z","created_by":"jeremylongshore","updated_at":"2026-07-31T04:18:42Z","closed_at":"2026-07-31T04:18:42Z","close_reason":"3h cron deployed (~/bin/buzz-wire-cron.sh) + notify-lib liveness + registered in automations.md","dependencies":[{"issue_id":"buzz-w92.8","depends_on_id":"buzz-w92.3","type":"blocks","created_at":"2026-07-30T21:29:16Z","created_by":"jeremylongshore","metadata":"{}"},{"issue_id":"buzz-w92.8","depends_on_id":"buzz-w92","type":"parent-child","created_at":"2026-07-30T21:29:12Z","created_by":"jeremylongshore","metadata":"{}"}],"dependency_count":1,"dependent_count":0,"comment_count":0}

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

WARNING: Monitoring infrastructure exposed in new issue

The new issue buzz-b6z.1 description exposes the monitoring infrastructure SigNoz C8 gateway. Internal monitoring stack details should stay in the private lane.


Reply with @kilocode-bot fix it to have Kilo Code address this issue.

Comment thread .beads/issues.jsonl
{"_type":"issue","id":"buzz-yfe.7","title":"Validate the skill and all operator agents against the IS spec","description":"Run /validate-skillmd + /validate-agent on the skill and 3 agents; fix findings. AC: all green.","status":"closed","priority":2,"issue_type":"task","owner":"jeremylongshore@users.noreply.github.com","created_at":"2026-07-31T03:27:17Z","created_by":"jeremylongshore","updated_at":"2026-07-31T03:36:22Z","closed_at":"2026-07-31T03:36:22Z","close_reason":"all 3 agents PASS /validate-agent; skill PASS /validate-skillmd; reference-vs-code consistency 106 citations 100% resolve to real fork source (no fabrications)","dependencies":[{"issue_id":"buzz-yfe.7","depends_on_id":"buzz-yfe.6","type":"blocks","created_at":"2026-07-30T21:29:05Z","created_by":"jeremylongshore","metadata":"{}"},{"issue_id":"buzz-yfe.7","depends_on_id":"buzz-yfe.4","type":"blocks","created_at":"2026-07-30T21:29:03Z","created_by":"jeremylongshore","metadata":"{}"},{"issue_id":"buzz-yfe.7","depends_on_id":"buzz-yfe","type":"parent-child","created_at":"2026-07-30T21:27:17Z","created_by":"jeremylongshore","metadata":"{}"},{"issue_id":"buzz-yfe.7","depends_on_id":"buzz-yfe.5","type":"blocks","created_at":"2026-07-30T21:29:04Z","created_by":"jeremylongshore","metadata":"{}"}],"dependency_count":3,"dependent_count":0,"comment_count":0}
{"_type":"issue","id":"buzz-yfe.5","title":"Build the buzz-feed-curator agent (AI-Wire posting)","description":"A /agent-creator agent that fetches feeds, summarizes, and posts rich cards to *-wire channels as the AI Wire bot. AC: passes /validate-agent; encodes the posting primitive, provider-first routing, membership requirement.","status":"closed","priority":2,"issue_type":"feature","owner":"jeremylongshore@users.noreply.github.com","created_at":"2026-07-31T03:27:16Z","created_by":"jeremylongshore","updated_at":"2026-07-31T03:36:19Z","closed_at":"2026-07-31T03:36:19Z","close_reason":"buzz-feed-curator agent built + PASS /validate-agent","dependencies":[{"issue_id":"buzz-yfe.5","depends_on_id":"buzz-yfe.3","type":"blocks","created_at":"2026-07-30T21:29:02Z","created_by":"jeremylongshore","metadata":"{}"},{"issue_id":"buzz-yfe.5","depends_on_id":"buzz-yfe","type":"parent-child","created_at":"2026-07-30T21:27:15Z","created_by":"jeremylongshore","metadata":"{}"}],"dependency_count":1,"dependent_count":3,"comment_count":0}
{"_type":"issue","id":"buzz-yfe.4","title":"Build the buzz-ops operator agent (channel + identity management)","description":"A /agent-creator agent that manages channels + identities on the live relay per the runbook. AC: passes /validate-agent (8-field spec); encodes owner-key ownership, sanctioned CLI, secret-via-docker-exec-e, verify-via-channels-list.","status":"closed","priority":2,"issue_type":"feature","owner":"jeremylongshore@users.noreply.github.com","created_at":"2026-07-31T03:27:15Z","created_by":"jeremylongshore","updated_at":"2026-07-31T03:36:18Z","closed_at":"2026-07-31T03:36:18Z","close_reason":"buzz-ops agent built + PASS /validate-agent (14-field standalone spec)","dependencies":[{"issue_id":"buzz-yfe.4","depends_on_id":"buzz-yfe.3","type":"blocks","created_at":"2026-07-30T21:29:00Z","created_by":"jeremylongshore","metadata":"{}"},{"issue_id":"buzz-yfe.4","depends_on_id":"buzz-yfe","type":"parent-child","created_at":"2026-07-30T21:27:14Z","created_by":"jeremylongshore","metadata":"{}"}],"dependency_count":1,"dependent_count":2,"comment_count":0}
{"_type":"issue","id":"buzz-ehv.2","title":"Define and document the member join/onboarding model","description":"For the shared community: members JOIN the canonical open channels (they never template-create their own — templates make NEW channels and cause the duplicate-Welcome mess; see RUNBOOK-channels.md 1.6). AC: document which channels auto-join at onboarding vs opt-in, how a member joins an open *-wire pack, and the seed-content-before-invite step. Feeds the all-in onboarding epic (E5).","status":"open","priority":2,"issue_type":"task","owner":"jeremylongshore@users.noreply.github.com","created_at":"2026-07-31T03:27:11Z","created_by":"jeremylongshore","updated_at":"2026-07-31T03:27:11Z","dependencies":[{"issue_id":"buzz-ehv.2","depends_on_id":"buzz-ehv","type":"parent-child","created_at":"2026-07-30T21:27:10Z","created_by":"jeremylongshore","metadata":"{}"}],"dependency_count":0,"dependent_count":0,"comment_count":0}

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

WARNING: Implementation detail exposed in new issue

The new issue buzz-0ts.1 description exposes the implementation detail buzz messages send (kind:9). Internal protocol specifics should not be in public issue records.


Reply with @kilocode-bot fix it to have Kilo Code address this issue.

Comment thread .beads/issues.jsonl
{"_type":"issue","id":"buzz-1zr.3","title":"Golden behavioral evals for the 3 operator agents","description":"Golden-transcript evals (the opskit-golden pattern) for buzz-ops / buzz-feed-curator / buzz-relay-admin: assert each DOES the right sanctioned action and REFUSES illegal ones (DB surgery, deleting a non-owned channel, posting a secret, prod destructive drill). AC: eval suite green; a regression is caught.","status":"open","priority":2,"issue_type":"feature","owner":"jeremylongshore@users.noreply.github.com","created_at":"2026-07-31T03:39:34Z","created_by":"jeremylongshore","updated_at":"2026-07-31T03:39:34Z","dependencies":[{"issue_id":"buzz-1zr.3","depends_on_id":"buzz-1zr","type":"parent-child","created_at":"2026-07-30T21:39:34Z","created_by":"jeremylongshore","metadata":"{}"},{"issue_id":"buzz-1zr.3","depends_on_id":"buzz-yfe.6","type":"blocks","created_at":"2026-07-30T21:39:36Z","created_by":"jeremylongshore","metadata":"{}"},{"issue_id":"buzz-1zr.3","depends_on_id":"buzz-yfe.5","type":"blocks","created_at":"2026-07-30T21:39:36Z","created_by":"jeremylongshore","metadata":"{}"},{"issue_id":"buzz-1zr.3","depends_on_id":"buzz-yfe.4","type":"blocks","created_at":"2026-07-30T21:39:35Z","created_by":"jeremylongshore","metadata":"{}"}],"dependency_count":3,"dependent_count":0,"comment_count":0}
{"_type":"issue","id":"buzz-1zr.2","title":"Hermetic tests for the new actions, wired into pnpm ci:drills","description":"Dry-run/mocked hermetic tests (no live relay) for channel-ops command construction, feed-card rendering (imeta), and notify topic-\u003echannel routing — same shape as the existing ops/buzz/tests/*.sh. AC: tests pass in ci:drills; a planted fault is caught.","status":"open","priority":2,"issue_type":"feature","owner":"jeremylongshore@users.noreply.github.com","created_at":"2026-07-31T03:39:33Z","created_by":"jeremylongshore","updated_at":"2026-07-31T03:39:33Z","dependencies":[{"issue_id":"buzz-1zr.2","depends_on_id":"buzz-1zr","type":"parent-child","created_at":"2026-07-30T21:39:33Z","created_by":"jeremylongshore","metadata":"{}"}],"dependency_count":0,"dependent_count":0,"comment_count":0}
{"_type":"issue","id":"buzz-0ts.2","title":"Add af_buzz_transport to the af_dispatch chain (honest 2xx)","description":"A transport like vps-slack-transport.sh that posts to Buzz with honest 2xx classification, so Buzz alerts inherit dedup/rate-limit/spool/floor. AC: a governed alert routes through af_dispatch to a sys-* channel with a real receipt.","status":"open","priority":2,"issue_type":"feature","owner":"jeremylongshore@users.noreply.github.com","created_at":"2026-07-31T03:29:19Z","created_by":"jeremylongshore","updated_at":"2026-07-31T03:29:19Z","dependencies":[{"issue_id":"buzz-0ts.2","depends_on_id":"buzz-0ts.1","type":"blocks","created_at":"2026-07-30T21:29:21Z","created_by":"jeremylongshore","metadata":"{}"},{"issue_id":"buzz-0ts.2","depends_on_id":"buzz-0ts","type":"parent-child","created_at":"2026-07-30T21:29:18Z","created_by":"jeremylongshore","metadata":"{}"}],"dependency_count":1,"dependent_count":1,"comment_count":0}
{"_type":"issue","id":"buzz-0ts.1","title":"Build buzz-notify.sh (topic -\u003e channel-uuid) + a notifier bot key","description":"A notifier bot (own key, separate from the AI Wire + goose keys) + buzz-notify.sh wrapping buzz messages send (kind:9), mapping a topic to a sys-* channel uuid. AC: a test alert posts to sys-incidents.","status":"open","priority":2,"issue_type":"feature","owner":"jeremylongshore@users.noreply.github.com","created_at":"2026-07-31T03:29:18Z","created_by":"jeremylongshore","updated_at":"2026-07-31T03:29:18Z","dependencies":[{"issue_id":"buzz-0ts.1","depends_on_id":"buzz-0ts","type":"parent-child","created_at":"2026-07-30T21:29:18Z","created_by":"jeremylongshore","metadata":"{}"},{"issue_id":"buzz-0ts.1","depends_on_id":"buzz-w92.1","type":"blocks","created_at":"2026-07-30T21:29:21Z","created_by":"jeremylongshore","metadata":"{}"}],"dependency_count":1,"dependent_count":2,"comment_count":0}

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

WARNING: Internal script path and staging reference exposed in new issue

The new issue buzz-s8q description exposes ops/buzz/scripts/updater.sh and references buzz-testing. Estate-private operational paths and staging infrastructure should not be in public issues.


Reply with @kilocode-bot fix it to have Kilo Code address this issue.

@@ -80,11 +80,15 @@ three-way (bead ↔ GitHub issue ↔ Plane project `BUZZ`).
| E3 — Hardening + go-live gates (run against PROD) | 2 | in flight — membership probe + unauth HTTP matrix + resource caps + backup/restore PROVEN against prod; remaining BLOCKING: off-site backup leg, updater planted-fault drill (on staging), monitoring alerts exercised, full smoke suite, CORS client verify, pairing verify-or-documented, key runbooks rehearsed | — |

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

WARNING: Outdated "pre-cutover" wording in E2d completion ledger

The E2d row states "pre-cutover" and "Apex buzz. cutover + owner desktop-key swap remain (owner-gated)". However, the owner decision 2026-07-30 made buzz-prod.intentsolutions.io the PERMANENT production URL with no apex cutover planned. This wording is obsolete and should be updated to reflect the permanent production state.


Reply with @kilocode-bot fix it to have Kilo Code address this issue.

@kilo-code-bot

kilo-code-bot Bot commented Aug 1, 2026

Copy link
Copy Markdown

Code Review Summary

Status: 13 Issues Found | Recommendation: Address before merge

Overview

Severity Count
CRITICAL 0
WARNING 13
SUGGESTION 0
Issue Details (click to expand)

WARNING

File Line Issue
.beads/interactions.jsonl 18 Production IP address exposed in epic closure record
.beads/interactions.jsonl 29 Internal implementation path exposed in closure record
.beads/interactions.jsonl 31 Internal paths and automation registry exposed in closure record
.beads/interactions.jsonl 32 Cron schedule exposed in closure record
.beads/interactions.jsonl 33 Internal tooling path exposed in closure record
.beads/interactions.jsonl 34 Internal feed mirror reference exposed in closure record
.beads/issues.jsonl 4 Production hostname and internal path exposed in new issue
.beads/issues.jsonl 6 Production hostname exposed in new issue
.beads/issues.jsonl 9 Staging relay URL exposed in new issue
.beads/issues.jsonl 35 Monitoring infrastructure exposed in new issue
.beads/issues.jsonl 42 Implementation detail exposed in new issue
.beads/issues.jsonl 32 Internal script path and staging reference exposed in new issue
000-docs/001-PP-PLAN-buzz-adoption-master-blueprint.md 80 Outdated "pre-cutover" wording in E2d completion ledger
Files Reviewed (3 files)
  • .beads/interactions.jsonl - 6 issues
  • .beads/issues.jsonl - 6 issues
  • 000-docs/001-PP-PLAN-buzz-adoption-master-blueprint.md - 1 issue

Fix these issues in Kilo Cloud


Reviewed by nemotron-3-ultra-550b-a55b:free · Input: 478.1K · Output: 37.9K · Cached: 4.1M

@jeremylongshore

Copy link
Copy Markdown
Author

Superseded by #19: its three commits (community-layout/expertise/AI-Wire epics + bead tree + agentic-Buzz epic) were replayed onto the upstream sync and are on main via merge 0d0ad49. Nothing in this branch is lost.

  • Jeremy Longshore
    intentsolutions.io

@jeremylongshore
jeremylongshore deleted the feat/buzz-community-expertise-epics branch August 4, 2026 06:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant