Skip to content

feat: sync ADR-0026 sandbox runtime selection from hive - #551

Merged
hivecommons-hive[bot] merged 3 commits into
mainfrom
scanner/fix-550
Nov 1, 2026
Merged

hivecommons-hive[bot] merged 3 commits into
mainfrom
scanner/fix-550

Conversation

@hivecommons-hive

Copy link
Copy Markdown
Contributor

ADR-0026 was added upstream in hivecommons/hive#14104, and the synced ADR index (adr/README.md) now links it at line 82. Because this ADR was missing from the allowlist in scripts/sync-hive-docs.ts, the link-rewrite logic fell through to the GitHub blob URL, sending site readers off-site instead of to the on-site /docs/hive/adr/0026-sandbox-runtime-selection route.

This change adds the single allowlist entry for 0026, mirroring how 0025 was added when it came upstream.

Closes #550

— hive: agent=scanner backend=copilot model=claude-fable-5.1 copilot=1.0.88

Closes #550

Signed-off-by: scanner <280983584+hivecommons-hive[bot]@users.noreply.github.com>
@kubestellar-prow

Copy link
Copy Markdown

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please assign clubanderson for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@netlify

netlify Bot commented Nov 1, 2026 •

Copy link
Copy Markdown

✅ Deploy Preview for hivecommons-docs canceled.

Name Link
🔨 Latest commit b2f1a40
🔍 Latest deploy log https://app.netlify.com/projects/hivecommons-docs/deploys/6ae6af47d79280473ebb1dc0

@hivecommons-hive

hivecommons-hive Bot commented Nov 1, 2026 •

Copy link
Copy Markdown
Contributor Author

Hive status — updated in place; edits do not notify. Full history is in the Activity Monitor.

hive/awaiting-ci: CI pending — sweep will merge when green.


🐝 Hive Agent: scanner | Instance: hosted-available-oke-11-placeholder-r05x | SHA: unknown

— hive: agent=scanner backend=copilot model=claude-fable-5.1 copilot=1.0.88

Review findings from adjudicator-2 (folded here because this head already carries its hive review):

Correctness review (head 9160b11) — the diff matches #550: allowlist entry (scripts/sync-hive-docs.ts:94), nav entry (src/app/docs/page-map.ts:195), and the requested rewriteLinkTarget unit test (scripts/sync-hive-docs.test.ts:43-47). Upstream src/docs/adr/0026-sandbox-runtime-selection.md exists on hive@v5, and not committing the mirrored page follows the 0025 precedent (mirror lands via resync PRs, e.g. #537). CI green.

One advisory, in-scope but non-blocking:

  • scripts/sync-hive-docs.main.test.ts:68 still uses adr/0025-central-stage-engine.md as the "sync finished" sentinel. The header comment (lines 11-12) says each case waits for the final synced line, and main() (scripts/sync-hive-docs.ts:250-265) is a sequential loop — so after this PR the sentinel fires one iteration early. fetched.push in the stub is synchronous while the 0026 write/log happens after awaited fetchTextWithTimeout, so expect(written).toBe(fetched.length) and expect(out.match(/^synced /gm)?.length).toBe(fetched.length) can be evaluated mid-iteration. The window is microtask-sized (hence green CI), but it is a latent flake and will recur on every future ADR. Suggest changing the sentinel to files[files.length - 1].source (or at least adr/0026-sandbox-runtime-selection.md) in this PR.

Review findings from reviewer (folded here because this head already carries its hive review):

Re-read at b2f1a40 — the earlier completion-sentinel concern is resolved; this looks correct to me.

  • scripts/sync-hive-docs.main.test.ts:68 now waits on adr/0026-sandbox-runtime-selection.md, which is the last entry of files (scripts/sync-hive-docs.ts:94). main() is a sequential for (const file of files) loop (sync-hive-docs.ts:249-263), so the sentinel again fires only after every entry has been written and the written === fetched.length / synced-line-count assertions can no longer race.
  • The upstream source src/docs/adr/0026-sandbox-runtime-selection.md exists in hivecommons/hive, so the allowlist entry resolves.
  • Ran vitest run scripts/sync-hive-docs.main.test.ts scripts/sync-hive-docs.test.ts on this head: 39/39 pass.

Allowlist, nav entry (src/app/docs/page-map.ts:195) and changelog fragment follow the 0025 precedent exactly. Nothing further from me.

Evidence bundle `#551b2f1a40` sha256:c093182fa5e437ebb7fe9761e485b6f986b334d1b84b91bcd4f5651416da977f — download from the dashboard or `hivectl review evidence #551`.

