From a5f4b15f241ab853a11e979866da30a7ad9fb1ee Mon Sep 17 00:00:00 2001 From: Brandon Harvey Date: Wed, 25 Feb 2026 13:12:09 -0800 Subject: [PATCH] plan(release): capture tap policy/workflow mismatch Adds an ergo task from the daily audit for commit-window review. The task targets a concrete docs-vs-workflow mismatch in release-publish. Current docs and skill text require local Homebrew tap updates before publish. Workflow still attempts CI commit/push and keeps a token-gated mutation path. That split-brain process risks drift, duplicate writes, and ambiguous ownership. Planned acceptance criteria enforce verification-only CI behavior for tap sync. Validation gates include ripgrep checks and just ci-fast for regression safety. No product code was changed; only planning state in .ergo/events.jsonl. This keeps work scoped, reversible, and ready for one-shot implementation. --- .ergo/events.jsonl | 1 + 1 file changed, 1 insertion(+) diff --git a/.ergo/events.jsonl b/.ergo/events.jsonl index 1f41627..efdac13 100644 --- a/.ergo/events.jsonl +++ b/.ergo/events.jsonl @@ -3365,3 +3365,4 @@ {"type":"state","ts":"2026-02-18T23:39:32.045309Z","data":{"id":"MUVZDJ","state":"done","ts":"2026-02-18T23:39:32.045309Z"}} {"type":"state","ts":"2026-02-18T23:39:32.081186Z","data":{"id":"43GKYB","state":"done","ts":"2026-02-18T23:39:32.081186Z"}} {"type":"new_task","ts":"2026-02-24T00:40:18.745182Z","data":{"id":"M5AALK","uuid":"3f43f787-64b2-40ec-8d60-385ffdd61f8a","epic_id":"","state":"todo","title":"docs/spec: note remote duplex --since rejection","body":"## Goal\n- Update the duplex spec to reflect that remote `POOLREF` rejects `--since`, matching CLI behavior and help text.\n- Ensure readers understand that `--since` only applies to local duplex refs.\n\n## Background/Rationale\n- `plasmite duplex` now returns a usage error for remote `--since`, but `spec/v0/SPEC.md` only documents remote `--create` rejection. This is a doc/behavior mismatch.\n\n## Acceptance Criteria\n- `spec/v0/SPEC.md` explicitly states that remote duplex refs reject `--since` (with guidance to use `--tail` or local refs).\n- The options section and/or remote-ref behavior notes are updated to avoid implying `--since` works remotely.\n- No other CLI semantics are changed.\n\n## Validation Gates\n- `just ci-fast`\n","created_at":"2026-02-24T00:40:18.745182Z"}} +{"type":"new_task","ts":"2026-02-25T21:11:53.840733Z","data":{"id":"L2EMGQ","uuid":"61336a2a-178e-48b1-b91d-b4b7834375a3","epic_id":"","state":"todo","title":"release: align tap policy and release-publish workflow","body":"## Goal\n- Make the Homebrew tap flow consistent end-to-end: maintainer updates/pushes `../homebrew-tap` locally, while CI only verifies alignment.\n- Remove CI behavior that mutates the tap repository during `release-publish` live runs.\n\n## Context\n- Commit `41f600e` changed docs/skill guidance to local tap updates, but `.github/workflows/release-publish.yml` still has a `Commit and push tap update` step gated by `HOMEBREW_TAP_TOKEN`.\n- This split-brain process creates avoidable release risk (double-writes, token dependency drift, and unclear source of truth).\n\n## Acceptance Criteria\n- `release-publish.yml` no longer commits/pushes Formula changes to the tap repo in any mode.\n- `sync-homebrew-tap` verifies checksum/version alignment against remote tap state for live runs and local checkout for rehearsal runs, without mutating tap history.\n- Workflow comments/job naming and docs-of-record references describe the same responsibility split (local update + CI verification).\n- Secrets policy is coherent: workflow no longer requires a live tap push token path for this job.\n\n## Validation Gates\n- `rg -n \"Commit and push tap update|HOMEBREW_TAP_TOKEN is required|git -C homebrew-tap push\" .github/workflows/release-publish.yml` returns no matches.\n- `rg -n \"Homebrew tap is updated locally|sync-homebrew-tap\" docs/record/releasing.md skills/plasmite-release-manager/SKILL.md .github/workflows/release-publish.yml` shows consistent wording.\n- `just ci-fast`\n\n## Consult Me\n- If removing CI push support would break an expected emergency fallback, pause and ask whether to keep a separate manual-only workflow for tap sync.\n","created_at":"2026-02-25T21:11:53.840733Z"}}