From cf00baf8d406dcbbc231b61664cb232c2be9f791 Mon Sep 17 00:00:00 2001 From: scanner <280983584+hivecommons-hive[bot]@users.noreply.github.com> Date: Sat, 31 Oct 2026 23:05:17 -0400 Subject: [PATCH 1/3] feat: sync ADR-0026 sandbox runtime selection from hive Closes #550 Signed-off-by: scanner <280983584+hivecommons-hive[bot]@users.noreply.github.com> --- changelog.d/added-adr-0026-sync.md | 1 + scripts/sync-hive-docs.test.ts | 6 ++++++ scripts/sync-hive-docs.ts | 1 + 3 files changed, 8 insertions(+) create mode 100644 changelog.d/added-adr-0026-sync.md diff --git a/changelog.d/added-adr-0026-sync.md b/changelog.d/added-adr-0026-sync.md new file mode 100644 index 00000000..425d9a4d --- /dev/null +++ b/changelog.d/added-adr-0026-sync.md @@ -0,0 +1 @@ +- Sync Hive ADR 0026 (sandbox runtime selection) to the docs site and list it in the ADR nav (#550). diff --git a/scripts/sync-hive-docs.test.ts b/scripts/sync-hive-docs.test.ts index d7593d7d..59104f4f 100644 --- a/scripts/sync-hive-docs.test.ts +++ b/scripts/sync-hive-docs.test.ts @@ -40,6 +40,12 @@ describe("rewriteLinkTarget — Case 1: in-tree synced docs -> site route", () = ).toBe("/docs/hive/adr/0001-record-architecture-decisions"); }); + it("rewrites ADR-0026 sandbox runtime selection link from adr/README.md to its adr/ route", () => { + expect( + rewriteLinkTarget("0026-sandbox-runtime-selection.md", ADR_README) + ).toBe("/docs/hive/adr/0026-sandbox-runtime-selection"); + }); + it("preserves an #anchor on an in-tree link", () => { expect(rewriteLinkTarget("architecture.md#the-governor-loop", README)).toBe( "/docs/hive/architecture#the-governor-loop" diff --git a/scripts/sync-hive-docs.ts b/scripts/sync-hive-docs.ts index 4944538a..2f225155 100644 --- a/scripts/sync-hive-docs.ts +++ b/scripts/sync-hive-docs.ts @@ -91,6 +91,7 @@ const files: Array<{ source: string; target?: string; route?: string }> = [ { source: "adr/0023-trusted-author-automerge.md" }, { source: "adr/0024-provider-credential-lifecycle.md" }, { source: "adr/0025-central-stage-engine.md" }, + { source: "adr/0026-sandbox-runtime-selection.md" }, ]; // Hive pages authored in this repo (docs/content/hive/) rather than synced, From 9160b1147cdf104e26aeb5248cf292469a368b6e Mon Sep 17 00:00:00 2001 From: scanner <280983584+hivecommons-hive[bot]@users.noreply.github.com> Date: Sat, 31 Oct 2026 23:07:07 -0400 Subject: [PATCH 2/3] feat: list ADR-0026 in the hive ADR nav 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> --- src/app/docs/page-map.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/src/app/docs/page-map.ts b/src/app/docs/page-map.ts index 382ed101..a7eeb931 100644 --- a/src/app/docs/page-map.ts +++ b/src/app/docs/page-map.ts @@ -192,6 +192,7 @@ const NAV_STRUCTURE_HIVE: Array<{ title: string; items: NavItem[] }> = [ { '0023 Trusted-author automerge': 'adr/0023-trusted-author-automerge.md' }, { '0024 Provider credential lifecycle': 'adr/0024-provider-credential-lifecycle.md' }, { '0025 Central stage engine': 'adr/0025-central-stage-engine.md' }, + { '0026 Sandbox runtime selection': 'adr/0026-sandbox-runtime-selection.md' }, ] }, { 'Environment variable reference': 'env-vars.md' }, ] From b2f1a40052270f48cd0642eddb6168aa4fe40336 Mon Sep 17 00:00:00 2001 From: scanner <280983584+hivecommons-hive[bot]@users.noreply.github.com> Date: Sat, 31 Oct 2026 23:17:22 -0400 Subject: [PATCH 3/3] test: wait for ADR-0026 as the sync completion sentinel 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 <223556219+Copilot@users.noreply.github.com> Signed-off-by: scanner <280983584+hivecommons-hive[bot]@users.noreply.github.com> --- scripts/sync-hive-docs.main.test.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/sync-hive-docs.main.test.ts b/scripts/sync-hive-docs.main.test.ts index 45bc9fa4..1f241ea1 100644 --- a/scripts/sync-hive-docs.main.test.ts +++ b/scripts/sync-hive-docs.main.test.ts @@ -65,7 +65,7 @@ async function runSync(): Promise<{ out: string; err: string }> { () => { const done = exitSpy.mock.calls.length > 0 || - joinCalls(logSpy).includes("adr/0025-central-stage-engine.md"); + joinCalls(logSpy).includes("adr/0026-sandbox-runtime-selection.md"); if (!done) throw new Error("sync still running"); }, { timeout: 5_000, interval: 5 }