Commit graph

615 commits

Author SHA1 Message Date
codex-bot-andresmgsl
05f182fe29 release: stamp forge 0.6.2 refs and version 2026-08-24 13:21:40 +00:00
7bdae45c98 Merge pull request 'docs: prepare 0.6.2 upstream release notes' (#248) from build/246-upstream-release-fragment into main
Reviewed-on: heavy-duty/ceremony#248
Reviewed-by: glm-bot-andresmgsl <andres+5@heavyduty.builders>
Reviewed-by: kimi-bot-andresmgsl <andres+4@heavyduty.builders>
Reviewed-by: claude-bot-andresmgsl <andres+1@heavyduty.builders>
2026-08-24 12:06:54 +00:00
codex-bot-andresmgsl
d0f5e40fa1 docs: record upstream 0.6.x release notes 2026-08-24 10:54:49 +00:00
68b304d713 Merge pull request 'fix(labels): grade Forgejo review states' (#244) from codex-bot-andresmgsl/ceremony:build/235-forgejo-review-vocabulary into main
Reviewed-on: heavy-duty/ceremony#244
Reviewed-by: glm-bot-andresmgsl <andres+5@heavyduty.builders>
Reviewed-by: claude-bot-andresmgsl <andres+1@heavyduty.builders>
Reviewed-by: kimi-bot-andresmgsl <andres+4@heavyduty.builders>
2026-08-24 00:16:46 +00:00
codex-bot-andresmgsl
1cd46028ed test(labels): guard Forgejo comment ingestion 2026-08-23 23:29:09 +00:00
codex-bot-andresmgsl
c2cca7c1be test(labels): mark indirect filter probe call 2026-08-23 23:17:14 +00:00
codex-bot-andresmgsl
58e58f2ada fix(labels): grade Forgejo review states 2026-08-23 23:13:05 +00:00
codex-bot-andresmgsl
e5ebbf57fb test(labels): reproduce Forgejo review vocabulary gaps 2026-08-23 23:11:11 +00:00
17a13685a7 Merge pull request 'fix: distinguish Forgejo mergeability states' (#242) from codex-bot-andresmgsl/ceremony:build/236-forgejo-mergeable into main
Reviewed-on: heavy-duty/ceremony#242
Reviewed-by: kimi-bot-andresmgsl <andres+4@heavyduty.builders>
Reviewed-by: glm-bot-andresmgsl <andres+5@heavyduty.builders>
Reviewed-by: claude-bot-andresmgsl <andres+1@heavyduty.builders>
2026-08-23 22:52:09 +00:00
codex-bot-andresmgsl
8f9f7e560f docs: record Forgejo mergeability fix 2026-08-23 17:41:41 +00:00
codex-bot-andresmgsl
d3b7984a30 fix: distinguish Forgejo mergeability states 2026-08-23 17:41:10 +00:00
codex-bot-andresmgsl
2029c9f520 test: pin Forgejo mergeability distinctions 2026-08-23 17:40:06 +00:00
1f5dd39a98 Merge pull request 'feat: record release window membership separately' (#239) from codex-bot-andresmgsl/ceremony:build/230-membership-record into main
Reviewed-on: heavy-duty/ceremony#239
Reviewed-by: glm-bot-andresmgsl <andres+5@heavyduty.builders>
Reviewed-by: kimi-bot-andresmgsl <andres+4@heavyduty.builders>
Reviewed-by: claude-bot-andresmgsl <andres+1@heavyduty.builders>
2026-08-23 16:58:12 +00:00
codex-bot-andresmgsl
ad23842fe2 docs: define release membership records 2026-08-23 01:08:35 +00:00
codex-bot-andresmgsl
9a37db4b18 feat: derive release windows from membership records 2026-08-23 01:06:54 +00:00
codex-bot-andresmgsl
b7a2b31f84 feat: parse release membership records 2026-08-23 01:02:53 +00:00
codex-bot-andresmgsl
d493c993b7 test: drive release membership records 2026-08-23 01:01:17 +00:00
f69224cddc Merge pull request 'test: update roster drift fixture' (#237) from codex-bot-andresmgsl/ceremony:build/232-roster-fixture into main
Reviewed-on: heavy-duty/ceremony#237
Reviewed-by: claude-bot-andresmgsl <andres+1@heavyduty.builders>
Reviewed-by: kimi-bot-andresmgsl <andres+4@heavyduty.builders>
Reviewed-by: glm-bot-andresmgsl <andres+5@heavyduty.builders>
2026-08-23 00:52:04 +00:00
codex-bot-andresmgsl
832a41b647 test: update roster drift fixture 2026-08-22 22:22:53 +00:00
4f887a756f Merge pull request 'docs: adopt upstream 0.6.1 and 0.6.2 doctrine' (#233) from codex-bot-andresmgsl/ceremony:build/229-upstream-doctrine into main
Reviewed-on: heavy-duty/ceremony#233
Reviewed-by: claude-bot-andresmgsl <andres+1@heavyduty.builders>
Reviewed-by: kimi-bot-andresmgsl <andres+4@heavyduty.builders>
Reviewed-by: glm-bot-andresmgsl <andres+5@heavyduty.builders>
2026-08-22 22:16:23 +00:00
claude-lead-andresmgsl
27f702a018 fix: roster names the renamed triage identity
Second leg of the same debt #232 records. The operator renamed
cluade-bot-andresmgsl to claude-bot-andresmgsl on 2026-08-20, closing the
misspelling; the account kept its id so history followed it, but the
roster compares logins as strings and went on naming the old form.

Both functional carriers move together, as #232's spec requires: the
`panel=`/`triage-actors=` lines and the CONTRIBUTING identity table. The
conf/prose sync guard is why they cannot move apart.

Verified: `test/labels.test.sh` is 43/44 before and after — unchanged.
The one failure is #232 spec item 4 (the `glm-reviewer-andresmgsl`
fixture at :249, now a no-op mutation), which is untouched here and
remains that issue's only outstanding work.

Historical attributions elsewhere stay as written, per triage's
2026-08-17 ruling recorded on #232.

Refs #232
2026-08-20 23:23:30 +00:00
codex-bot-andresmgsl
9f07c91faf docs: group the 229 changelog fragment 2026-08-20 01:36:32 +00:00
codex-bot-andresmgsl
78532e0777 docs: define post-merge release edge handling 2026-08-19 03:51:49 +00:00
codex-bot-andresmgsl
df4782ced9 docs: clarify builder waits and handoff ordering 2026-08-19 03:51:20 +00:00
codex-bot-andresmgsl
d12cc3d84f docs: route vendored doctrine through the manifest 2026-08-19 03:50:10 +00:00
cluade-bot-andresmgsl
c2ef6a2fc2 fix: roster names the renamed -bot identities
Emergency operator-authorized hotfix, sibling of crew 36c6745: engine and
sweep panel requests fail on the pre-rename -reviewer names. ceremony#232
records the debt and verifies. Authorized by @andres in-session.
2026-08-17 22:50:13 +00:00
dbe58517dc Merge pull request 'docs: record delivered 0.6.1 runner exercise' (#227) from issue-217-runner-consumer into main
Reviewed-on: heavy-duty/ceremony#227
Reviewed-by: cluade-reviewer-andresmgsl <andres+1@heavyduty.builders>
Reviewed-by: glm-reviewer-andresmgsl <andres+5@heavyduty.builders>
Reviewed-by: kimi-reviewer-andresmgsl <andres+4@heavyduty.builders>
2026-08-09 21:09:36 +00:00
Codex Review
2aafc04018 docs: record delivered 0.6.1 runner exercise 2026-08-09 20:35:49 +00:00
github-actions[bot]
5693bee9f3 chore: bump main to 0.6.2-dev — a dev install must not impersonate 0.6.1 2026-08-09 19:47:02 +00:00
338cf5f754 Merge pull request 'release 0.6.1' (#226) from release-0.6.1 into main
Reviewed-on: heavy-duty/ceremony#226
Reviewed-by: cluade-reviewer-andresmgsl <andres+1@heavyduty.builders>
Reviewed-by: kimi-reviewer-andresmgsl <andres+4@heavyduty.builders>
Reviewed-by: glm-reviewer-andresmgsl <andres+5@heavyduty.builders>
2026-08-09 19:43:10 +00:00
Codex Review
b104eca141 docs: record 0.6.1 Forgejo rehearsal 2026-08-09 18:20:49 +00:00
Codex Review
ba3b17af88 release: stage 0.6.1 ceremony 2026-08-09 16:12:18 +00:00
0371f2cfd6 Merge pull request 'chore: restore kimi to the review panel (#224)' (#225) from issue-224-kimi-panel into main
Reviewed-on: heavy-duty/ceremony#225
Reviewed-by: cluade-reviewer-andresmgsl <andres+1@heavyduty.builders>
Reviewed-by: kimi-reviewer-andresmgsl <andres+4@heavyduty.builders>
Reviewed-by: glm-reviewer-andresmgsl <andres+5@heavyduty.builders>
2026-08-09 15:38:11 +00:00
Codex Review
5487f71ef8 chore: restore kimi to review panel (#224) 2026-08-09 14:57:09 +00:00
a953884826 Merge pull request '.github/labels.conf + CONTRIBUTING + labels.test — the panel names an identity that can actually review (#222)' (#223) from build/222-panel-glm into main
Reviewed-on: heavy-duty/ceremony#223
Reviewed-by: kimi-reviewer-andresmgsl <andres+4@heavyduty.builders>
Reviewed-by: glm-reviewer-andresmgsl <andres+5@heavyduty.builders>
2026-08-06 18:32:33 +00:00
b7a6aedc52 Merge pull request 'changelog.d/220.md — the 0.4.1 → 0.6.1 gap statement (#220)' (#221) from build/220-gap-fragment into main
Reviewed-on: heavy-duty/ceremony#221
Reviewed-by: kimi-reviewer-andresmgsl <andres+4@heavyduty.builders>
Reviewed-by: glm-reviewer-andresmgsl <andres+5@heavyduty.builders>
Reviewed-by: codex-reviewer-andresmgsl <andres+2@heavyduty.builders>
2026-08-06 16:53:16 +00:00
b63637b478 Merge pull request 'labels-sweep — pass bootstrap through the workflow_call boundary it was lost at (#215)' (#218) from build/215-bootstrap-bridge into main
Reviewed-on: heavy-duty/ceremony#218
Reviewed-by: kimi-reviewer-andresmgsl <andres+4@heavyduty.builders>
Reviewed-by: glm-reviewer-andresmgsl <andres+5@heavyduty.builders>
Reviewed-by: codex-reviewer-andresmgsl <andres+2@heavyduty.builders>
2026-08-06 16:53:04 +00:00
2b49d6ef59 fix(labels): the panel names an identity that can actually review (#222)
kimi-reviewer-andresmgsl is temporarily unavailable, and with a three-identity
panel it sits in the required set for every possible author — so no new PR
could converge while it is down. glm-reviewer-andresmgsl takes the seat.

The roster guard from #195 is bidirectional, so three files move together:
the conf, CONTRIBUTING's table, and the test's table-side mutation, which
must name an identity the table carries or it stops testing anything.

Refs #222
2026-08-06 11:33:42 +00:00
clad2
286403da78 docs(changelog): drop the entry that pre-decided #219 spec 6
'By decision rather than omission' published a back-tagging ruling that
belongs to the operator and has not been made. The fragment's authorized
scope is the measured gap, which the first two entries state
(@codex-reviewer-andresmgsl, !221 review).

Refs #220
2026-08-05 23:15:24 +00:00
clad2
b7775c68ea docs(changelog): the 0.4.1 -> 0.6.1 gap statement, as a grouped fragment
Three Changed entries naming what a reader comparing the two forges' tags
would otherwise reconstruct: 0.5.0/0.6.0 arrived by merge and were never
released here; the carried ## 0.6.0 section is upstream's record; and the
absent 0.6.0 tag is a decision, not an omission. Verified: eleven fragments
assemble cleanly with these entries present, shape/cite guards green.

Refs #220
2026-08-05 23:10:25 +00:00
clad2
960e581f91 test(labels): remove the remaining dead event-name assignments
All three schedule-simulation probes carried the assignment the script no
longer reads. This time the head was verified clean BEFORE the push, not
after. Refs #215
2026-08-05 21:39:45 +00:00
clad2
7d387dd936 test(labels): drop the now-dead event-name assignment SC2034 flagged
The script stopped reading GITHUB_EVENT_NAME with the input gate; the
previous commit pushed with this red because I trusted an && echo that
printed nothing. Refs #215
2026-08-05 21:35:55 +00:00
clad2
6986deede7 fix(labels): the bootstrap keys on the BOOTSTRAP input, never the event name
The venue drill caught what no hermetic test had: with the workflow_call
bridge delivering "no" perfectly, drill runs 16/17 still bootstrapped. The
script gated on GITHUB_EVENT_NAME = workflow_dispatch and never read
$BOOTSTRAP at all; the wrapper's only coupling was exporting the event name
for yes. Correct while an operator's manual dispatch was the only dispatch
there was — inert from #209 on, when the trigger job made every machine wake
a workflow_dispatch event. Runs 459/523 bootstrapped for this reason, not
for the input-delivery defect, which is real but was never the operative
cause of the observed re-upserts.

The script now gates on ${BOOTSTRAP:-no} = yes; the wrapper passes the input
through untouched; the hermetic suite pins the exact regression pair (a
dispatch event with no/unset creates and deletes nothing) alongside the
yes path's full create+delete assertions.

Refs #215
2026-08-05 21:32:21 +00:00
clad2
ceaf66bd13 docs(labels): claim the measured invariant, not an unmeasured Forgejo defect
The evidence shows the called workflow did not see the caller's event inputs
on THIS instance while the top level received them (runs 459/523 vs probe
6/7); it does not show what GitHub or a declared-and-passed input does, so
every prose site now states declare-and-pass as the measured-reliable channel
rather than attributing a drop to Forgejo (@codex-reviewer-andresmgsl, !218
blocker 2).

Refs #215
2026-08-05 21:18:29 +00:00
clad2
69d674cb67 docs(changelog): split the test entry under the 300-character bound
Pushed the previous commit with this red — the cite check names the bound and
I read only the first failure it printed. Refs #215
2026-08-05 21:08:51 +00:00
clad2
baa683211e fix(labels): pass bootstrap through the workflow_call boundary it was lost at
A called workflow cannot read the caller's dispatch inputs on this forge:
github.event.inputs is empty inside workflow_call even though the top-level
caller receives the value in both contexts (probe runs 6/7). The sweep's gate
read exactly that, so every dispatch-woken sweep bootstrapped — runs 459 and
523, ~20 label upserts per board event — while the trigger honestly logged
bootstrap=no.

The bridge, per the #6361 contract: labels-sweep.yml declares
workflow_call.inputs.bootstrap (string, default "no"); the dogfood caller and
the published CONSUMERS.md stub pass it via with.bootstrap with empty mapped
to "no" at the caller — kimi's edge: on schedule the top-level context is
empty, and an empty that slipped through would have turned every cron into a
bootstrap. The gate feeds the declared input to labels-reconcile unchanged,
so an invalid value meets the action's own yes|no refusal.

test/labels-bootstrap.test.sh pins every hop: the declared boundary, both
gates as the identity, no expression reading github.event.inputs (scoped to
${{ }} bodies — the file's prose names the context to explain it), the two
pass-throughs byte-exact, and the four value paths driven through the shipped
expressions into the action's real validator. Mutations: dropping the
declaration reds 4, dropping the pass-through reds 3, restoring the old gate
reds 2.

Refs #215
2026-08-05 21:06:29 +00:00
b9a940ae2a Merge pull request 'docs/RUNNER-PROBES.md — record the venue's first delivered drills (#202)' (#216) from build/202-first-drills into main
Reviewed-on: heavy-duty/ceremony#216
Reviewed-by: codex-reviewer-andresmgsl <andres+2@heavyduty.builders>
Reviewed-by: kimi-reviewer-andresmgsl <andres+4@heavyduty.builders>
2026-08-05 20:52:25 +00:00
clad2
bae6f21b15 docs(runner-probes): the workflow-token record is comment 6262, not 6263
Off-by-one in the evidence anchor; a record that links the wrong comment is
a record that does not resolve (@codex-reviewer-andresmgsl, !216 round 2).

Refs #202
2026-08-05 19:53:16 +00:00
clad2
07a32c4fa8 docs(runner-probes): restore !207's release notes; per-run links; honest security lesson
Four corrections from @codex-reviewer-andresmgsl on 9c17a9e:
- changelog.d/202.md keeps !207's merged Added section (my cat > had deleted
  64 lines of unreleased release notes) with the drills appended under Changed;
- run 1 and run 4 link their own probe issues — run 4 is the clean repeat
  after the redaction incident and deserves its own citation;
- the #205 record links the evidence per identity and drops the pseudo-JSON,
  claiming only what the cited runs measured;
- the security lesson states the real invariant: report content must never
  contain a credential expression OR value — variables are not laundering.

Refs #202
2026-08-05 19:48:04 +00:00
clad2
9c17a9e4d8 docs(runner-probes): record the venue's first delivered drills
The owed-probes list keeps delivered probes with their probe-issue URLs: a
claim like 'the asymmetry reproduces' should carry a link a reader can open.
Also corrects the #205 line's premise (the 500 was a bad-ref/unknown-workflow
diagnostic, not a broken route) and adds the two venue lessons the first
drills taught.

Refs #202
2026-08-05 19:40:56 +00:00