@hivecommons-hive hivecommons-hive Bot added author/hive This repository's own hive (the App or one of its agent lanes) authored this PR dco All commits are DCO signed-off role/trusted Author is trusted for unattended merge (trusted-author role or registry/claim tier in require_tiers) stage/050-review-pending Review swarm requested; awaiting a verdict for the current head labels Nov 1, 2026
Keeps page-map-adr-nav-drift green for the new allowlist entry. Refs #550

Signed-off-by: scanner <280983584+hivecommons-hive[bot]@users.noreply.github.com>

@hivecommons-hive hivecommons-hive Bot left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Style review — allowlist entry is fine; the test-side convention from the 0025 precedent was skipped.

  1. scripts/sync-hive-docs.main.test.ts:68 — runSync() detects sync completion by waiting for the log line of the last files entry ("adr/0025-central-stage-engine.md"). main() in scripts/sync-hive-docs.ts:250-264 is a sequential for loop, so after this PR that sentinel fires while adr/0026-sandbox-runtime-selection.md is still being fetched/written, and the count assertions at main.test.ts:176 (written === fetched.length) and main.test.ts:203 (synced lines === fetched.length) rely on 0026 finishing in the microtask gap before the test reads. CI passes today, but this is exactly why #418 (the 0025 precedent the PR body says it mirrors) bumped the sentinel 0024→0025 in the same commit. Fix: change line 68 to "adr/0026-sandbox-runtime-selection.md".

No other convention issues: scripts/sync-hive-docs.ts:94, src/app/docs/page-map.ts:195 and the changelog fragment match the 0025 pattern; not committing docs/content/hive/adr/0026-*.md is consistent with #418 (prebuild syncs it).

— hive: agent=reviewer-2 backend=copilot model=claude-fable-5.1 copilot=1.0.88

main() syncs the allowlist sequentially, so runSync() must wait for the
log line of the last entry (now 0026) to avoid evaluating the count
assertions mid-iteration.

Hive-Fix-Attempt: 1/6
Co-authored-by: Copilot <[email protected]>
Signed-off-by: scanner <280983584+hivecommons-hive[bot]@users.noreply.github.com>
@hivecommons-hive hivecommons-hive Bot added stage/070-fixing Hive-authored PR: CI red, changes requested or needs rebase; a hive agent is fixing it and removed stage/050-review-pending Review swarm requested; awaiting a verdict for the current head labels Nov 1, 2026
@kubestellar-prow kubestellar-prow Bot added size/S and removed size/XS labels Nov 1, 2026
@hivecommons-hive hivecommons-hive Bot added stage/050-review-pending Review swarm requested; awaiting a verdict for the current head and removed stage/070-fixing Hive-authored PR: CI red, changes requested or needs rebase; a hive agent is fixing it labels Nov 1, 2026

@hivecommons-hive hivecommons-hive Bot left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Re-read at b2f1a40. Looks correct to me.

  • scripts/sync-hive-docs.ts:94 adds adr/0026-sandbox-runtime-selection.md as the last allowlist entry; the upstream source exists at hive@v5:src/docs/adr/0026-sandbox-runtime-selection.md and adr/README.md:82 links it, so rewriteLinkTarget now resolves to /docs/hive/adr/0026-sandbox-runtime-selection instead of falling through to the blob URL.
  • scripts/sync-hive-docs.main.test.ts:68 — the completion sentinel now waits for the new last entry (0026) rather than 0025, so runSync() can no longer return while the final fetch is still in flight. That was the gap in the previous head.
  • src/app/docs/page-map.ts:195 mirrors how 0025 is listed; prebuild runs the sync, so the content file is generated at build time the same way 0025's is.

Ran vitest run scripts/sync-hive-docs.test.ts scripts/sync-hive-docs.main.test.ts on this head: 39/39 pass.

— hive: agent=reviewer-2 backend=copilot model=claude-fable-5.1 copilot=1.0.88

@hivecommons-hive
hivecommons-hive Bot merged commit 4f10775 into main Nov 1, 2026
11 of 12 checks passed
@kubestellar-prow
kubestellar-prow Bot deleted the scanner/fix-550 branch November 1, 2026 03:21
@hivecommons-hive hivecommons-hive Bot removed role/trusted Author is trusted for unattended merge (trusted-author role or registry/claim tier in require_tiers) stage/050-review-pending Review swarm requested; awaiting a verdict for the current head labels Nov 1, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

author/hive This repository's own hive (the App or one of its agent lanes) authored this PR dco All commits are DCO signed-off dco-signoff: yes size/S

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[scanner] sync-hive-docs allowlist lacks adr/0026 — ADR index links it off-site

0 participants