Skip to content

fix(docs-site): migrate to astro v6 content collections config#6451

Merged
lpcox merged 3 commits into
mainfrom
fix-astro-v6-content-config
Jul 20, 2026
Merged

fix(docs-site): migrate to astro v6 content collections config#6451
lpcox merged 3 commits into
mainfrom
fix-astro-v6-content-config

Conversation

@lpcox

@lpcox lpcox commented Jul 20, 2026

Copy link
Copy Markdown
Collaborator

What

Completes the Astro v6 content-collections migration for the docs site.

  • Move src/content/config.tssrc/content.config.ts
  • Add the Starlight docsLoader() to the docs collection

Why

Astro v6 removed legacy content collections. On main, npm run build (astro check && astro build) fails with:

[LegacyContentConfigError] Found legacy content config file in "src/content/config.ts".
Please move this file to "src/content.config.ts" and ensure each collection has a loader defined.

The config file was at the old path and had no collection loader.

Verification

  • npm run build (astro check + astro build) now completes successfully — 9 pages built, search index generated.
  • Follows the official Astro v6 / Starlight loader migration guidance.

Split out from the docs-site npm audit fix (#6450) since it's an independent, pre-existing build issue.

Astro v6 removed legacy content collections. 'astro check'/'astro build'
failed with LegacyContentConfigError because the config lived at
src/content/config.ts without a collection loader.

- Move src/content/config.ts -> src/content.config.ts
- Add Starlight docsLoader() to the docs collection

Verified: 'npm run build' (astro check && astro build) now completes.
Copilot AI review requested due to automatic review settings July 20, 2026 22:35
@github-actions

github-actions Bot commented Jul 20, 2026

Copy link
Copy Markdown
Contributor

Documentation Preview

Documentation build failed for this PR. View logs.

Built from commit c3fed86

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Migrates the docs site’s content collection configuration to Astro v6 conventions.

Changes:

  • Relocates the content configuration to src/content.config.ts.
  • Configures Starlight’s docsLoader() for the docs collection.
Show a summary per file
File Description
docs-site/src/content.config.ts Adds the required Starlight loader to the docs collection.

Review details

Tip

Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

  • Files reviewed: 1/1 changed files
  • Comments generated: 0
  • Review effort level: Medium

@github-actions

Copy link
Copy Markdown
Contributor

✅ Coverage Check Passed

Overall Coverage

Metric Base PR Delta
Lines 98.76% 98.79% 📈 +0.03%
Statements 98.70% 98.73% 📈 +0.03%
Functions 99.28% 99.28% ➡️ +0.00%
Branches 95.01% 95.01% ➡️ +0.00%
📁 Per-file Coverage Changes (1 files)
File Lines (Before → After) Statements (Before → After)
src/log-directory-setup.ts 96.2% → 100.0% (+3.78%) 96.3% → 100.0% (+3.71%)

Coverage comparison generated by scripts/ci/compare-coverage.ts

@lpcox

lpcox commented Jul 20, 2026

Copy link
Copy Markdown
Collaborator Author

@copilot merge main

Copilot AI commented Jul 20, 2026

Copy link
Copy Markdown
Contributor

@copilot merge main

Done — merged main (37ae38e) into this branch (ee62bfd).

Copilot finished work on behalf of lpcox July 20, 2026 22:51
@github-actions

Copy link
Copy Markdown
Contributor

✅ Copilot review passed with no inline comments.

@lpcox Add the ready-for-aw label to this PR to trigger agentic CI smoke tests.

Adds a brace-expansion >=5.0.7 override to resolve GHSA-3jxr-9vmj-r5cp
(DoS via exponential-time expansion of consecutive non-expanding {} groups),
which was failing the 'Audit Main Package' npm audit --audit-level=high gate.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 7ef9f0e7-1882-478d-90c0-6e4d42313685
@github-actions

github-actions Bot commented Jul 20, 2026

Copy link
Copy Markdown
Contributor

📰 VERDICT: Smoke Copilot has concluded. All systems operational. This is a developing story. 🎤

@github-actions

github-actions Bot commented Jul 20, 2026

Copy link
Copy Markdown
Contributor

🔑 Smoke Copilot PAT PAT auth validated. All systems operational. ✅

@github-actions

github-actions Bot commented Jul 20, 2026

Copy link
Copy Markdown
Contributor

Smoke Gemini completed. All facets verified. 💎

@github-actions

github-actions Bot commented Jul 20, 2026

Copy link
Copy Markdown
Contributor

Build Test Suite completed successfully!

@github-actions

github-actions Bot commented Jul 20, 2026

Copy link
Copy Markdown
Contributor

📡 Smoke OTel Tracing completed. All tracing scenarios validated. ✅

@github-actions

github-actions Bot commented Jul 20, 2026

Copy link
Copy Markdown
Contributor

Smoke Copilot BYOK AOAI (Entra) reports failed. AOAI BYOK (Entra) mode investigation needed...

@github-actions

github-actions Bot commented Jul 20, 2026

Copy link
Copy Markdown
Contributor

Smoke Copilot BYOK completed. Copilot BYOK mode operational. 🔓

@github-actions

Copy link
Copy Markdown
Contributor

🚀 Security Guard has started processing this pull request

@github-actions

github-actions Bot commented Jul 20, 2026

Copy link
Copy Markdown
Contributor

✨ The prophecy is fulfilled... Smoke Codex has completed its mystical journey. The stars align. 🌟

@github-actions

github-actions Bot commented Jul 20, 2026

Copy link
Copy Markdown
Contributor

🔌 Smoke Services — All services reachable! ✅

@github-actions

github-actions Bot commented Jul 20, 2026

Copy link
Copy Markdown
Contributor

Smoke Claude passed

@github-actions

github-actions Bot commented Jul 20, 2026

Copy link
Copy Markdown
Contributor

📰 VERDICT: Smoke Docker Sbx has concluded. All systems operational. This is a developing story. 🎤

@github-actions

github-actions Bot commented Jul 20, 2026

Copy link
Copy Markdown
Contributor

🛡️ Smoke Copilot Network Isolation confirmed the egress allowlist is enforced. ✅

@github-actions

github-actions Bot commented Jul 20, 2026

Copy link
Copy Markdown
Contributor

Chroot tests passed! Smoke Chroot - All security and functionality tests succeeded.

@github-actions

github-actions Bot commented Jul 20, 2026

Copy link
Copy Markdown
Contributor

Contribution Check completed successfully!

PR #6451 follows the relevant contribution guidelines: the PR description is clear and references #6450, the change is in the correct docs-site location, and no additional docs or tests are required for this Astro v6 content-collections migration.

@github-actions

Copy link
Copy Markdown
Contributor

Smoke Test: Claude Engine Validation

Check Result
API status ✅ PASS
GH check ✅ PASS
File status ✅ PASS

Overall result: PASS

Generated by Smoke Claude for #6451 · 54.5 AIC · ⊞ 3.3K ·
Add label ready-for-aw to run again

@github-actions

Copy link
Copy Markdown
Contributor

🔬 Smoke Test: Copilot PAT Auth — PR #6451

Test Result
GitHub MCP connectivity ⚠️ Filtered by secrecy policy
GitHub.com HTTP ⚠️ Template vars not expanded
File write/read ⚠️ Template vars not expanded

Overall: ⚠️ INCONCLUSIVE — Pre-step outputs (steps.smoke-data.outputs.*) were not interpolated before agent execution; test data unavailable.

Auth mode: PAT (COPILOT_GITHUB_TOKEN)

🔑 PAT report filed by Smoke Copilot PAT
Add label ready-for-aw to run again

@github-actions

Copy link
Copy Markdown
Contributor

Smoke Test Results — Services Connectivity

Check Result
Redis PING ❌ Name resolution failed (host.docker.internal unreachable)
PostgreSQL pg_isready ❌ No response
PostgreSQL SELECT 1 ❌ Name resolution failed

Overall: FAILhost.docker.internal DNS does not resolve in this environment. Service containers are not reachable.

🔌 Service connectivity validated by Smoke Services
Add label ready-for-aw to run again

@github-actions github-actions Bot mentioned this pull request Jul 20, 2026
@github-actions

Copy link
Copy Markdown
Contributor

@lpcox — Smoke test results for this PR:

EGRESS_RESULT allow=pass deny=pass

✅ Allowed domain (api.github.com) — HTTP 200
✅ Blocked domain (example.com) — connection denied (403 from proxy)

Overall: PASS

Warning

Firewall blocked 1 domain

The following domain was blocked by the firewall during workflow execution:

  • example.com

To allow these domains, add them to the network.allowed list in your workflow frontmatter:

network:
  allowed:
    - defaults
    - "example.com"

See Network Configuration for more information.

🛡️ Egress verdict from Smoke Copilot Network Isolation
Add label ready-for-aw to run again

@github-actions github-actions Bot added the smoke-copilot-network-isolation Copilot network-isolation egress smoke test label Jul 20, 2026
@github-actions

Copy link
Copy Markdown
Contributor

Merged PRs reviewed:

  • ✅ fix(docs-site): resolve high-severity js-yaml npm audit finding
  • ✅ chore: upgrade gh-aw extension to v0.82.14 pre-release
    Tests: ✅ GitHub reads | ✅ Playwright | ✅ File write | ✅ Build
    Discussion lookup: ✅ ([Coverage Report] Test Coverage Report — 2026-07-20 #6443); oracle reply skipped because discussion comments are unavailable here
    Overall: PASS

Warning

Firewall blocked 1 domain

The following domain was blocked by the firewall during workflow execution:

  • registry.npmjs.org

To allow these domains, add them to the network.allowed list in your workflow frontmatter:

network:
  allowed:
    - defaults
    - "registry.npmjs.org"

See Network Configuration for more information.

🔮 The oracle has spoken through Smoke Codex
Add label ready-for-aw to run again

@github-actions

Copy link
Copy Markdown
Contributor

Smoke Test Results: Copilot BYOK (Direct) Mode

✅ GitHub.com connectivity (HTTP 200)
✅ File write/read test (confirmed)
✅ BYOK inference path active (api-proxy → api.githubcopilot.com)
✅ MCP tooling functional

Status: PASS | Direct BYOK mode (COPILOT_PROVIDER_API_KEY) operational

🔑 BYOK report filed by Smoke Copilot BYOK
Add label ready-for-aw to run again

@github-actions

Copy link
Copy Markdown
Contributor

🔍 Smoke Test: API Proxy OpenTelemetry Tracing Results

Scenario Status Details
1. Module Loading otel.js loads successfully; exports startRequestSpan, setTokenAttributes, setBudgetAttributes, endSpan, endSpanError, shutdown, isEnabled
2. Test Suite 39/39 tests pass in otel.test.js (span creation, token attrs, exporters, file fallback, shutdown)
3. Env Var Forwarding api-proxy-env-config.ts forwards GH_AW_OTLP_ENDPOINTS, OTEL_EXPORTER_OTLP_ENDPOINT, OTEL_EXPORTER_OTLP_HEADERS, GITHUB_AW_OTEL_TRACE_ID, GITHUB_AW_OTEL_PARENT_SPAN_ID, OTEL_SERVICE_NAME
4. Token Tracker Integration onUsage callback present in token-tracker-http.js (lines 285, 343) as OTEL hook point
5. OTEL Diagnostics No live container run available in sandbox; file fallback (/var/log/api-proxy/otel.jsonl) configured for when no OTLP endpoint is set

All validatable scenarios pass. OTEL integration is functional with correct span lifecycle, GenAI semantic conventions support, parent context propagation via GITHUB_AW_OTEL_TRACE_ID/GITHUB_AW_OTEL_PARENT_SPAN_ID, and graceful degradation to file export when no endpoint is configured.

📡 OTel tracing validated by Smoke OTel Tracing
Add label ready-for-aw to run again

@github-actions

Copy link
Copy Markdown
Contributor

Merged PRs:

  • (none)

Results:

  • GitHub MCP: ❌ list_pull_requests returned no data (filtered access error)
  • GitHub.com connectivity: ✅
  • File write/read test: ✅
  • BYOK inference: ✅

Running in direct BYOK mode (COPILOT_PROVIDER_API_KEY + COPILOT_PROVIDER_BASE_URL) via api-proxy → Azure OpenAI (Foundry, o4-mini-aw)

Overall: FAIL

cc @lpcox

🔑 BYOK (AOAI api-key) report filed by Smoke Copilot BYOK AOAI (api-key)
Add label ready-for-aw to run again

@github-actions

Copy link
Copy Markdown
Contributor

Gemini Smoke Test Results

  • GitHub MCP Testing: ❌ (Secrecy filter)
  • GitHub.com Connectivity: ❌ (DNS failure)
  • File Writing Testing: ✅
  • Bash Tool Testing: ✅

Overall Status: FAIL

Warning

Firewall blocked 1 domain

The following domain was blocked by the firewall during workflow execution:

  • localhost

To allow these domains, add them to the network.allowed list in your workflow frontmatter:

network:
  allowed:
    - defaults
    - "localhost"

See Network Configuration for more information.

💎 Faceted by Smoke Gemini
Add label ready-for-aw to run again

@github-actions

Copy link
Copy Markdown
Contributor

Chroot Version Comparison Results ✅

Runtime Host Version Chroot Version Match?
Python Python 3.12.13 Python 3.12.13
Node.js v24.18.0 v24.18.0
Go go1.22.12 go1.22.12

All runtimes match between host and chroot environments.

Tested by Smoke Chroot
Add label ready-for-aw to run again

@github-actions

Copy link
Copy Markdown
Contributor

🏗️ Build Test Suite Results

Ecosystem Project Build/Install Tests Status
Bun elysia 1/1 passed ✅ PASS
Bun hono 1/1 passed ✅ PASS
C++ fmt N/A ✅ PASS
C++ json N/A ✅ PASS
Deno oak N/A 1/1 passed ✅ PASS
Deno std N/A 1/1 passed ✅ PASS
.NET hello-world N/A ✅ PASS
.NET json-parse N/A ✅ PASS
Go color passed ✅ PASS
Go env passed ✅ PASS
Go uuid passed ✅ PASS
Java gson 1/1 passed ✅ PASS
Java caffeine 1/1 passed ✅ PASS
Node.js clsx passed ✅ PASS
Node.js execa passed ✅ PASS
Node.js p-limit passed ✅ PASS
Rust fd 1/1 passed ✅ PASS
Rust zoxide 1/1 passed ✅ PASS

Overall: 8/8 ecosystems passed — ✅ PASS

Generated by Build Test Suite for #6451 · 43.4 AIC · ⊞ 8.3K ·
Add label ready-for-aw to run again

@github-actions

Copy link
Copy Markdown
Contributor

🔥 Smoke Test: Docker Sbx — PASS

Test Result
GitHub MCP connectivity
GitHub.com HTTP (200)
File write/read

Overall: PASS

📰 BREAKING: Report filed by Smoke Docker Sbx
Add label ready-for-aw to run again

@lpcox
lpcox merged commit 1601d0c into main Jul 20, 2026
139 of 141 checks passed
@lpcox
lpcox deleted the fix-astro-v6-content-config branch July 20, 2026 23:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants