Skip to content

Follow-up: drain legacy unlabeled/non-draft auto-doc PR backlog (PR #4964) #4965

Description

@rysweet

Context

PR #4964 (auto-doc PR reconciliation) landed a strict, fail-closed identity gate
(is_auto_doc_pr) that reconciles the single-open invariant only for PRs
that pass ALL four conjuncts: title marker + resolved auto-doc author +
is_draft == true + auto-doc label.

During Step 18a review this was confirmed correct and security-sound: the strict
gate is a deliberate fail-safe so a human (or otherwise non-auto-doc) PR can
never be auto-closed. As a result, legacy title-marker PRs that are non-draft
or unlabeled are intentionally left untouched
and are not drained.

Scope of this follow-up (NON-BLOCKING)

Handle the historical/legacy backlog of "Update documentation with ..." PRs
that predate the label+draft convention (e.g. non-draft or missing the
simard-autonomous label), without weakening the security guard for
newly-generated auto-doc drafts.

Constraints / non-goals

  • MUST NOT relax the label or author conjuncts globally — that would reintroduce
    the spoofing risk flagged in Step 17c security review.
  • Any broadened handling must remain fail-closed and auditable (OTel-only).
  • Consider an explicit, narrowly-scoped legacy-migration path (e.g. a one-shot
    attribution check on author + title marker for PRs on the known auto-doc
    branch pattern) rather than loosening the steady-state gate.

Where

  • src/overseer/doc_pr_reconcile.rs (gate + executor)
  • docs/reference/auto-doc-pr-reconciliation-api.md (Scope section documents the
    current boundary)

Tracked as the documented follow-up referenced by the module docstring after
PR #4964.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions