Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,8 @@ Follows [Keep a Changelog](https://keepachangelog.com/); versioning is [SemVer](

- CI drift cleanups (WBS-6.2 #432 follow-up): `scripts/rootless-matrix-check.ps1` `^ rootless-matrix-policy:.*?continue-on-error:\s*true` regex was bleeding across jobs into the next `security:` job's `continue-on-error: true`; replaced with `[regex]::Match` + a proper terminator (`(?=^ [A-Za-z][\w-]*:\s|\z)`) so the check scopes to just the policy block. Same script now throws when the policy block is absent (was treating a failed match as success). `.github/workflows/ci.yml` pins `actions/checkout` to the immutable `3d3c42e5` SHA + `persist-credentials: false` for both policy jobs. `.github/workflows/hermetic.yml` aligns its reusable-workflow pin to the documented `ec891654` SHA (was `a8db485` — drift between pin doc + caller). `crates/sl-viewer/src/web_exports.rs` uses `WebExportProvider::default_subdir` to populate the `defaults` array in `web_export_roots_with_env` instead of repeating literal strings, fixing a `dead_code` warning that broke `cargo test cli_help` under `-D warnings`.

- sl-viewer timeline property surface (WBS-6.2 #433): `crates/sl-viewer/tests/properties_viewer_timeline.rs` adds 16 proptest properties — `group_by_day` partitions every entry into exactly one group with no losses, orders groups chronologically, and labels empty-day groups `"(unknown date)"`. `normalize_widths` produces one width per input entry, all in `[MIN_PX, MAX_PX]`, with all-zero inputs collapsing to MIN_PX and the max-tokened entry rendering at MAX_PX. `model_hue` is deterministic and in `[0, 359]`; `model_color` matches `hsl(<hue>, 60%, 55%)`. `TimelineEntry::from_bundle` properties pin: `day` is the leading 10 chars of `created_at` (else empty), `goal` falls back to `"(no goal)"`, `model` falls back to `"unknown"`, `source_id` carries through, `message_count` / `has_acceptance` / `has_contract` match the input, and `token_count` falls back to 0 when no Intent slice carries a numeric `user_turn_count`.

- Wave-44 plan landed: `WAVE44_SCOPE.md` + `docs/ops/WAVE44_PERT.md` enumerate 6 close-out lanes (3 machine, 3 human-gated) for the 6 unpaid residuals from Wave-43 (396/402 → 402/402 target). Theme: stack-stability closure + i18n migration + eval coverage + supply-chain signing.
- Wave-44 reaudit (Wave-44-D): `audit/SCORECARD.md` refresh at commit `13c974f7` (machine-w44-reaudit); `docs/ops/TRACEABILITY.json` overall_audit wave=Wave-44 commit=13c974f7 (conservative hold at 396/402); `docs/ops/GAP_QA_MATRIX.md` C00 + C08 + PLAN-W8-B rows reflect Wave-44 closure (#368 W44-B6 corpus / #372 W44-B1 loom / #373 PERT correction). 2 of 3 machine lanes shipped 2026-07-24; remaining 6 raw pts across C04 L36 / C08 L76 / C11 L110.

Expand Down
Loading
Loading