Reviewed/Curated label wording induces error: it is the AUTHOR's act, and curation is a duty either way #34

Closed
opened 2026-08-11 16:41:40 +00:00 by agent.odin · 1 comment
Owner

The org label Reviewed/Curated (#55) and the pipeline_labels transcription in flake-ops' settings.forge-conformance (landed in lar.ad/flake-ops#100, commit "feat: bifrost reconciles the estate's namespace") both describe it as:

PR LABEL: preserve the commit line (rebase/ff); absence means squash. Set by approver.

That wording induced a real error today: an agent finishing lar.ad/flake-ops#100 read "Set by approver" and left the label off, waiting on the approver — for a PR whose entire point was a curated twelve-commit line. The owner's ruling (2026-08-11, on that PR):

  1. Setting Reviewed/Curated is the AUTHOR's act. The author knows whether the line was curated; the approver does not have to reverse-engineer it from the diff.
  2. Curation IS A DUTY before pushing any PR — fixups folded, feature-sized commits, described line. It is not something the label grants or the approver bestows. The label carries exactly one bit: how the steward merges — Reviewed/Curated present → preserve the line (rebase/ff); absent → squash.

Asks:

  • Reword org label #55, e.g.: PR LABEL: merge by rebase/ff to preserve the commit line; absence means squash. Set by the AUTHOR. (Curation itself is a duty on every PR — the label only picks the merge style.)
  • Update the matching description in flake-ops' settings.forge-conformance.pipeline_labels so the bound conformance apply asserts the corrected wording instead of re-imposing the stale one.
  • If Jostoph's steward logic ever reads this label on the PR webhook path, make sure it treats it as author-settable (no approver-permission gate).

🤖 Generated with Claude Code

The org label `Reviewed/Curated` (#55) and the `pipeline_labels` transcription in flake-ops' `settings.forge-conformance` (landed in lar.ad/flake-ops#100, commit "feat: bifrost reconciles the estate's namespace") both describe it as: > PR LABEL: preserve the commit line (rebase/ff); absence means squash. **Set by approver.** That wording induced a real error today: an agent finishing lar.ad/flake-ops#100 read "Set by approver" and left the label off, waiting on the approver — for a PR whose entire point was a curated twelve-commit line. The owner's ruling (2026-08-11, on that PR): 1. **Setting `Reviewed/Curated` is the AUTHOR's act.** The author knows whether the line was curated; the approver does not have to reverse-engineer it from the diff. 2. **Curation IS A DUTY before pushing any PR** — fixups folded, feature-sized commits, described line. It is not something the label grants or the approver bestows. The label carries exactly one bit: how the steward merges — `Reviewed/Curated` present → preserve the line (rebase/ff); absent → squash. **Asks:** - [ ] Reword org label #55, e.g.: `PR LABEL: merge by rebase/ff to preserve the commit line; absence means squash. Set by the AUTHOR. (Curation itself is a duty on every PR — the label only picks the merge style.)` - [ ] Update the matching description in flake-ops' `settings.forge-conformance.pipeline_labels` so the bound conformance apply asserts the corrected wording instead of re-imposing the stale one. - [ ] If Jostoph's steward logic ever reads this label on the PR webhook path, make sure it treats it as author-settable (no approver-permission gate). 🤖 Generated with [Claude Code](https://claude.com/claude-code)
Contributor

Progress, 2026-08-11:

  • Org label lar.ad #55 reworded on the forge (API act): "PR LABEL: merge by rebase/ff to preserve the commit line; absence means squash. Set by the AUTHOR. (Curation itself is a duty on every PR — the label only picks the merge style.)"
  • flake-ops' settings.forge-conformance.pipeline_labels transcription corrected in lar.ad/flake-ops#102 (also notes the correction in docs/forge-repo-baseline.md).
  • Jostoph's own declaration (nix/forgejo.nix, the Ting org label) corrected in #36, which closes this ticket on merge.

Ting's org labels do not exist on the live forge yet — reconciling the declaration remains the provider's job, so #36's wording lands on the forge when the labels are first created.

Progress, 2026-08-11: - [x] Org label lar.ad #55 reworded on the forge (API act): *"PR LABEL: merge by rebase/ff to preserve the commit line; absence means squash. Set by the AUTHOR. (Curation itself is a duty on every PR — the label only picks the merge style.)"* - [x] flake-ops' `settings.forge-conformance.pipeline_labels` transcription corrected in lar.ad/flake-ops#102 (also notes the correction in `docs/forge-repo-baseline.md`). - [x] Jostoph's own declaration (`nix/forgejo.nix`, the `Ting` org label) corrected in #36, which closes this ticket on merge. Ting's org labels do not exist on the live forge yet — reconciling the declaration remains the provider's job, so #36's wording lands on the forge when the labels are first created.
Sign in to join this conversation.
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
Ting/Jostoph#34
No description provided.