Skip to content

Promote: v0.9.25 - #387

Merged
scttbnsn merged 6 commits into
mainfrom
dev/v0.9
Oct 9, 2026
Merged

scttbnsn merged 6 commits into
mainfrom
dev/v0.9

Conversation

@scttbnsn

@scttbnsn scttbnsn commented Oct 9, 2026 •

Copy link
Copy Markdown
Contributor

Promotes dev/v0.9 to main for v0.9.25.

Merge as a two-parent merge commit, not a squash.

Changelog

  • ✨ Added documentation archive creation and contract checks for archive provenance, release tags, source trees, and exported routes.
  • ✨ Added version-aware links and archive page behavior. Current documentation remains at unversioned public URLs.
  • 🔧 Moved current documentation source under docs/content/docs/current/.
  • 🔧 Updated release references to v0.9.25, Go to 1.27.2, and golangci-lint to v2.14.0.
  • 🐛 Updated Lighthouse error classification to recognize dynamic debugging-port wait failures.
  • 🔒 The PR objectives report that Go 1.27.2 fixes 13 standard-library advisories, including 10 reachable from Portwing on Go 1.27.1. The supplied changes do not independently verify these counts.

Concerns

  • Verify the intended Chrome relaunch behavior. The supplied change summary confirms error classification changes, but does not establish a relaunch implementation.
  • Test results and current review findings were not supplied.

github-actions Bot and others added 6 commits October 8, 2026 21:56
* build(deps): update the Go toolchain to 1.27.2

* build(lint): move golangci-lint to v2.14.0 for Go 1.27.2
* refactor(docs): move the docs content under current/

* feat(docs): serve content/docs/current at the unversioned docs URLs

* refactor(docs): keep only the used exports in docs-versions

* test(docs): pin the current/ docs paths, version title and export contract

* docs: point prose references at docs/content/docs/current

* docs(roadmap): state the v1.0 docs archive plan

* fix(docs): take slugs from Fumadocs and compare the exported page set
* feat(docs): scope archived page links to their version at build time

* feat(docs): mark archived pages noindex with an unsupported notice

* feat(docs): add a script to cut a docs archive from a release tag

* test(docs): add the docs archive provenance contract and its self-test

* ci(docs): run the docs archive contract in the release gates

* test(docs): keep archived docs out of the stale-version grep

* test(docs): check each archive exports under its own version segment

* test(website): cover dotted archive routes in the security headers output

* docs: describe the docs archive layout and how to cut one

* fix(docs): scope archive links only where the router will honor them

Leave native <a> and /docs-prefixed targets alone, scope string-literal
expression hrefs, validate cross-version links against the version they
name, and add content tests forbidding the two link forms that cannot work.

* fix(docs): require the archive for the previous distinct release line

Walk the CHANGELOG past patch releases on the current line, compare lines
numerically, and skip lines whose last tag predates the current/ layout.

* fix(docs): make the archive cut atomic and its tests clean up after themselves

Validate every input before writing, roll back on a failed write, suggest the
numerically newest patch tag, and remove the temp repos the tests create.

* docs: give the docs layout block a language

* test(docs): keep hook git variables out of the archive fixture repos

* fix(docs): harden the archive cut and the canonical URL

* fix(docs): read the provenance file without checking for it first
@coderabbitai

coderabbitai Bot commented Oct 9, 2026 •

Copy link
Copy Markdown

Review in Change Stack →

Warning

This pull request changes a CodeRabbit configuration file. Because it comes from a fork or its author is not a repository collaborator, reviews use only the configuration from the target branch. The proposed configuration will take effect after it is merged.

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration
  • Configuration used: Repository: CodesWhat/portwing/.coderabbit.yaml
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 41b846c3-e218-413d-b4e4-860894d8c69d

📥 Commits

Reviewing files that changed from the base of the PR and between e9c91ec and 60fa93b.


⛔ Files ignored due to path filters (5)
  • CHANGELOG.md is excluded by !CHANGELOG.md
  • docs/assets/star-history-dark.svg is excluded by !**/*.svg
  • docs/assets/star-history.svg is excluded by !**/*.svg
  • package-lock.json is excluded by !**/package-lock.json, !**/package-lock.json
  • website/public/llms.txt is excluded by !website/public/**

📒 Files selected for processing (73)
  • .clusterfuzzlite/Dockerfile
  • .coderabbit.yaml
  • .github/workflows/ci-verify.yml
  • .github/workflows/quality-fuzz-cflite-pr.yml
  • .github/workflows/quality-integration-engines.yml
  • .github/workflows/release-cut.yml
  • BENCHMARKS.md
  • COMPATIBILITY.md
  • Dockerfile
  • Dockerfile.armv7
  • Dockerfile.dev
  • Dockerfile.release
  • README.md
  • RELEASING.md
  • ROADMAP.md
  • SECURITY-ASSURANCE.md
  • SPEC.md
  • api/openapi.yaml
  • cmd/portwing/main.go
  • docs/content/README.md
  • docs/content/archive-provenance.json
  • docs/content/docs/current/api-reference.mdx
  • docs/content/docs/current/audit-logging.mdx
  • docs/content/docs/current/authentication.mdx
  • docs/content/docs/current/competitive-landscape.mdx
  • docs/content/docs/current/configuration.mdx
  • docs/content/docs/current/connection-modes.mdx
  • docs/content/docs/current/drydock-integration.mdx
  • docs/content/docs/current/getting-started.mdx
  • docs/content/docs/current/index.mdx
  • docs/content/docs/current/installation.mdx
  • docs/content/docs/current/mcp-server.mdx
  • docs/content/docs/current/meta.json
  • docs/content/docs/current/migrating-from-watchtower.mdx
  • docs/content/docs/current/observability.mdx
  • docs/content/docs/current/security-model.mdx
  • docs/content/docs/current/stability-policy.mdx
  • docs/content/docs/current/standalone-mode.mdx
  • docs/content/docs/current/verification.mdx
  • docs/content/docs/meta.json
  • docs/source.config.ts
  • docs/src/app/[[...slug]]/page.tsx
  • docs/src/app/layout.tsx
  • docs/src/lib/docs-versions.ts
  • docs/src/lib/remark-versioned-links.ts
  • docs/src/lib/source.ts
  • docs/tsconfig.json
  • examples/observability/docker-compose.yml
  • go.mod
  • lefthook.yml
  • package.json
  • scripts/cflite-config-test.sh
  • scripts/ci/go-lint.sh
  • scripts/ci/go-release-check.sh
  • scripts/compose-containerd-version-test.sh
  • scripts/docs-archive-config-test-test.sh
  • scripts/docs-archive-config-test.sh
  • scripts/docs-archive-cut.mjs
  • scripts/docs-archive-cut.test.mjs
  • scripts/docs-export-contract.mjs
  • scripts/docs-export-contract.test.mjs
  • scripts/docs-versions.test.mjs
  • scripts/lighthouse-budget.mjs
  • scripts/lighthouse-budget.test.mjs
  • scripts/package-release-config-test-test.sh
  • scripts/package-release-config-test.sh
  • scripts/remark-versioned-links.test.mjs
  • scripts/reusable-ci-config.test.mjs
  • scripts/standard-mode-bind-config-test.sh
  • website/scripts/security-headers.test.mjs
  • website/src/app/sitemap.ts
  • website/src/components/get-started.tsx
  • website/src/lib/site-config.ts

Included review availability: This review used your included allowance. Your plan provides up to 1 included review per hour; 0 remain after this review.



📝 Walkthrough

Walkthrough

The PR adds versioned documentation archives with archive creation, provenance validation, link rewriting, and static-export checks. It updates documentation and release references to v0.9.25, Go toolchain references to 1.27.2, and golangci-lint to v2.14.0. It also updates Lighthouse error classification for Chrome’s dynamic debugging port message.

Possibly related PRs

  • CodesWhat/portwing#336: Introduced Go 1.27.1 in project toolchain and Docker build stages; this PR updates those references to Go 1.27.2.
  • CodesWhat/portwing#338: Introduced the ARMv7 Compose builder using Go 1.27.1; this PR updates those build stages and fixtures to Go 1.27.2.

Suggested labels: second-opinion


Priority: ⬆️ High

Change: Other

Merge Risk: ⚪ Minimal · up to 60fa9

This promotion updates the Go toolchain and release version references, moves documentation source under current/ while keeping public URLs unchanged, and adds archive tooling with checks. No concrete merge-blocking issue was found in the supplied changes.

Pre-merge checks | Passed 2
✅ Passed checks (2 passed)
Check name Status Explanation
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.


✨ Finishing Touches 💡 1
🛠️ Fix failing CI checks 💡
  • Commit to this branch
  • Create a new PR

📝 Generate docstrings
  • Commit to this branch
  • Create a new PR

🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR


  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot added the second-opinion Summon Greptile for a second-opinion review label Oct 9, 2026
@github-actions

github-actions Bot commented Oct 9, 2026

Copy link
Copy Markdown
Contributor

@greptileai Review exact head 60fa93be8f3fcf6d14ab15f3ea5dd8e0a420d1a7. Review for correctness, security issues, and cross-file regressions.

@codecov

codecov Bot commented Oct 9, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@biggest-littlest biggest-littlest left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Promotion of dev/v0.9 to main for v0.9.25. All 14 required contexts pass by name on 60fa93b, and Web Contract and all five Integration jobs are green after Docker Hub recovered. Each change was reviewed on its own PR (#382 to #386).

@ALARGECOMPANY ALARGECOMPANY left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Promotion of dev/v0.9 to main for v0.9.25. All 14 required contexts pass by name on 60fa93b, and Web Contract and all five Integration jobs are green after Docker Hub recovered. Each change was reviewed on its own PR (#382 to #386).

@scttbnsn
scttbnsn merged commit f4cfaa4 into main Oct 9, 2026
60 of 73 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

second-opinion Summon Greptile for a second-opinion review

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants