Skip to content

chore(release): website updates for v1.0.0#105

Merged
bigpuritz merged 1 commit into
mainfrom
feature/104_release-1.0.0
May 13, 2026
Merged

chore(release): website updates for v1.0.0#105
bigpuritz merged 1 commit into
mainfrom
feature/104_release-1.0.0

Conversation

@bigpuritz
Copy link
Copy Markdown
Contributor

Closes #104.

Release sweep for Plugwerk v1.0.0 — the first stable release. Follows RELEASE_CHECKLIST.md.

Phase status

Phase Status
1. OpenAPI sync Already done — auto-sync PR #102 merged into main before this PR was opened (public/api-docs/openapi.yaml, +712 / −0, pure additive).
2. Compose mirror Already currentpublic/deploy/docker-compose.yml matches plugwerk-server/.../src/dist/docker-compose.yml@v1.0.0 byte-for-byte.
3. Hardcoded version bump Done — server/deployment.mdx example tag bumped from 1.0.0-beta.2 to 1.0.0-beta.3 in two places.
4. Release banner Done — src/pages/index.astro updated to version: "1.0.0". The banner shows RELEASE / 1.0.0.
5. Release-notes page Done — src/content/docs/releases/1.0.0.mdx (new), releases/index.mdx table extended.
6. API reference No action — auto-renders from the synced spec.
7. Milestone hygiene Milestone 1.0.0 created and assigned. Beta.3 milestone closes once PR #93 merges.
8. Ship + verify This PR.

What's in the release notes

User-facing summary (full content in the new MDX page):

  • S3-compatible object storage backend (#191) — opt-in
  • Admin scheduler dashboard — enable/disable, dry-run, run-now per scheduled job
  • Scheduled orphan-artifact reaper + storage/DB consistency check with ShedLock
  • Operator-uploadable branding — top bar, login, favicon
  • Effective-config admin view (read-only plugwerk.* with secrets redacted)
  • general.site_name wired through the UI
  • Security: fast-fail at startup when PLUGWERK_AUTH_ENCRYPTION_KEY cannot decrypt stored OIDC client secrets

Breaking change called out:

  • Client SDK: PlugwerkUpdateChecker.checkForUpdates(...) now takes a typed InstalledPluginRef (was Map<String, String>). Existing snippets in client-sdk/configuration.mdx and client-sdk/migration.mdx will become stale — see follow-ups below.

Follow-ups (NOT in this PR — track separately)

These are listed in #104 and are intentionally out of scope so this PR stays the release sweep:

  1. SDK reference update for InstalledPluginRef — mirror of docs: update SDK reference for PlugwerkInstaller PluginManager-lifecycle SPI (plugwerk#424) #83 / PR docs(client-sdk): document installer load+start lifecycle and uninstall (#83) #92 for the PlugwerkInstaller rework. Existing Map.of(...) snippets in client-sdk/configuration.mdx (Usage Examples block) and client-sdk/migration.mdx need migration.
  2. S3 storage configuration page — the new env vars (PLUGWERK_STORAGE_* family, exact names from the synced OpenAPI / .env.example) deserve their own section in server/configuration.mdx, analog to how the SSRF guard got one in docs(server): document the OIDC SSRF guard env vars (#88) #93.
  3. Scheduler / branding admin pages — if a server-admin docs section grows, these features warrant short walkthroughs.

Test plan

  • npm run format clean
  • npm run format:check clean
  • npm run build clean (32 pages built; 1 new release page)
  • AGENTS.md ADR/internal-link grep returns 0 hits in newly added content
  • Banner renders RELEASE / 1.0.0 and the migrationUrl resolves to /releases/1.0.0/#upgrade-notes
  • slug: releases/1.0.0 frontmatter override works (/releases/1.0.0/ not /releases/100/)
  • Reviewer: pull, npm run dev, visit /, verify the banner reads RELEASE / 1.0.0 in both themes with three working links
  • Reviewer: visit /releases/1.0.0/, verify Highlights / Breaking changes / Upgrade notes / Other notable changes sections render
  • Reviewer: visit /releases/, verify the new row appears at the top of the table
  • Reviewer: visit /server/deployment/, verify the example tag now reads 1.0.0-beta.3
  • Reviewer: after merge, watch the deploy run and smoke-test https://www.plugwerk.io

Run RELEASE_CHECKLIST for the Plugwerk 1.0.0 stable release. Phase 1
(OpenAPI sync, PR #102) and Phase 2 (Compose mirror — diff is empty
against upstream dist/docker-compose.yml@v1.0.0) were already in main
before this PR.

Manual phases done in this PR:

- src/content/docs/server/deployment.mdx: bump the hardcoded
  pre-release example tag from 1.0.0-beta.2 to 1.0.0-beta.3 in both
  the Code block and the tag-strategy table. The current-version
  slot via pwVersion now resolves to 1.0.0 automatically.
- src/pages/index.astro: bump the release banner to v1.0.0 — version,
  release URL, docker tag, and migration URL.
- src/content/docs/releases/1.0.0.mdx (new): release-notes page for
  the first stable release. Highlights cover the S3 object storage
  backend, the admin scheduler dashboard, the orphan-artifact reaper,
  the storage/DB consistency check, operator-uploadable branding
  (top bar / login / favicon), the effective-config admin view, the
  general.site_name UI wiring, and the security fast-fail when the
  encryption key cannot decrypt stored OIDC client secrets at
  startup. Breaking change called out: PlugwerkUpdateChecker now
  takes a typed InstalledPluginRef (was Map<String, String>) — the
  dedicated SDK reference doc update is a separate follow-up.
  Frontmatter sets `slug: releases/1.0.0` to bypass Starlight's
  filename-based dot-stripping.
- src/content/docs/releases/index.mdx: prepend the new row to the
  Released versions table.

Verification:
- npm run format clean
- npm run format:check clean
- npm run build clean (32 pages built; new release page renders at
  /releases/1.0.0/ with the upgrade-notes anchor; banner link
  resolves correctly)
- AGENTS.md ADR/internal-link grep returns 0 hits in newly added
  content (the pre-existing plugwerk#365 reference in
  client-sdk/configuration.mdx is the documented exception
  "upstream PR closing a stale snippet" and is out of scope here)

Closes #104
@bigpuritz bigpuritz added this to the 1.0.0 milestone May 13, 2026
@bigpuritz bigpuritz added documentation Improvements or additions to documentation chore Maintenance and housekeeping labels May 13, 2026
@bigpuritz bigpuritz merged commit 517e015 into main May 13, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

chore Maintenance and housekeeping documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

release: Plugwerk 1.0.0 website + docs updates

1 participant