<< All versions

Skill v1.0.0

currentLLM-judged scan90/100
meridianlabs-ai/agents/resolve-board
──Details
PublishedOctober 22, 2026 at 07:37 PM
Content Hashsha256:3f3241082fe3ece3...
Git SHA8736ad0af443
──Files
Files (1 file, 3.2 KB)
SKILL.md3.2 KBactive
SKILL.md · 77 lines · 3.2 KB

version: "1.0.0" name: resolve-board description: Bring the Atlas board current in one shot — dispatch the hourly Atlas sync workflow (hosted in this agents repo) now (upstream state sync) and run the local link-upstream-chips sweep (clickable issue↔PR chips). Use when the board looks stale or after a batch of agent/upstream activity.


Resolve the Atlas board

Runs the two reconciliation mechanisms on demand instead of waiting for their natural cadence (the sync runs hourly at :17; chips only land when the local sweep runs). Both are idempotent — running this at any time is safe. It reads only the workflow run and runs the sweep, and handles no outsider text; the other skills' rules are in the skills' trust model.

Set SKILL_DIR to the absolute directory containing this loaded SKILL.md. Resolve symlinks to find the agents checkout:

sh
AGENTS=$(dirname "$(dirname "$(realpath "$SKILL_DIR")")")

Step 1 — dispatch the Atlas sync and wait

The sync is hosted in THIS repo (migrated from the fork 2026-08-26 — it is org-wide board infrastructure and every write rides the org PAT).

sh
gh workflow run atlas-sync.yml --repo meridianlabs-ai/agents
sleep 10
RID=$(gh run list --repo meridianlabs-ai/agents --workflow atlas-sync.yml \
--limit 1 --json databaseId --jq '.[0].databaseId')
# poll to completion (typically < 2 min; timeout-minutes is 15)
gh run watch "$RID" --repo meridianlabs-ai/agents --exit-status || true

Pull its summary — the actions it took (stage moves, closes/reopens, skips) live in the run output:

sh
gh run view "$RID" --repo meridianlabs-ai/agents --log 2>/dev/null \
| sed -n '/=== Atlas sync summary ===/,/^$/p'

If the run FAILED at preflight, the machine account's minted token cannot read the Atlas project (the app's Organization projects permission or its installation) — surface that to the user rather than continuing.

Step 2 — run the chip sweep

sh
cd "$AGENTS/scripts/link-upstream-chips" && node index.mjs
  • Links every pending chip: External proxies ↔ upstream PRs, and fork agent

PRs (claude/issue-N-*) ↔ their issues (whose Fixes refs are inert on the fork — non-default base branch).

  • If it exits with "Not signed in", the ~2-week browser session expired: run

node index.mjs --login, let the user complete the GitHub sign-in in the window that opens, then rerun the sweep.

  • FAILED/WRONG LINK lines need eyes — the script never clicks a

non-matching result, so failures mean the Development-panel markup changed (--headed to debug) or a genuinely missing search result.

Step 3 — report

One short summary combining both: sync actions taken (or "no changes"), chips linked (or "none pending"), plus anything needing the user (expired login, preflight failure, WRONG LINK).

Notes

  • The sync only manages issues assigned to ransomr (pilot scoping) and only

those with an Upstream PR field for the promotion tail; promotion bookkeeping itself is the promote skill's job.

  • Neither mechanism touches Agent / Review transitions driven by

the agent workflows — this skill reconciles the upstream tail and the chips, not the agent lifecycle.

All versions