Skip to content

Task board → orphan branch `taskboard` (complete isolation from web-app deploys)

2026-06-25 — removed the dead scripts/build-docs-site.py copy from main (footgun)

Flagged by the T-111 agent (relayed by the owner): main carried a copy of scripts/build-docs-site.py that is NEVER run. The board builds ONLY from the orphan taskboard branch (its own docs-deploy.yml + its own copy of the script); docs-deploy.yml is deliberately absent from main. So the main copy was dead — and it had already drifted (the live taskboard copy was ~77 lines ahead), so a future edit to main's copy would silently do nothing.

Fixed: git rm scripts/build-docs-site.py on main. It's under scripts/**, which nas-image.yml paths-ignores, so the removal triggers no web-app build. Verified dead first: zero references from any live main workflow / sync-taskboard.sh / package.json; the taskboard branch keeps its own (live) copy, so the published board is unaffected.

Deferred (same class, not yet removed): mkdocs.yml + requirements-docs.txt on main are ALSO dead board-build files (used only on taskboard). They are NOT paths-ignored, so removing them would fire a wasted ~25-min NAS build + redeploy — so I left them and will bundle their removal into the next commit that already triggers a build (zero extra cost). Until then they're harmless dead weight, never executed on main.

✅ Attestation: read AGENTS.md + checked the board by scope — this is the T-103 orphan-branch infra I own, recorded here rather than opening a dup. Source: EOP Local Assistance (fork) · session edb0abc7-6373-449b-8e31-379fd38d391b. Thanks to the T-111 agent for the catch.

Why (owner, 2026-06-23)

Before this task, the task-board site at tasks.theestablishers.com built from the nightly branch — the same branch the web app sometimes used. With nightly being paused (signal flipped to 🔴 earlier this session — see the AGENTS.md update in PR #794), the board would have gone stale, and more broadly the board's publish source was always coupled to a web-app branch. Owner asked for the board to move to its own branch, completely isolated from web-app branches.

Owner chose Option C — orphan branch (verbatim, 2026-06-23):

"I'm leaning towards option C as I could always have this written as an instruction on agents.MD"

And, in the same thread:

"do taskboard instead of task-board and go" "and keep nightly please" (= don't delete nightly; just stop using it for the board)

What changed

  1. Created orphan branch taskboard (no shared history with main / nightly / claude/**). Contains only:
  2. docs/eop-tasks/ (the tasks + tickets the board renders)
  3. mkdocs.yml, requirements-docs.txt, scripts/build-docs-site.py (build)
  4. .github/workflows/docs-deploy.yml (deploy — scoped to taskboard only)
  5. README.md explaining the branch Initial commit: orphan-branch creation.
  6. Removed .github/workflows/docs-deploy.yml from this branch (will leave main on PR #794 merge) so web-app branches can no longer trigger a board build.
  7. Added scripts/sync-taskboard.sh — a helper that mirrors docs/eop-tasks/ from the current work branch to the orphan branch via a sibling worktree (rsync --delete, auto commit message, --dry-run). Recipe so agents don't have to think about how to push to an orphan branch.
  8. AGENTS.md updates:
  9. New section "📋 Task board — orphan branch taskboard" right after the branch-policy signal, explaining the isolation + the helper + the one-time Cloudflare manual step.
  10. Working-agreements bullet updated: the stale "pushing to nightly rebuilds the Cloudflare board" line now points at scripts/sync-taskboard.sh.

Manual step (owner, completed 2026-06-23)

In the Cloudflare Pages dashboard for the eop-task-surface project, the production branch was changed from nightlytaskboard. Pushes to taskboard now deploy to tasks.theestablishers.com directly.

nightly itself is kept (per owner directive 2026-06-23) — just no longer used as the board publish source.

Verification

  • Orphan branch taskboard created + pushed to origin.
  • scripts/sync-taskboard.sh written, executable, and validated end-to-end (mirrors docs/eop-tasks/ from a work branch into a sibling worktree of taskboard, commits with auto-message, pushes).
  • Deploy: run #164 (SHA 9fe6371c) green in ~48s; live site publishing from taskboard. Earlier runs #161 / #163 failed on missing overrides/main.html + docs/Task Log.md; both added in 9fe6371c.
  • AGENTS.md changes consistent with the rest of the file (branch-policy signal section unchanged; new "Task board — orphan branch taskboard" section sits adjacent to it).

Log

  • 2026-06-23 created + shipped (orphan branch + main-side work). Awaiting owner Cloudflare-dashboard step to flip the production branch. Renumbered T-100 → T-103 at merge time after main claimed T-100 in parallel (per AGENTS.md collision rule). Source: Accounting (Diagnostics) · https://claude.ai/code/session_01G58Y71noihrYCDEDMexmea
  • 2026-06-23 owner flipped the Cloudflare Pages production branch to taskboard. First two deploys (runs #161 + #163, SHAs 91f6314b / d826a390) failed with "Config value 'theme': The path set in custom_dir ('overrides') does not exist." — initial orphan-branch import had missed overrides/main.html (theme override referenced by mkdocs.yml) + docs/Task Log.md (one of the scripts/build-docs-site.py INCLUDE entries, was a warning not a hard failure but still a gap). Both added in commit 9fe6371c; run #164 went green in ~48s, and the live site at tasks.theestablishers.com is now publishing from taskboard. Updated the "Verification" section above accordingly. Source: Accounting (Diagnostics) · https://claude.ai/code/session_01G58Y71noihrYCDEDMexmea