Skip to content

fix(nav): add synced crux-lanes and work-sources pages to the hive nav and guard all synced pages - #616

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

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

Conversation

@hivecommons-hive

Copy link
Copy Markdown
Contributor

Closes #614

Why: #611 added crux-lanes.md to the sync list but the hand-maintained NAV_STRUCTURE_HIVE was not updated, so the page is served at /docs/hive/crux-lanes but invisible in the sidebar; work-sources.md has drifted the same way since #58. The only drift guard (page-map-adr-nav-drift.test.ts) covered ADRs, so this class of omission could never fail CI.

The test now also asserts every synced target in scripts/sync-hive-docs.ts appears in NAV_STRUCTURE_HIVE, with an explicit (currently empty) allowlist for pages intentionally reachable by URL only. Without the two nav additions it fails on exactly crux-lanes.md and work-sources.md.

Both pages go under Operations next to the other crux operator pages, per the decision recorded in #614.

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

…v and guard all synced pages

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 4, 2026 •

Copy link
Copy Markdown

✅ Deploy Preview for hivecommons-docs canceled.

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

@hivecommons-hive

hivecommons-hive Bot commented Nov 4, 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

Hive filed review findings that do not block this PR as backlog items:

Cap: 10 backlog item(s) per PR per day.

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

Correctness review @ e145a46

Logic verified: reproducing the new assertion against head yields 68 sync targets and missing: []; removing the two nav lines fails on exactly crux-lanes.md / work-sources.md. The not-yet-mirrored crux-lanes.md is harmless (buildPageMap skips nav entries with no file, src/app/docs/page-map.ts:372), and the /docs/hive/work-sources links in documentation-map.md keep resolving via the routeMap fallback (page-map.ts:470-475), same as the crux-cli precedent.

Blocker (in-scope, agent-fixable): CI job TypeScript & ESLint fails in Prettier on the PR's own new test (src/__tests__/page-map-adr-nav-drift.test.ts:21-26, 32 exceed printWidth: 80 in .prettierrc). Run npx prettier --write src/__tests__/page-map-adr-nav-drift.test.ts and push.

Advisory (low): page-map-adr-nav-drift.test.ts:24 slices to indexOf("const NAV_STRUCTURE_HOTSHOT") without asserting it was found; if that marker ever moves/renames, slice(start, -1) silently widens the search to the whole file and the guard goes green on other projects' navs. One line: expect(end).toBeGreaterThan(start).

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

Intent alignment: the diff does what #614 asks — all three checkboxes land (page-map.ts:121 Crux durable lanes → crux-lanes.md, title matches the upstream v5 H1; page-map.ts:124 Work sources → work-sources.md; generalized drift test with an allowlist). Re-running the new test's logic with the two nav lines removed yields exactly ['crux-lanes.md', 'work-sources.md'], so the failing-first property holds. No scope creep.

One in-scope blocker — the PR's own new test code fails CI's TypeScript & ESLint job (Prettier step). src/__tests__/page-map-adr-nav-drift.test.ts:21-22,24-26,32 are 85–99 columns wide against .prettierrc.json printWidth: 80 (gh run view 41809970903 --log-failed → [warn] src/__tests__/page-map-adr-nav-drift.test.ts … Code style issues found). Fix: run npm run format (or npx prettier --write src/__tests__/page-map-adr-nav-drift.test.ts) and push; no logic change needed.

Reviewed by reviewer — no findings.

Reviewer notes

Review @ d6c38bd — the prior blocker is cleared; this looks correct to me.

What I verified in the tree, not just the diff:

  • src/app/docs/page-map.ts:121,124 — the two new NAV_STRUCTURE_HIVE entries point at crux-lanes.md and work-sources.md, both present in the sync list at scripts/sync-hive-docs.ts:37 and :41.
  • src/__tests__/page-map-adr-nav-drift.test.ts:29-30 — the new end-marker assertion is sound: const NAV_STRUCTURE_HOTSHOT is the next declaration after NAV_STRUCTURE_HIVE (page-map.ts:93 → :208), so the slice covers exactly the hive nav.
  • The source:/target: regex (test.ts:36-38) uses \s*, so it also catches the multi-line stable-soak-policy.md entry at sync-hive-docs.ts:47-50, and localHiveDocs (:104-107) is scanned as the comment says. It does not match the source: string type annotations (no quotes).
  • Ran npx vitest run src/__tests__/page-map-adr-nav-drift.test.ts locally on this head: 2/2 pass. With page-map.ts reverted to main, the new case fails on missing — so the guard would have caught the 📖 docs: add crux-lanes.md to hive sync list #611/📖 docs: publish Hive work sources and integrations refresh #58 drift.
  • TypeScript & ESLint now passes on this head (the prettier failure at e145a46 is what the two follow-up commits fixed); all required checks are green, only tide is waiting on approval.

No findings. clubanderson is the OWNERS approver prow names for the lgtm.

Reviewed by reviewer-2 — no findings.

Reviewer notes

Read the tree at d6c38bd, not just the diff. Looks correct to me.

  • scripts/sync-hive-docs.ts:21-105: the new regex in page-map-adr-nav-drift.test.ts handles every entry shape present — plain source, source+target (:22, :65, :74), the multi-line route entry (:47-50, \s* spans the newline and target is correctly optional), and localHiveDocs (:104).
  • src/app/docs/page-map.ts: NAV_STRUCTURE_HIVE uses single-quoted filenames throughout, so the '${t}' containment check is sound; the slice is bounded by NAV_STRUCTURE_HOTSHOT, which exists.
  • Reproduced the claim: with page-map.ts reverted to main, the new test fails with exactly ['crux-lanes.md', 'work-sources.md']; at head both tests pass.
  • Placement under Operations after crux CLI matches what [quality] regression-risk: synced hive pages crux-lanes.md and work-sources.md are missing from NAV_STRUCTURE_HIVE; drift guard covers ADRs only #614 specifies.

Only PR-body/diff gap I checked for: none. No findings.

@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 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 4, 2026
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
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.

docs-currency review @ e145a46

Nav and changelog content are correct: both new entries (src/app/docs/page-map.ts:121, :124) match the section/title decision in #614, and every source/target in scripts/sync-hive-docs.ts:21-99 (including the multi-line route-only stable-soak-policy.md entry at :47-50) resolves in NAV_STRUCTURE_HIVE. The fragment changelog.d/fixed-614-hive-nav-crux-lanes-work-sources.md follows the changelog.d/README.md format.

Blocking (in-scope): the required TypeScript & ESLint check fails on this head — Prettier rejects the new test block src/__tests__/page-map-adr-nav-drift.test.ts:20-34 (CI job 126506490353: [warn] src/__tests__/page-map-adr-nav-drift.test.ts … Run Prettier with --write to fix). Reproduced with the repo's .prettierrc.json: lines 21-22, 24-27 and 32 need wrapping. Fix: npx prettier --write src/__tests__/page-map-adr-nav-drift.test.ts and push.

Advisory (non-blocking): the new regex also matches localHiveDocs entries (scripts/sync-hive-docs.ts:104-107), so integrations.md is checked too. It is in the nav today (page-map.ts:103), so this is harmless, but the comment at :28 and the test name say "synced" — worth a one-word note so a future local-only page isn't mistaken for a sync regression.

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

Fail loudly if NAV_STRUCTURE_HOTSHOT is missing instead of silently
scanning the rest of page-map.ts, retitle the describe block now that
the guard covers all synced pages, and note that localHiveDocs entries
are intentionally included.

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>
@kubestellar-prow kubestellar-prow Bot added size/M and removed size/S labels Nov 4, 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 4, 2026
@hivecommons-hive
hivecommons-hive Bot merged commit ddfa289 into main Nov 4, 2026
12 of 13 checks passed
@kubestellar-prow
kubestellar-prow Bot deleted the scanner/fix-614 branch November 4, 2026 10:13
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 role/trusted Author is trusted for unattended merge (trusted-author role or registry/claim tier in require_tiers) size/M stage/050-review-pending Review swarm requested; awaiting a verdict for the current head

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[quality] regression-risk: synced hive pages crux-lanes.md and work-sources.md are missing from NAV_STRUCTURE_HIVE; drift guard covers ADRs only

0 participants