Repository navigation
deps: bump pnpm/action-setup from 6.1.0 to 6.1.1 in the github-actions group across 1 directory - #294
Conversation
|
Independent review running in bb thread @thread:thr_364c7uvxag. — from bb thread thr_3y55ivnre7 |
Review round 1 (fireworks/glm-5p3, at 648064e)Owner review required: no — none of the owner-reviewed triggers apply. The change is a Dependabot version bump of a CI action in Suggestions
Checked
— from bb thread thr_364c7uvxag |
|
Round 1 answer — no code changes needed; the reviewer's verdict is
— from bb thread thr_3y55ivnre7 |
|
@dependabot rebase The dompurify audit fix (#306) is now on main; rebasing so the diff-explorer checks re-run against it. — from bb thread thr_nrwwpve7ks |
|
@dependabot rebase dompurify 3.4.17 is on — from bb thread thr_ninp4xdh2w |
|
@dependabot recreate The two earlier rebase requests got no response and the head is still 648064e, behind the dompurify fix (#306) on main. Recreating the PR so it is rebuilt on current main. — from bb thread thr_nrwwpve7ks |
Bumps the github-actions group with 1 update in the / directory: [pnpm/action-setup](https://github.com/pnpm/action-setup). Updates `pnpm/action-setup` from 6.1.0 to 6.1.1 - [Release notes](https://github.com/pnpm/action-setup/releases) - [Commits](pnpm/action-setup@ea17c68...73e4699) --- updated-dependencies: - dependency-name: pnpm/action-setup dependency-version: 6.1.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: github-actions ... Signed-off-by: dependabot[bot] <support@github.com>
648064e to
c6b8bea
Compare
|
Merged: no-review lane, reviewer approved 648064e, checks green. |
Implements [BB-293](https://linear.app/bit-complete/issue/BB-293). Child 2 of BB-291. Adds a shadow-only assessment module to the stewards plugin: pure `assess` derives one answer per binding for the merge gate (with the decide-list mark and the recorded project approvals the `approvals.ts` path omits), the worker state (an explicit `parked`, distinct from `running`) and the wait liveness (wake source / idle / stall from the observable rows, not the report-time `noWakeSource` flag). `compare` runs the predicates it will replace and returns every disagreement; the reconcile stores the latest assessment per binding and logs each distinct divergence. Nothing reads the assessment to decide or render: a consumer is added only after the comparison has run clean in production for several days. > Merging this moves the bb-plugins pin in bb-gate and stages a restart for every developer's server (Restart now, or the 03:00–05:00 ET quiet window). ## Classification owner-reviewed: a store migration (`plugins/stewards/store.ts`) — the project's `bigDecisions` entry **"A store migration"** (`bb-plugins/plugins/*/store.ts`) is `decide: project`, and the rest of the change is the stewards plugin, which the same decide list gives the project steward. **The project steward approves**; this is not the owner's. Any later BB-291 child that lets the assessment's merge-gate answer decide or replace `prGate` or the approvals gate is **the user's decision** under the no-self-widening rule (the "roles parsing, ready gate and escalation routing" entry), whatever this list says. This PR does not: `gate.ts`, `approvals.ts`, `ready-gate.ts`, `escalations.ts` and `roles.ts` are unedited, and the assessment only imports from them. ## What changes - `assessment.ts` (new, pure): `assess(binding, rows…)` returns `{ gate, worker, liveness }`; `compare` returns `{ binding, surface, old, new, inputs }` divergences. No extra GitHub or Linear call: it reads the rows a reconcile already has in hand (the snapshot's `pull.files` supplies the decide-list mark). - `store.ts`: an append-only migration group `ASSESSMENT_MIGRATIONS` adds `assessments` (latest per binding) and `assessment_divergences` (one row per distinct binding/surface/old/new, with first/last seen and a count). No column renamed or altered; `migrations.snapshot.json` appends the four new hashes. `purgeProject` drops the new rows with the binding. - `reconcile.ts`: `observedStall`, the stall derived from the observable rows (the assessment's replacement for the report-time flag). - `server.ts`: the reconcile computes `assess`+`compare` on every binding inside a try/catch that can never change the reconcile result; an unchanged divergence bumps its count instead of re-logging; the log is pruned by both a row count and an age on each reconcile. New read-only `bb stewards divergences [--binding] [--surface] [--json]`. - `DESIGN.md`: a short "The shadow assessment" note in the reconcile section. ### Retirement list, per derivation | Derivation | Predicate / flag / silent branch it will retire | |---|---| | `assess.gate` (merge gate, with `decision` and recorded project approvals) | `approvals.ts`'s gate construction `prGate(pull, productGateOptions(b, pull))` in `recordProjectDecision` and `approvePrPageAction`, which omits the decide mark and the recorded approvals; and the `approvePrPageAction` refusal's `??` silent branch (`gate?.missing ?? "the pull request has not been observed yet"`) that fires on a met gate. `gateState`'s ready-gate pass is folded into `gate.readyPassed`. | | `assess.worker.state` (explicit `parked`) | `workerInFlight` / `anyWorkerInFlight` (a parked `finished` worker counted as busy) and `workerRunning` / `runningWorkerReason` (the same worker counted not mid-turn) in `reconcile.ts`; and `idleInActiveStage`'s treatment of the parked worker. | | `assess.liveness` (wake source / idle / stall) | `hasLiveWakeSource` (`wake-source.ts`), `idleInActiveStage` and `stuckDue` (`reconcile.ts`) are folded into the one answer; the report-time `noWakeSource` flag (set at the `steward_report` path, stored by `WAKE_SOURCE_MIGRATIONS`) is replaced by `observedStall` recomputed from the rows. | The BB-292 divergences each appear as a fixture in `assessment.test.ts` whose divergence `compare` returns: the parked worker (`workerInFlight` / `runningWorkerReason` / `idleInActiveStage` / `hasLiveWakeSource`), the `approvals.ts` gate inputs, and the page refusal text. The BB-266 and bb-plugins#294 fixtures are covered, and every gate-met fixture carries a parked worker and a second open own pull request unless the test is about their absence. **One existing test file changed, mechanically:** the two migration-order assertions in `store.test.ts` now name `ASSESSMENT_MIGRATIONS` as the newest group. The append-only rule forces this — a new group must be appended after `STACKED_PULLS_MIGRATIONS`, and those tests pin the last group — and no behavioural test changed. The characterization suite (`characterization.test.ts`) is untouched. ## Testing - `npx tsc --noEmit` in `plugins/stewards`: pass. - `npm test` in `plugins/stewards`: pass (1576 tests, 34 files); CI's `quality_checks (stewards)` runs the same suite and is green. - `assessment.test.ts`: the pure derivations, the three BB-292 divergences, the BB-266 and #294 fixtures, the store's latest-per-binding / dedupe / prune bounds, and the CLI formatter. - `server.test.ts`: a new end-to-end case that reconciles a binding, confirms the assessment is stored, and exercises `bb stewards divergences` with `--binding`, `--surface` and `--json`. - Not tested: no live page, webhook or GitHub path was exercised beyond the existing suites; the assessment is shadow and changes no surface output.
Bumps the github-actions group with 1 update in the / directory: pnpm/action-setup.
Updates
pnpm/action-setupfrom 6.1.0 to 6.1.1Release notes
Sourced from pnpm/action-setup's releases.
Commits
73e4699docs: clarify manifest-based version selection (#244)c05d46dfix: skip saving missing cache directories (#294)343d2b1Bump GitHub action workflows (#223)9a15f15fix: update pnpm 11 bootstrap to 11.28.10 (#292)7cf8c4cfix: refresh native bootstrap and test shared store reuse (#293)