Skip to content

docs(issues): [#2278] draft the order 5 self-audit gate specification - #2431

Open
da2ce7 wants to merge 10 commits into
torrust:developfrom
da2ce7:2278-order5-self-audit-gate-spec
Open

da2ce7 wants to merge 10 commits into
torrust:developfrom
da2ce7:2278-order5-self-audit-gate-spec

Conversation

@da2ce7

@da2ce7 da2ce7 commented Oct 3, 2026 •

Copy link
Copy Markdown
Contributor

Related to #2278

Summary

This spec-only PR drafts EPIC #2278 order 5, "Add the author self-audit gate to process-pr-review". It contains planning documentation only: no skill, template, validator or workflow change.

  • Draft specification for order 5. New folder-style draft at docs/issues/drafts/2278-author-self-audit-gate/ISSUE.md. The order is docs only. It takes its content from the EPIC's retrospective-improvement matrix: the rows routed to the self-audit gate (run the validator when it can run and do its checks by hand otherwise, re-derive everything after a second re-raise and after context compaction, corrections re-derived from named Git or GitHub commands, command and result before narrative, no self-referential counts, one fix per commit, git show --stat on cited commits, log stamps from Git and GitHub timestamps), the F65 counterpart to "update progressively", the manual part of F55, and the two PR docs(issues): [#2482] add the sub-EPIC specification for #2482 #2484 items the matrix assigns to order 5 (a manual sweep before each push to a reviewed branch, and anchoring each Current-tree verification to a heading or quoted phrase). Each gate pass is recorded as one append-only Processing Log entry naming the gated event and the commands run; no helper is a prerequisite and no per-finding field is added. Four commit points: the skill's gate section, template guidance, two checklist items, and the evidence with the EPIC row.
  • Stable references. The draft names matrix rows by F-ID or by source PR and a short quote, and cites the skill, the template, the validator and the EPIC by section heading or quote, so later merges into those files do not move its citations. The skill is at version 1.5 on develop 686a42f45; order 5 bumps it from there, or from the version Reconcile the residual audit-contract rules from the PR #2313 post-merge review #2362 leaves.
  • EPIC bookkeeping. Progress Log lines record the draft and the carried review items; row 5 keeps its TODO status and placeholder path until the issue exists.

Requested Maintainer Decisions

The maintainer agreed with the draft's proposed answers to questions 2 to 5 in review 5469277375; question 1 waits on the restated #2362 overlap below.

  1. Sequencing with Reconcile the residual audit-contract rules from the PR #2313 post-merge review #2362 (pending confirmation). Re-derived by quote on develop 686a42f45, Reconcile the residual audit-contract rules from the PR #2313 post-merge review #2362 rewrites, in the skill, Workflow step 7's superseded-thread sentence, step 8 ("Consolidate review bodies"), the Detail-Entry Fields sentence on FIXED resolution references, and the Completion Checklist item on consolidated responses; in the template, the Status Values bullet on outdated threads, the Resolution reference placeholder and the guidance paragraph after it, and the Completion Rules bullets on outdated threads, consolidated responses and citing a fix. This order rewrites none of those passages, so no sentence is changed by both. Both edit three of the same sections (Workflow step 7, the Completion Checklist, and the template guidance beside Finding Details), where this order inserts next to Reconcile the residual audit-contract rules from the PR #2313 post-merge review #2362's passages, and both bump the skill version. The rule for a fix outside the tree, already on develop, is the text Reconcile the residual audit-contract rules from the PR #2313 post-merge review #2362's F5 and F6 wording starts from. Which lands first? The second rebases over the first's text in those three sections and takes the next skill version.
  2. The copied ## Completion Rules section carries no gate bullet, because every new record would copy it and order 8 would byte-diff it. Agreed as proposed.
  3. One gate pass may precede several replies posted together when it covers every replied row. Agreed as proposed.
  4. F75 (RE_RAISE_OF does not say whose finding ID it takes) keeps its wording with order 8, where the register places it. Agreed as proposed.
  5. The EPIC's order-10 row lists "F55 as a self-audit step" while the matrix's F55 row places the manual step in T2; the draft keeps it here in its own commit so it can move unchanged. Agreed as proposed.
  6. On approval, the GitHub issue is created, the draft moves to docs/issues/open/ with its number, and row 5 links to it.

Files Touched

  • docs/issues/drafts/2278-author-self-audit-gate/ISSUE.md (new)
  • docs/issues/open/2278-2003-strengthen-pr-review-author-self-audit/EPIC.md (one Progress Log line for the draft; with the carry commit, the References line, a second Progress Log line and the frontmatter stamp)
  • docs/issues/open/2278-2003-strengthen-pr-review-author-self-audit/retrospective-improvement-matrix.md (the carry commit: one Disposition cell and the frontmatter stamp)
  • docs/pr-reviews/pr-2431-review/PR-REVIEW.md (new: the review audit record, rounds 1 and 2)

Rebase, carried items and round 2

PR #2494 merged into develop at 686a42f45 and also changed the #2278 EPIC, so this branch was rebased onto it; every other file merged cleanly. The EPIC conflict is resolved by keeping both sides: PR #2494's changes, including its two 2026-10-08 Progress Log entries, and this branch's 2026-10-03 entry for the draft, placed before them so the log stays chronological. docs(issues): [#2278] carry the PR #2494 review's deferred R2 and R4 into the order-5 change applies the two non-blocking findings that review 5467975631 deferred to this change: the References line drops the clause on when the PR #2484 retrospective reaches develop, and the PR #2484 sweep row's Disposition reads "Adopt (manual sweep); Defer (audit-body tool check); Out of scope (tree-wide tool checks)". Review 5469277375 is answered by docs(issues): [#2278] cite the skill, template, matrix and EPIC by stable references (F3, F4), docs(issues): [#2278] restate the #2362 overlap on current develop (F5) and this description (F6). docs(issues): [#2278] cover the PR #2484 items the matrix assigns to order 5 adds the two items the matrix has assigned to this order since PR #2494, and docs(pr-reviews): [#2278] record the maintainer's round 2 on PR #2431 records the round. After PR #2434 merged, the branch was rebased again, onto develop f960c78d7; its ten commits keep their content, and the #2278 EPIC conflict is resolved as the maintainer asked.

Merge order

PR #2434 merged into develop at f960c78d7, and this branch is rebased onto it. The rebase touched only the #2278 EPIC's frontmatter stamp and the position of one Progress Log entry, resolved as the maintainer asked: both sides' entries are kept, this branch's 2026-10-03 17:09 entry sits before develop's 2026-10-04 19:18 entry, and last-updated-utc stays "2026-10-09 11:16", the stamp of the merged log's latest entry.

Validation

At this head:

In a Linux container with the workspace nightly toolchain, at the rebased head 284095128, base develop f960c78d7 (the merge base): pre-commit profile gate exit 0 (78 s); linter markdown, linter cspell, linter lychee exit 0; frontmatter-validator --all 19 errors / 4 warnings at the head and 19 / 4 at develop re-measured; validate-audit-record.py --pr-number 2431 against the review comments captured after the round-2 replies were posted: 6 rows, 12 log entries, 0 failures; git range-diff against 7b7348dbf shows 8 commits equal and 2 differing only in the resolved EPIC hunks.

@da2ce7
da2ce7 requested review from josecelano and a balanced review from Copilot October 3, 2026 17:14

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot review overview

🟡 Changes recommended

The validation plan contains blocking inconsistencies that prevent the proposed workflow from being followed as written.

Review effort: Balanced
Findings: 1 High severity · 1 Medium severity

Open (2)
What changed in this PR

Drafts EPIC #2278’s order-5 author self-audit gate for the PR-review workflow. This PR changes planning documentation only.

Changes:

  • Defines gate requirements, implementation tasks, acceptance criteria, and verification scenarios.
  • Records the draft in the EPIC while leaving order 5 as TODO.
File Description
docs/​issues/​open/​2278-2003-strengthen-pr-review-author-self-audit/​EPIC.md Updates the timestamp and records the draft.
docs/​issues/​drafts/​2278-author-self-audit-gate/​ISSUE.md Specifies the gate, verification plan, and maintainer decisions.

💡 Configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread docs/issues/drafts/2278-author-self-audit-gate/ISSUE.md Outdated
Comment thread docs/issues/drafts/2278-author-self-audit-gate/ISSUE.md Outdated
da2ce7 added a commit to da2ce7/torrust-tracker that referenced this pull request Oct 3, 2026
da2ce7 added a commit to da2ce7/torrust-tracker that referenced this pull request Oct 5, 2026
@da2ce7
da2ce7 force-pushed the 2278-order5-self-audit-gate-spec branch from dc6e647 to 5d667d8 Compare October 5, 2026 21:18
@da2ce7

da2ce7 commented Oct 5, 2026

Copy link
Copy Markdown
Contributor Author

Rebased onto develop at 29afe946c (after #2439 merged). The branch had conflicted with develop since the 3 October commits docs(issues): align EPIC #2264 and #2278 owner metadata and docs(issues): refresh EPIC #2264 and #2278 update timestamps. The four commits replay unchanged; the only resolved hunk is the EPIC frontmatter, where last-updated-utc is set to the rebase minute and epic-owner takes the value on develop. Head 5d667d81779b870efad686af3142dbe334244689. Gate at this head: pre-commit gate rc 0, markdown/cspell/lychee clean, frontmatter validator at the develop baseline (22 errors / 4 warnings, none in this spec folder), audit record validator 2 rows / 6 log entries / 0 failures.

@josecelano josecelano left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review round 2. Changes requested.

The spec content and the round 1 audit check out at 5d667d817:

  • The cited lines resolve at the branch base.
  • Both git grep claims in the audit record match the stated lines.
  • validate-audit-record.py --pr-number 2431 --base 29afe946c exits 0.
  • linter markdown, cspell, and lychee all exit 0.

The problem is that develop has moved under the line-number citations (F3-F5).

Merge plan. I'm holding this PR until #2434 merges (#2494 has merged). Both PRs change the EPIC's frontmatter stamp and Progress Log. You can address F3-F5 now. If F4 switches to references that don't move, the rebase after #2434 should only need to resolve the EPIC frontmatter and Progress Log conflicts.

[Nit][F6] PR body: "Files Touched" omits docs/pr-reviews/pr-2431-review/PR-REVIEW.md, and "Validation" says citations resolve at develop eb96d2957, but the branch was rebased onto 29afe946c. Please refresh both after the rebase.

Open questions. On the six requested decisions: I'm fine with the draft's proposed answers for questions 2 to 5. Those are no gate bullet in the copied ## Completion Rules, one pre-posting pass covering several replies posted together, F75 wording staying with order 8, and F55 kept here in its own commit. I'll confirm question 1 once F5 restates the overlap with #2362.

Comment thread docs/issues/drafts/2278-author-self-audit-gate/ISSUE.md Outdated
Comment thread docs/issues/drafts/2278-author-self-audit-gate/ISSUE.md Outdated
Comment thread docs/issues/drafts/2278-author-self-audit-gate/ISSUE.md Outdated
da2ce7 added a commit to da2ce7/torrust-tracker that referenced this pull request Oct 9, 2026
@da2ce7
da2ce7 force-pushed the 2278-order5-self-audit-gate-spec branch from 5d667d8 to a987d74 Compare October 9, 2026 11:36
da2ce7 added a commit to da2ce7/torrust-tracker that referenced this pull request Oct 9, 2026
…torrust#2431

Review 5469277375 left three inline findings and one review-body
finding. The audit record gains their rows and detail blocks: F3 and F4
resolved by the stable-references commit, F5 by the overlap
restatement, and F6, the description's Files Touched and Validation,
by the replacement description, cited through the PR conversation
response as the skill prescribes for a fix outside the tree. The
Processing Log records the review, the rebase, the three commits from
their author dates, and this record.
@da2ce7

da2ce7 commented Oct 9, 2026

Copy link
Copy Markdown
Contributor Author

F6 (review 5469277375): FIXED in the PR description, which I replaced. Files Touched now lists docs/pr-reviews/pr-2431-review/PR-REVIEW.md and the matrix; a section records the rebase onto develop 686a42f45 and the carried R2 and R4; the six decisions carry your answers, with 1 pending your confirmation; Merge order follows PR #2434; and Validation reports the gate at the new head. Verified: the description no longer cites eb96d2957.

da2ce7 added a commit to da2ce7/torrust-tracker that referenced this pull request Oct 9, 2026
@josecelano

Copy link
Copy Markdown
Member

Round 2 re-check at 7b7348dbf: F3–F6 are accepted.

Decision 1: whichever of order 5 and #2362 has its implementation ready first lands first. The other rebases and takes the next skill version. With no passage rewritten by both, nothing else depends on the order. Decisions 1–5 are now settled.

Remaining before approval: #2434 has merged, and the branch now conflicts with develop in docs/issues/open/2278-2003-strengthen-pr-review-author-self-audit/EPIC.md. Please rebase onto develop. There are two hunks:

  1. last-updated-utc: keep "2026-10-09 11:16" from this branch, or restamp it at the rebase.
  2. Progress Log: keep both entries, with this branch's 2026-10-03 17:09 entry ("Drafted the order 5 specification…") before develop's 2026-10-04 19:18 entry, so the log stays chronological.

I'll re-check the resolution after the push and approve.

@josecelano josecelano self-assigned this Oct 10, 2026
da2ce7 added 10 commits October 11, 2026 10:38
…ication

Draft the EPIC torrust#2278 order 5 specification: a manual author self-audit
gate in process-pr-review before each audit commit, reply, thread
resolution and re-review request, covering matrix lines 35 and 39-47,
F65 and the manual part of F55; record the draft in the EPIC log.

This is the spec-first step: the GitHub issue is created, and the draft
moved to docs/issues/open/, only after the maintainer reviews it.
Related to torrust#2278
…red R2 and R4 into the order-5 change

Review 5467975631 approved PR torrust#2494 and deferred two non-blocking
findings to the next torrust#2278 change touching these files, because a push
would have dismissed the approval. R2: the References line still said
the PR torrust#2484 retrospective reaches develop when PR torrust#2484 merges, which
has happened, so the clause goes. R4: the PR torrust#2484 sweep row's
Disposition read "Defer (tool)", while its rationale defers only the
audit-body check and assigns the tree-wide checks to other owners; in
the matrix's vocabulary those are Out of scope, so the cell now says so.
A Progress Log entry records the carry.
…C by stable references

The order-5 draft cited the process-pr-review skill, the review
template, the validator, the torrust#2278 matrix and the EPIC by line number at
its old base. Since then develop added a skill section and two
sentences, rewrote a template paragraph and shifted the matrix rows, so
several citations named other text; the next merge into the EPIC would
move the rest. Each citation now names a section heading or a short
quote, matrix rows are named by F-ID or by source PR and quote, and the
skill's current version, 1.5, is stated where the draft says order 5
bumps it. The two earlier Progress Log entries named rows by line
number at their base and now name them the same way.
…ix assigns to order 5

PR torrust#2494 added the PR torrust#2484 retrospective's rows to the torrust#2278 matrix
and assigned two of them to order 5: a manual sweep before each push to
a reviewed branch, and anchoring each Current-tree verification to a
heading or quoted phrase. The order-5 draft predates them and named
neither, so the order would have closed without delivering two adopted
items. The draft now carries both in its Background, Scope table, tasks
and acceptance criteria, citing the matrix rows by source PR and quote,
and its Progress Log records that they entered with this round.
…ent develop

The draft's Dependencies bullet gave the planned rewrites of torrust#2362 as
line ranges from the old base and said this order rewrites none of
them. On develop a later skill change inserted two lines inside one of
those ranges and rewrote a template paragraph inside another, so both
the ranges and the conclusion needed re-deriving before the maintainer
decides which order lands first. The bullet now names by quote each
passage that torrust#2362 rewrites, states that no passage is rewritten by
both orders, names the three sections both edit and the shared version
bump, and notes that the fix-outside-the-tree rule already on develop
is the text that the F5 and F6 wording of torrust#2362 starts from.
…torrust#2431

Review 5469277375 left three inline findings and one review-body
finding. The audit record gains their rows and detail blocks: F3 and F4
resolved by the stable-references commit, F5 by the overlap
restatement, and F6, the description's Files Touched and Validation,
by the replacement description, cited through the PR conversation
response as the skill prescribes for a fix outside the tree. The
Processing Log records the review, the rebase, the three commits from
their author dates, and this record.
@da2ce7
da2ce7 force-pushed the 2278-order5-self-audit-gate-spec branch from 7b7348d to 2840951 Compare October 11, 2026 08:44
@da2ce7

da2ce7 commented Oct 11, 2026

Copy link
Copy Markdown
Contributor Author

Rebased onto develop f960c78d7 after PR #2434 merged: the new head is 28409512800c29f14d055e6c18f734ba366f4c78. The conflict was in the #2278 EPIC only, and the resolution follows your two hunks: last-updated-utc stays "2026-10-09 11:16", the stamp of the merged log's latest entry, and the Progress Log keeps both entries, with this branch's 2026-10-03 17:09 entry before develop's 2026-10-04 19:18 entry. git range-diff against 7b7348dbf shows 8 commits equal and 2 differing only in those hunks. The gate at the new head is in the description's Validation section.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants