Repository navigation
Tags
Tags
Release scope: diff against the last successfully released tag (#334) ## TLDR v0.28.0 published nothing because the cost gate diffed it against v0.27.0, whose release was cancelled. The baseline is now the newest earlier tag whose release.yml run succeeded. ## Details - `release-change-detection.yml`: picks the previous tag from successful `release.yml` push runs; adds `actions: read` and a `release_workflow` input. - `release.yml`: the scope job gets `actions: read`; comments updated. - `verify-release-gates.mjs`: drops the stale `git describe || true` tolerance. - `docs/RELEASING.md`: the baseline is documented. ## How Tests Prove It Works - `node scripts/verify-release-gates.mjs`: OK. `actionlint`: clean. - A dry run against the real run history resolves the baseline to v0.24.0, so a full release is classified. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
Use supported macOS runners for release builds and VSIX (#332) ## TL;DR Move macOS release builds and VSIX packaging to the supported macOS 15 runner after GitHub blocked macOS 14 jobs during its retirement brownout. ## Details Change only the two macOS runner labels in the release matrix. The darwin-arm64 target, publishing channels, audit dependencies, permissions, timeouts and release-complete gate remain unchanged. GitHub documents the brownout and November 2 retirement in actions/runner-images#13518. ## How Do The Automated Tests Prove It Works? The v0.27.0 Darwin build was cancelled before executing any steps; its check annotation explicitly identifies the scheduled macOS 14 runner brownout. The release-gate verifier passes for all ten workflows and thirteen gated release jobs, and all 54 CI scope/branch-protection/release-gate regressions pass. Full required CI must pass before merge; the next immutable release will verify actual macOS build and packaging execution on the replacement runner.
Preserve pinned proof bytes in Windows release checkout (#331) ## TL;DR Preserve pinned proof certificate bytes during Windows checkout so release VSIX staging can verify the original certificates. ## Details - Mark NDJSON files as byte-preserving in `.gitattributes`, preventing Git autocrlf from rewriting hashed proof exports. - Add a regression that applies real Git Windows checkout filters to all thirteen bundled certificates and checks their unchanged SHA-256 pins. - Update the documented regression count to 41. Certificate contents, hashes, assertions and release gates remain unchanged. ## How Do The Automated Tests Prove It Works? The parent independently reproduced the new regression failing before the fix: nat-basic acquired 7,151 CRLF sequences and missed its existing pin. After the attribute change, all 41 proof/corpus/staging regressions pass. Canonical asset staging and `--check` both verify all thirteen exports and two licenses. This fixes the exact `pinned export changed` failure from v0.26.0 Windows VSIX staging; no compiler or application source changed.
Resolve dependency vulnerabilities blocking the stable release (#330) ## TL;DR Resolve the glob/minimatch dependency findings that blocked the v0.25.0 release audit. ## Details - Update extension overrides and locks to glob 14.0.3 and minimatch 11.0.3; scope the website override to recursive-copy. - Pin the dependency-only lspkit backport 8d218e7, preserving the existing profiler/debug APIs instead of importing unrelated upstream changes. - Update the PR #325 failure summary with its successful merge and the subsequent audit failure. ## How Do The Automated Tests Prove It Works? - Full `make audit`: no issues across all dependency roots; npm clean installs and extension lint pass. - Actual extension acceptance: 868 main and 14 workspace tests; installed VSIX: 169 passing after aligning the selected compiler and canonical reference artifact. The initial compiler-hash rejection remains recorded, and its assertion is unchanged. - All four extension coverage gates pass: lines/statements 98.55%, branches 95.18%, functions 96.94% (95% thresholds unchanged). - Website: 293 browser tests and 32 filesystem-copy compatibility workflows pass. Pinned lspkit packages: 177 profiler UI and 107 debug tests pass. - Parent independently rehashed 313 installed acceptance inputs with zero drift; compiler/application sources and existing suite evidence are unchanged. Normal required CI must pass on this exact head before merge; the next release requires its own fresh exact-tag audit.
Add type disciplines, a proof Workbench and native desktop hosts (#325) ## Summary Add package-provided type disciplines, the shared proof Workbench, and native desktop hosts. Preserve checked proof statements, provenance and axiom reporting across the shared application and packaged proof libraries. - Share mathematical layout, document capabilities and bundled libraries across Apple and VS Code hosts. - Integrate GPUI and WinUI workflows beneath the required root CI gate. - Preserve complete Result values and recursively box erased list elements across arguments, returns, bindings, callbacks and handlers. - Preserve callback projection shape and symbolic provenance in effect checking; pass original argument nodes through pipeline/method adapters so pointer-keyed inference metadata remains valid. - Copy imported and exported host strings at ownership boundaries and release owned results in the sample Apple consumers. - Isolate Hunt executable fixture writers from concurrent test forks and report broken Workbench test fixtures through typed failures, retaining assertions and deadlines. ## Verification The current release compiler passes 887 type tests, workspace all-target Clippy with warnings denied, formatting, and the dead-code gate. Its 672 Rust/manifest/lock inputs match the current checkout with no drift. Independent CLI contract matrices and the real native ARC ownership regressions also pass. These focused results do not prove complete application, platform or release acceptance. The single current Workbench WASM build is still running. Final application execution, browser performance, full coverage and latest-head CI acceptance remain pending. Previously reported projection-shape and native string-ownership defects have regression fixes; their focused evidence must not be mistaken for final application acceptance. The broad Apple host and documentation integration is under review. Windows failures belong to the separate Windows owner. Imported proof coverage is distinct from completion of the planned proof frontend, automation or Mathlib reconstruction. Merge requires the latest head's required checks to pass, branch protection to remain intact, and all known failures to be resolved. ## Release After the fully green PR merges, publish the next stable minor through the established tag-triggered workflow. The latest verified stable release is v0.23.0; v0.24.0 is expected, subject to rechecking before tagging the verified merged SHA. Require a fresh audit of that exact tag SHA, all required publishing/deployment channels, successful release-complete, and verified published assets/version. Keep source version placeholders at 0.0.0-dev. --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Christian Findlay <cftools@nimblesite.co>
Homepage: showcase film under the hero, one-line install (#322) ## TLDR Homepage: the showcase film is the first section under the hero, Install is a one-line strip with a CTA to the getting started guide, and the hero says "Safe, elegant, fast." ## Details - `website/src/index.html` - Hero title "Osprey. Safe, elegant, fast." replaces the banned "Logic, in flight" (docs/messaging.md); hero copy, footnote and the Three pillars section follow the safety / elegance / performance messaging. - Hero link "▶ Watch the showcase" jumps to `#showcase`. - New `#showcase` section directly after the hero: compact heading plus the showcase film (moved out of `#targets`). - `#install` is now a single strip: `brew install nimblesite/tap/osprey`, a "Getting started guide →" button to `/docs/installation/`, and one line on Scoop, clang and the online playground. The three-card install grid is gone. - Overview film points at the re-cut `osprey-overview.*` assets. - `website/src/css/home.css`: showcase section and install strip styles, pillars grid. - Assets (Git LFS): `osprey-overview.mp4` and `osprey-overview-poster.jpg` replace the `osprey-logic-in-flight-overview.*` files; captions renamed to `osprey-overview.en.vtt`. ## How Tests Prove It Works - `videos.spec.js` › `homepage showcase film plays directly under the hero at 390px / 1440px`: `#showcase` is the section after the hero, the hero link scrolls the player into view, and it plays at 1920 px with no horizontal scroll. - `interactions.spec.js` › `install is a compact strip that leads to the getting started guide`: brew command shown, no install grid, strip under 260 px tall, CTA lands on `/docs/installation/`. - `interactions.spec.js` › `hero has a title and two working CTAs`: title contains "Safe, elegant, fast." and not "Logic"; section order is hero → showcase → install. - `hero fills the viewport before scroll` now checks that `#showcase` starts at the fold.
Plans 0038-0040: every example on Osprey Native, Storage first Every example with a UI becomes an Osprey Native app: one store, Osprey's signals, typed nodes and capabilities. The WinUI host is one code-only executable that only draws nodes and completes capabilities; no C# UI framework, no example code in any host. Osprey Storage ports first (a Meter node and a MeasureFolders capability); Issue Inbox, the counter and Talon Bank follow, web clients last. The direct-GPU graphics scenes are the stated exception.
PreviousNext