Skip to content

fix: highlight active Docs/Blog links in top nav#298

Merged
bradygaster merged 5 commits intobradygaster:mainfrom
IEvangelist:squad/fast-follow-nav-favicon
Mar 9, 2026
Merged

fix: highlight active Docs/Blog links in top nav#298
bradygaster merged 5 commits intobradygaster:mainfrom
IEvangelist:squad/fast-follow-nav-favicon

Conversation

@IEvangelist
Copy link
Copy Markdown
Collaborator

@IEvangelist IEvangelist commented Mar 9, 2026

Docs site fast-follow fixes

A collection of post-merge improvements to the docs site covering navigation UX, image optimization, social sharing metadata, and CI reliability.

Changes

1. Highlight active nav links

The top navigation now highlights Docs or Blog when viewing pages in those sections — both desktop and mobile. Uses \Astro.url.pathname\ detection with the same squad-branded active styling as the sidebar.

2. Astro Image optimization

Moved \squad-logo.png\ from \public/\ to \src/assets/images/\ and switched to \import { Image } from 'astro:assets'\ in the Header and Footer components. The imported .src\ property is used for the favicon <link>. Astro now optimizes the logo to webp (~40 KB vs 118 KB original).

3. Open Graph & Twitter Card metadata

Added \og:title, \og:description, \og:image, \og:url\ and \ witter:card\ meta tags to \BaseLayout.astro\ so shared links render with the squad logo and page description. Image URLs are absolute for social platform crawlers.

4. CI fixes

  • Synced \package-lock.json\ with \package.json\ to resolve
    pm ci\ failures (missing \highlight.js, \markdown-it, etc.)
  • Added
    pm ci\ with \working-directory: docs\ to the CI workflow so the \docs-build.test.ts\ suite can find Astro

Files changed

  • \docs/src/components/Header.astro\ — active nav + Image component
  • \docs/src/components/Footer.astro\ — Image component
  • \docs/src/layouts/BaseLayout.astro\ — favicon via import, OG/Twitter meta tags
  • \docs/src/assets/images/squad-logo.png\ — moved from \public/\
  • \package-lock.json\ — synced with package.json
  • .github/workflows/squad-ci.yml\ — install docs deps

IEvangelist and others added 2 commits March 9, 2026 07:06
Detect current URL path and apply squad-branded active styling to the
Docs and Blog links in both desktop and mobile navigation when the user
is on pages under those sections.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Move squad-logo.png from public/ to src/assets/ so Astro can optimize it.
Use import { Image } from 'astro:assets' in Header and Footer components.
Use the imported image .src property for the favicon link.

Result: logo is now served as optimized webp (~40KB vs 118KB original).

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@IEvangelist IEvangelist force-pushed the squad/fast-follow-nav-favicon branch from 03f3d6a to ff50a4e Compare March 9, 2026 12:06
IEvangelist and others added 3 commits March 9, 2026 07:10
Add missing lockfile entries for highlight.js, markdown-it, and their
dependencies that were introduced by upstream changes.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Add og:title, og:description, og:image, og:url, and twitter:card meta
tags to BaseLayout so shared links render with the squad logo and
page description. Image URLs are absolute for social platform crawlers.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
The docs-build test runs 'npm run build' in the docs/ subdirectory,
which requires Astro. Add a step to install docs/ dependencies so
the astro binary is available during tests.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
jongio pushed a commit to jongio/squad that referenced this pull request Mar 9, 2026
* feat: migrate SDK + CLI source files into workspace packages

Phase 1 (SDK):
- Copy 15 directories + 4 standalone files from src/ into packages/squad-sdk/src/
- Remove CLI re-exports from SDK barrel (src/index.ts)
- Update SDK package.json exports map with all subpath exports

Phase 2 (CLI):
- Copy src/cli/ and src/cli-entry.ts into packages/squad-cli/src/
- Copy templates/ into packages/squad-cli/templates/
- Rewrite 6 cross-package imports to use @bradygaster/squad-sdk/* package imports
- Intra-CLI imports left as relative paths

Root src/ preserved for now (cleanup after tests pass).

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* feat: complete SDK/CLI workspace migration and publish to npm

- Updated tsconfigs with composite builds and project references
- Fixed package.json exports maps, dependencies, and build scripts
- Aligned versions to 0.8.0 (clean break from 0.7.0 stubs)
- Root package now private workspace orchestrator
- SDK: 306 files, 18 subpath exports, pure library
- CLI: 204 files, ink/react UI, templates included
- Both packages published to npm as @bradygaster/squad-sdk@0.8.0
  and @bradygaster/squad-cli@0.8.0

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* docs(ai-team): sdk-cli-split execution, version alignment, test verification

Session: 2026-02-22T041800Z-npm-publish-migration
Orchestration: Keaton (sync), Fenster (sync), Edie (background), Rabin (background), Kobayashi (background), Hockney (background), Coordinator (background)

Changes:
- Logged 7 orchestration entries (.squad/orchestration-log/) and session summary (.squad/log/)
- Merged 8 decision inbox files to .squad/decisions.md (keaton-sdk-cli-split-plan, kobayashi-version-alignment, hockney-test-import-migration, edie-build-system-migration, edie-subpath-exports, kujan-barrel-files, copilot-directive repo scope)
- Cleared .squad/decisions/inbox/ (all 8 files merged)
- Updated 5 agent histories with team updates (keaton, fenster, edie, rabin, kobayashi, hockney)
- Verified: Build clean, 1719 tests passing, SDK/CLI split complete, versions aligned to 0.8.0, packages published to npm

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* fix(squad-cli): add squad-cli bin alias and bump to 0.8.1

npx @bradygaster/squad-cli was hitting the placeholder cli.js instead of
cli-entry.js because npm resolves bins by the unscoped package name.
Added 'squad-cli' as a second bin entry pointing to cli-entry.js.
Bumped version to 0.8.1 since 0.8.0 is already published.
Also replaced the dist/cli.js placeholder with a redirect to cli-entry.js.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* chore: clean up stale root artifacts

- Removed 13 orphaned .test-cli-* temporary directories from pre-migration era
- Removed stale root dist/ directory (each package has its own dist/)
- .test-cli-* and dist/ already in .gitignore, no changes needed there
- Verified build succeeds after cleanup

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* fix: use npm-compatible wildcard instead of workspace protocol

The previous commit used workspace:* for the CLI→SDK dependency, but this
project uses npm workspaces which don't support the workspace: protocol.
Changed to * which achieves the same local resolution with npm.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* test: add coverage config and package exports integration test

- Configure @vitest/coverage-v8 with text, text-summary, and html reporters
- Add coverage include/exclude patterns for src and packages
- Create package-exports.test.ts verifying SDK exports map (8 subpaths)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* refactor: migrate test imports to workspace packages

Migrate all 56 test files from relative ../src/ imports to workspace
package imports (@bradygaster/squad-sdk and @bradygaster/squad-cli).

SDK imports use subpath exports (e.g., @bradygaster/squad-sdk/config,
@bradygaster/squad-sdk/agents, @bradygaster/squad-sdk/runtime).

CLI imports use @bradygaster/squad-cli subpath exports for shell,
core, and command modules.

Changes:
- 173 import path replacements across 56 test files
- Added 8 new SDK subpath exports (adapter/errors, config/migrations,
  runtime/event-bus, runtime/benchmarks, runtime/i18n,
  runtime/telemetry, runtime/offline, runtime/cost-tracker)
- Added 16 CLI subpath exports for shell, core, and command modules
- Added missing barrel re-exports: selectResponseTier/getTier in
  coordinator/index.ts, onboardAgent/addAgentToConfig in
  agents/index.ts
- Updated consumer-imports test to import CLI functions from
  @bradygaster/squad-cli instead of SDK barrel
- All 1727 tests pass across 57 test files

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* chore: remove root src/ directory (migrated to workspace packages)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* fix: build SDK before CLI to fix workspace build order

npm run build --workspaces builds alphabetically, causing CLI to
compile before SDK. CLI imports from @bradygaster/squad-sdk fail
because SDK types don't exist yet. Explicitly order: SDK first, CLI second.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* fix(ci): build before test so workspace exports resolve

The test job runs on a fresh runner without dist/ directories.
Workspace subpath exports (e.g. @bradygaster/squad-sdk/skills) point
to ./dist/ files which must exist for module resolution to succeed.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* chore: remove squad-main-guard workflow

The .squad folder is already excluded from npm distribution via the
files field in workspace package.json configs. The guard that prevented
.squad/ from reaching protected branches is no longer needed.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* main to dev (bradygaster#299)

* test artifact (bradygaster#183)

* Bradygaster/dev (bradygaster#184)

* test artifact

* fixed readme

* chore: remove squad-main-guard workflow

The .squad folder is already excluded from npm distribution via the
files field in workspace package.json configs. The guard that prevented
.squad/ from reaching protected branches is no longer needed.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* chore: add 0.6.0-alpha.0 entry to CHANGELOG.md

Fixes version consistency check in CI release workflow.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* fix: relax flaky timing assertion in telemetry test

setTimeout(10) can resolve in <10ms on fast CI runners. Lowered
threshold from 10ms to 5ms to eliminate timing jitter failures.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* ci: add rollup job for branch protection

Matrix jobs produce 'build (20)', 'build (22)' etc. which don't match
the branch protection rule requiring exactly 'build'. Added a 'ci'
rollup job that aggregates all matrix results into a single check.

Update branch protection to require 'ci' instead of 'build'.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@bradygaster bradygaster merged commit 2e4161b into bradygaster:main Mar 9, 2026
1 check passed
bradygaster added a commit that referenced this pull request Mar 9, 2026
…roster

- Add PR #298 (active nav highlighting, favicon fixes) to blog 028
- Update Squad roster from Usual Suspects to Apollo 13 / Mission Control names
- Credit @tamirdresher PRs #272, #278-280, #283
- Credit @IEvangelist PR #298
- Credit @dkirby-ms PR #243

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
bradygaster added a commit that referenced this pull request Mar 9, 2026
…roster (#300)

- Add PR #298 (active nav highlighting, favicon fixes) to blog 028
- Update Squad roster from Usual Suspects to Apollo 13 / Mission Control names
- Credit @tamirdresher PRs #272, #278-280, #283
- Credit @IEvangelist PR #298
- Credit @dkirby-ms PR #243

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
bradygaster added a commit that referenced this pull request Mar 9, 2026
- Add David Pine (@IEvangelist) to Code Contributors — PRs #293, #298
- Add Dina Berry (@diberry) to Code Contributors — PRs #286, #288, #290, #292
- Update Tamir Dresher with recent PRs #278-280, #283
- Add Dale Kirby to Code Contributors — PR #243

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
bradygaster added a commit that referenced this pull request Mar 9, 2026
* docs(ai-team): session log and orchestration records

Session: 2026-03-09-docs-push-contributors
Requested by: Brady

Changes:
- Logged PAO orchestration: blog 028 update, CONTRIBUTORS.md refresh
- Logged FIDO orchestration: test baseline verification (22 passing)
- Logged session summary: docs push workflow with PR #300 merge
- No decisions inbox entries to merge

* docs: credit Pine, Dina, Tamir, Kirby on docs contributor page

- Add David Pine (@IEvangelist) to Code Contributors — PRs #293, #298
- Add Dina Berry (@diberry) to Code Contributors — PRs #286, #288, #290, #292
- Update Tamir Dresher with recent PRs #278-280, #283
- Add Dale Kirby to Code Contributors — PR #243

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
diberry pushed a commit to diberry/squad that referenced this pull request Mar 10, 2026
…ntributors roster (bradygaster#300)

- Add PR bradygaster#298 (active nav highlighting, favicon fixes) to blog 028
- Update Squad roster from Usual Suspects to Apollo 13 / Mission Control names
- Credit @tamirdresher PRs bradygaster#272, bradygaster#278-280, bradygaster#283
- Credit @IEvangelist PR bradygaster#298
- Credit @dkirby-ms PR bradygaster#243

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
diberry pushed a commit to diberry/squad that referenced this pull request Mar 10, 2026
…gaster#307)

* docs(ai-team): session log and orchestration records

Session: 2026-03-09-docs-push-contributors
Requested by: Brady

Changes:
- Logged PAO orchestration: blog 028 update, CONTRIBUTORS.md refresh
- Logged FIDO orchestration: test baseline verification (22 passing)
- Logged session summary: docs push workflow with PR bradygaster#300 merge
- No decisions inbox entries to merge

* docs: credit Pine, Dina, Tamir, Kirby on docs contributor page

- Add David Pine (@IEvangelist) to Code Contributors — PRs bradygaster#293, bradygaster#298
- Add Dina Berry (@diberry) to Code Contributors — PRs bradygaster#286, bradygaster#288, bradygaster#290, bradygaster#292
- Update Tamir Dresher with recent PRs bradygaster#278-280, bradygaster#283
- Add Dale Kirby to Code Contributors — PR bradygaster#243

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants