Skip to content

Preserve durable provenance for superseded PR reviews - #63496

Closed
pelikhan with Copilot wants to merge 25 commits into
mainfrom
copilot/preserve-review-provenance-marker
Closed

pelikhan with Copilot wants to merge 25 commits into
mainfrom
copilot/preserve-review-provenance-marker

Conversation

Copilot AI commented Sep 25, 2026 •

Copy link
Copy Markdown
Contributor

GitHub strips HTML comment markers from submitted PR review bodies, preventing supersede-older-reviews from identifying prior blocking reviews created by the same workflow.

  • Durable provenance

    • Add a non-rendered Markdown reference marker alongside the legacy HTML marker.
    • Encode the caller workflow ID safely in the marker.
  • Safe supersession matching

    • Match complete legacy or durable marker lines only.
    • Decode durable marker IDs before comparison.
    • Keep caller-specific matching to avoid dismissing reviews from workflows sharing a reusable implementation.
[gh-aw-workflow-call-id]: # "owner%2Frepo%2Fcritic-review"
  • Regression coverage
    • Cover durable marker generation, encoding, exact matching, and cross-workflow isolation.

Generated by 👨‍🍳 PR Sous Chef · pi · gpt54 · 47.4 AIC · ⌖ 8.85 AIC · ⊞ 9.6K · ◷
Comment /souschef to run again


pr-sous-chef branch refresh requested from run https://github.com/github/gh-aw/actions/runs/36221620757

Generated by 👨‍🍳 PR Sous Chef · pi · gpt54 · 29.7 AIC · ⌖ 8.89 AIC · ⊞ 9.5K · ◷
Comment /souschef to run again


Generated by 👨‍🍳 PR Sous Chef · pi · gpt54 · 23.1 AIC · ⌖ 8.45 AIC · ⊞ 9.5K · ◷
Comment /souschef to run again


Generated by 👨‍🍳 PR Sous Chef · pi · gpt54 · 22.7 AIC · ⌖ 8.62 AIC · ⊞ 9.7K · ◷
Comment /souschef to run again


Generated by 👨‍🍳 PR Sous Chef · pi · gpt54 · 20.7 AIC · ⌖ 8.54 AIC · ⊞ 9.7K · ◷
Comment /souschef to run again


pr-sous-chef branch refresh requested by https://github.com/github/gh-aw/actions/runs/36255219324

Generated by 👨‍🍳 PR Sous Chef · pi · gpt54 · 19.1 AIC · ⌖ 8.58 AIC · ⊞ 9.7K · ◷
Comment /souschef to run again


Generated by 👨‍🍳 PR Sous Chef · pi · gpt54 · 26.1 AIC · ⌖ 8.97 AIC · ⊞ 9.5K · ◷
Comment /souschef to run again


pr-sous-chef

Branch refresh requested by PR Sous Chef run: https://github.com/github/gh-aw/actions/runs/36260722205

Generated by 👨‍🍳 PR Sous Chef · pi · gpt54 · 19.5 AIC · ⌖ 9.41 AIC · ⊞ 9.3K · ◷
Comment /souschef to run again


Generated by 👨‍🍳 PR Sous Chef · pi · gpt54 · 15.7 AIC · ⌖ 11.6 AIC · ⊞ 9.7K · ◷
Comment /souschef to run again


Branch refresh requested by pr-sous-chef run https://github.com/github/gh-aw/actions/runs/36277822788

Generated by 👨‍🍳 PR Sous Chef · pi · gpt54 · 16.5 AIC · ⌖ 8.7 AIC · ⊞ 9.7K · ◷
Comment /souschef to run again


Branch refresh requested by PR Sous Chef run https://github.com/github/gh-aw/actions/runs/36280932883

Generated by 👨‍🍳 PR Sous Chef · pi · gpt54 · 20.6 AIC · ⌖ 8.63 AIC · ⊞ 9.7K · ◷
Comment /souschef to run again


Run: https://github.com/github/gh-aw/actions/runs/36291473147

Generated by 👨‍🍳 PR Sous Chef · pi · gpt54 · 14.8 AIC · ⌖ 8.48 AIC · ⊞ 9.7K · ◷
Comment /souschef to run again


Generated by 👨‍🍳 PR Sous Chef · pi · gpt54 · 16.9 AIC · ⌖ 8.55 AIC · ⊞ 9.7K · ◷
Comment /souschef to run again


pr-sous-chef
Run: https://github.com/github/gh-aw/actions/runs/36296973970

Generated by 👨‍🍳 PR Sous Chef · pi · gpt54 · 33.4 AIC · ⌖ 8.76 AIC · ⊞ 9.7K · ◷
Comment /souschef to run again


pr-sous-chef
Run: https://github.com/github/gh-aw/actions/runs/36307747288

Generated by 👨‍🍳 PR Sous Chef · pi · gpt54 · 18.8 AIC · ⌖ 8.61 AIC · ⊞ 9.3K · ◷
Comment /souschef to run again


pr-sous-chef
Run: https://github.com/github/gh-aw/actions/runs/36310278424

Generated by 👨‍🍳 PR Sous Chef · pi · gpt54 · 21 AIC · ⌖ 8.69 AIC · ⊞ 9.7K · ◷
Comment /souschef to run again


Run: https://github.com/github/gh-aw/actions/runs/36333017097

Generated by 👨‍🍳 PR Sous Chef · pi · gpt54 · 13.1 AIC · ⌖ 8.64 AIC · ⊞ 9.7K · ◷
Comment /souschef to run again


Generated by 👨‍🍳 PR Sous Chef · pi · gpt54 · 18.8 AIC · ⌖ 8.47 AIC · ⊞ 9.7K · ◷
Comment /souschef to run again


pr-sous-chef branch refresh requested from run https://github.com/github/gh-aw/actions/runs/36334311673

Generated by 👨‍🍳 PR Sous Chef · pi · gpt54 · 25.1 AIC · ⌖ 8.55 AIC · ⊞ 9.3K · ◷
Comment /souschef to run again


pr-sous-chef branch refresh requested from https://github.com/github/gh-aw/actions/runs/36341840299

Generated by 👨‍🍳 PR Sous Chef · pi · gpt54 · 25.1 AIC · ⌖ 8.55 AIC · ⊞ 9.7K · ◷
Comment /souschef to run again


pr-sous-chef run https://github.com/github/gh-aw/actions/runs/36353466814

Generated by 👨‍🍳 PR Sous Chef · pi · gpt54 · 17 AIC · ⌖ 8.51 AIC · ⊞ 9.7K · ◷
Comment /souschef to run again


Generated by 👨‍🍳 PR Sous Chef · pi · gpt54 · 27.2 AIC · ⌖ 8.77 AIC · ⊞ 9.7K · ◷
Comment /souschef to run again


Generated by 👨‍🍳 PR Sous Chef · pi · gpt54 · 29 AIC · ⌖ 8.75 AIC · ⊞ 9.7K · ◷
Comment /souschef to run again


pr-sous-chef
Run: https://github.com/github/gh-aw/actions/runs/36356942311

Generated by 👨‍🍳 PR Sous Chef · pi · gpt54 · 17.9 AIC · ⌖ 8.5 AIC · ⊞ 9.7K · ◷
Comment /souschef to run again


pr-sous-chef

Branch refresh requested from PR Sous Chef run https://github.com/github/gh-aw/actions/runs/36364509582

Generated by 👨‍🍳 PR Sous Chef · pi · gpt54 · 30.2 AIC · ⌖ 8.84 AIC · ⊞ 9.2K · ◷
Comment /souschef to run again


Generated by 👨‍🍳 PR Sous Chef · pi · gpt54 · 15.4 AIC · ⌖ 8.63 AIC · ⊞ 9.7K · ◷
Comment /souschef to run again


Generated by 👨‍🍳 PR Sous Chef · pi · gpt54 · 27.9 AIC · ⌖ 8.58 AIC · ⊞ 9.3K · ◷
Comment /souschef to run again


pr-sous-chef
Run: https://github.com/github/gh-aw/actions/runs/36458860495

Generated by 👨‍🍳 PR Sous Chef · pi · gpt54 · 14.5 AIC · ⌖ 8.57 AIC · ⊞ 9.5K · ◷
Comment /souschef to run again


Generated by 👨‍🍳 PR Sous Chef · pi · gpt54 · 25.7 AIC · ⌖ 8.7 AIC · ⊞ 9.7K · ◷
Comment /souschef to run again


Generated by 👨‍🍳 PR Sous Chef · pi · gpt54 · 16.4 AIC · ⌖ 8.81 AIC · ⊞ 9.7K · ◷
Comment /souschef to run again


pr-sous-chef branch refresh requested from run https://github.com/github/gh-aw/actions/runs/36482718931

Generated by 👨‍🍳 PR Sous Chef · pi · gpt54 · 15.3 AIC · ⌖ 8.76 AIC · ⊞ 9.2K · ◷
Comment /souschef to run again


pr-sous-chef
run: https://github.com/github/gh-aw/actions/runs/36491907379

Generated by 👨‍🍳 PR Sous Chef · pi · gpt54 · 19.1 AIC · ⌖ 8.94 AIC · ⊞ 9.7K · ◷
Comment /souschef to run again


pr-sous-chef branch refresh requested in run https://github.com/github/gh-aw/actions/runs/36498477889

Generated by 👨‍🍳 PR Sous Chef · pi · gpt54 · 21.4 AIC · ⌖ 8.62 AIC · ⊞ 9.7K · ◷
Comment /souschef to run again

Copilot AI and others added 5 commits September 25, 2026 19:27
Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Copilot AI changed the title [WIP] Fix missing review provenance marker for supersede-older-reviews Preserve durable provenance for superseded PR reviews Sep 25, 2026
Copilot AI requested a review from pelikhan September 25, 2026 19:33
@pelikhan
pelikhan marked this pull request as ready for review September 25, 2026 20:24
Copilot AI balanced review requested due to automatic review settings September 25, 2026 20:24
@github-actions

github-actions Bot commented Sep 25, 2026 •

Copy link
Copy Markdown
Contributor

✅ Test Quality Sentinel completed test quality analysis.

Test Quality Sentinel skipped because pre-fetch PR data was unavailable: unable to fetch test file diff

🧪 Test quality analysis by Test Quality Sentinel

@github-actions

github-actions Bot commented Sep 25, 2026 •

Copy link
Copy Markdown
Contributor

✅ Design Decision Gate 🏗️ completed the design decision gate check. See the comment below for the result and any generated ADR draft.

No ADR enforcement needed: PR does not have the 'implementation' label and has ≤100 new lines of code in business logic directories.

🏗️ ADR gate enforced by Design Decision Gate 🏗️

@github-actions

github-actions Bot commented Sep 25, 2026 •

Copy link
Copy Markdown
Contributor

🧠 Matt Pocock Skills Reviewer has completed the skills-based review. ✅

🧠 Reviewed using Matt Pocock's skills by Matt Pocock Skills Reviewer

@github-actions

github-actions Bot commented Sep 25, 2026 •

Copy link
Copy Markdown
Contributor

✅ Ponytail Reviewer completed successfully!

Lean already. Ship.

Generated by Ponytail Reviewer for #63496

@github-actions

Copy link
Copy Markdown
Contributor

🔎 PR Code Quality Reviewer is reviewing code quality for this pull request...

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

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

Footer-disabled reviews still omit provenance, preventing subsequent supersession.

Get a fresh assessment by requesting another Copilot review.

Review effort: Balanced
Findings: 1 Medium severity

Open (1)
What changed in this PR

Adds durable workflow provenance to PR reviews so superseded blocking reviews can be identified after GitHub removes HTML markers.

Changes:

  • Adds encoded Markdown provenance markers and exact matching.
  • Uses durable markers when superseding reviews.
  • Adds regression coverage for encoding and workflow isolation.
File Description
actions/​setup/​js/​generate_footer.cjs Generates and matches durable markers.
actions/​setup/​js/​generate_footer.test.cjs Tests marker encoding and matching.
actions/​setup/​js/​pr_review_buffer.cjs Adds markers and uses them during supersession.
actions/​setup/​js/​pr_review_buffer.test.cjs Tests review submission and isolation.

💡 Add a code-review agent skill for context-aware, tailored reviews. Learn more in the docs.

Comment thread actions/setup/js/pr_review_buffer.cjs Outdated
const callerWorkflowId = process.env.GH_AW_CALLER_WORKFLOW_ID || "";
if (callerWorkflowId) {
body += "\n" + generateWorkflowCallIdMarker(callerWorkflowId);
body += "\n" + generateWorkflowCallIdMarker(callerWorkflowId) + "\n" + generateWorkflowCallIdReviewMarker(callerWorkflowId);

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Fixed in 0e9a9ec: caller provenance markers are now emitted whenever GH_AW_CALLER_WORKFLOW_ID is set, independent of shouldAddFooter/footerContext. Added a test for footer: none with an empty REQUEST_CHANGES body.

@github-actions

Copy link
Copy Markdown
Contributor

Comment Memory

test

Note

This comment is managed by comment memory.

It stores persistent context for this thread in the code block at the top of this comment.
Edit only the text inside the backtick fences; workflow metadata and the footer are regenerated automatically.

Learn more about comment memory

🔎 Code quality review by PR Code Quality Reviewer · copilot · gpt54 · 40.8 AIC · ⌖ 6.99 AIC · ⊞ 20.3K · ◷
Comment /review to run again

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Verdict

I didnt find a blocking regression in the changed lines.

What I checked
  • Durable marker generation and round-trip matching.
  • Exact-line matching to avoid accidental supersession.
  • Added tests covering encoding and cross-workflow isolation.

🔎 Code quality review by PR Code Quality Reviewer · copilot · gpt54 · 40.8 AIC · ⌖ 6.99 AIC · ⊞ 20.3K
Comment /review to run again

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Skills-Based Review 🧠

Applied /codebase-design and /tdd — solid regression coverage for the new durable marker, with a couple of maintainability/documentation nits.

📋 Key Themes & Highlights

Key Themes

  • Marker-matching duplication: matchesWorkflowCallId re-implements the line-split/trim/compare pattern that likely already exists for matchesWorkflowId. A shared primitive would reduce drift as more marker formats are added.
  • Dual-marker write is undocumented: The review body now always carries both the legacy HTML-comment marker and the new durable Markdown-reference marker. It's unclear from the code whether this is permanent (for older-review compatibility) or a migration step to be removed later — worth a comment or follow-up note.
  • No changeset: This repo uses .changeset/*.md for patch notes (confirmed via existing changesets like patch-add-workflow-call-id-marker.md), but this PR doesn't add one. Given this fixes a real bug (#63264) affecting supersede-older-reviews, a changeset entry would help release notes.

Positive Highlights

  • ✅ Good regression coverage: exact-match tests for legacy marker, durable marker, case-insensitive percent-encoding, non-standalone-line rejection, and cross-workflow isolation (CallerA vs CallerB).
  • ✅ Defensive decodeURIComponent wrapped in try/catch — malformed percent-encoding fails closed (returns false) rather than throwing, verified manually.
  • ✅ Root cause is correctly addressed at the source (encoding scheme that survives GitHub's HTML-comment stripping in review bodies) rather than patched around symptoms.

@copilot please address the review comments above.

🧠 Reviewed using Matt Pocock's skills by Matt Pocock Skills Reviewer · copilot · sonnet50 · 68.6 AIC · ⌖ 15.7 AIC · ⊞ 10.1K
Comment /matt to run again

* @param {string} callerWorkflowId - Calling workflow identifier
* @returns {boolean} Whether the review belongs to the calling workflow
*/
function matchesWorkflowCallId(body, callerWorkflowId) {

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

[/codebase-design] matchesWorkflowCallId duplicates the same body-scanning logic that matchesWorkflowId (below, unseen in this diff) already implements for the legacy marker. Consider factoring a shared matchesExactMarkerLine(body, marker) helper so both functions share one line-matching primitive instead of re-implementing split/trim/compare independently, reducing future drift when a third marker format is added.

💡 Suggested shape
function matchesExactMarkerLine(body, marker) {
  if (!body || !marker) return false;
  return body.split((r/redacted)?\n/).some(line => line.trim() === marker);
}

Then matchesWorkflowCallId could call this for the legacy check and layer the durable-marker regex check on top.

@copilot please address this.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Done in 0e9a9ec: added someMarkerLine/matchesExactMarkerLine helpers. matchesWorkflowCallId now uses them for both the legacy check and the durable regex check. I left matchesWorkflowId as it is because it uses substring matching on purpose for the combined XML marker format.

Comment thread actions/setup/js/pr_review_buffer.cjs Outdated
const callerWorkflowId = process.env.GH_AW_CALLER_WORKFLOW_ID || "";
if (callerWorkflowId) {
body += "\n" + generateWorkflowCallIdMarker(callerWorkflowId);
body += "\n" + generateWorkflowCallIdMarker(callerWorkflowId) + "\n" + generateWorkflowCallIdReviewMarker(callerWorkflowId);

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

[/tdd] Both markers (legacy HTML comment + durable Markdown reference) are now always appended together, doubling provenance metadata in every review body going forward. Is the legacy <!-- gh-aw-workflow-call-id --> marker still needed once the durable one is in place, or is this only kept for a migration window? If it's a permanent dual-write, a comment explaining why (e.g. backward compatibility with older superseding logic reading old reviews) would help future readers; if temporary, consider tracking removal in a follow-up issue/changeset.

@copilot please address this.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

This is a permanent dual-write. Other safe outputs share the legacy HTML marker and it is still read from older reviews. The durable marker is needed because GitHub strips HTML comments from submitted review bodies. I added a code comment explaining this in 0e9a9ec.

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Impeccable Skills Review — Selected modes: harden, audit (bug_fix: matcher/marker regression fix)

Reviewed the diff manually (line-by-line + a standalone Node harness replicating matchesWorkflowCallId's exact-line matching, percent-decoding, and error handling) since npm ci in this sandbox failed on a self-signed-cert network restriction and vitest could not be installed/run.

Findings: none blocking.

  • matchesWorkflowCallId correctly requires an exact trimmed-line match for both the legacy HTML marker and the new durable [gh-aw-workflow-call-id]: # "..." reference marker, so a marker embedded mid-sentence (e.g. "Quoted [...]") is correctly rejected — verified against the test's Quoted ... case.
  • Percent-decoding via decodeURIComponent is wrapped in try/catch, so a malformed encoded value degrades safely to no-match instead of throwing.
  • The old workflowCallMarker/body.includes(...) substring-matching logic (which could have false-matched a caller ID that is a prefix of another) was fully removed with no orphaned references left in pr_review_buffer.cjs.
  • Both markers are appended together in submitReview, preserving backward compatibility for any external tooling still scanning for the legacy HTML comment.
  • Test coverage added is good: durable marker generation/encoding, exact-line matching (including case-insensitive percent-encoding and cross-workflow isolation), and an integration-level supersede test using the new durable marker.

No inline comments needed — no actionable issues found.

🧵 Reviewed using Impeccable skills by Impeccable Skills Reviewer · copilot · sonnet50 · 61.7 AIC · ⌖ 13.2 AIC · ⊞ 8.1K

@gh-aw-bot

Copy link
Copy Markdown
Collaborator

pr-sous-chef
@copilot There is still forward progress needed on this PR.

Generated by 👨‍🍳 PR Sous Chef · pi · gpt54 · 47.4 AIC · ⌖ 8.85 AIC · ⊞ 9.6K · ◷
Comment /souschef to run again

…ew-provenance-marker

Co-authored-by: gh-aw-bot <259018956+gh-aw-bot@users.noreply.github.com>

Copilot AI commented Sep 28, 2026

Copy link
Copy Markdown
Contributor Author

pr-sous-chef
@copilot Maintainer follow-up landed after the prior sous-chef pass. Please address the latest request about standardized provenance footers, refresh the branch if needed, and continue ...

The standardized provenance footer request is done in 802a31f. Generated footers now show Provenance: [id](history-search) on its own <sub> line in place of the clock-only link.

I merged main into the branch (it was one commit behind) and pushed the merge. The messages, generate_footer, and pr_review_buffer suites pass (266 tests), and so does make agent-report-progress-no-test, which formats and lints the changed files.

What a maintainer still needs to do:

  1. Resolve the three review threads, which already have fix replies: r4108375564, r4108416780 and r4108416785.
  2. Start full CI on the new head. My pushes can't trigger it.
  3. Approve and merge.

@gh-aw-bot

Copy link
Copy Markdown
Collaborator

pr-sous-chef
@copilot Maintainer follow-up landed after the prior sous-chef pass and the current head appears close.

  • Please run the pr-finisher skill on the latest head, confirm the standardized provenance footer change is complete, and restate which review threads are ready to resolve.
  • Summarize the exact maintainer-only next steps, including any required CI re-run or approval.
  • A branch refresh was requested from sous-chef for this run: https://github.com/github/gh-aw/actions/runs/36478685619

Generated by 👨‍🍳 PR Sous Chef · pi · gpt54 · 16.4 AIC · ⌖ 8.81 AIC · ⊞ 9.7K · ◷
Comment /souschef to run again

Copilot AI commented Sep 28, 2026

Copy link
Copy Markdown
Contributor Author

pr-sous-chef
@copilot Maintainer follow-up landed after the prior sous-chef pass and the current head appears close.
...

Final pr-finisher pass completed on head 6502371. The standardized provenance footer is present in messages_footer.cjs for generated and agent-failure footers: it emits Provenance: [caller-workflow-id](history-search) on its own <sub> line, with documented/tested fallback behavior. Local make fmt, make lint, make test-unit, make test, and make recompile all pass; the tree is clean.

The three existing review threads are substantively answered and ready for a maintainer to resolve: r4108375564, r4108416780, and r4108416785. The prior CI failure was infrastructure/automation-related (report_incomplete: comment-memory write blocked) despite agent conclusion success; CI on the current head still needs a maintainer-triggered rerun, followed by approval and merge.

@gh-aw-bot

Copy link
Copy Markdown
Collaborator

pr-sous-chef
@copilot The current head looks close, but the last sous-chef follow-up was posted less than 30 minutes ago. Please continue from that thread, then after the cooldown window expires post a concise maintainer-facing update that confirms the replied-to review threads are ready to resolve and whether any CI rerun still needs human action.

If the branch stays clean, finish with the pr-finisher skill so maintainers can triage quickly.

Generated by 👨‍🍳 PR Sous Chef · pi · gpt54 · 15.3 AIC · ⌖ 8.76 AIC · ⊞ 9.2K · ◷
Comment /souschef to run again

Copilot AI commented Sep 28, 2026

Copy link
Copy Markdown
Contributor Author

pr-sous-chef
@copilot The current head looks close, but the last sous-chef follow-up was posted less than 30 minutes ago. Please continue from that thread, then after the cooldown window expires pos...

Final pr-finisher pass completed on the clean head 6502371; no branch refresh or code changes are needed. The three substantive review replies remain ready for maintainer resolution: r4108375564, r4108416780, and r4108416785. Local validation was already green on this head (make fmt, make lint, make test-unit, make test, make recompile). The current Copilot check is still running; any required full CI rerun must be triggered by a maintainer, followed by thread resolution, approval, and merge.

@gh-aw-bot

Copy link
Copy Markdown
Collaborator

pr-sous-chef
@copilot The current head looks complete; the remaining work is maintainer-facing review cleanup.

Generated by 👨🍳 PR Sous Chef

Generated by 👨‍🍳 PR Sous Chef · pi · gpt54 · 19.1 AIC · ⌖ 8.94 AIC · ⊞ 9.7K · ◷
Comment /souschef to run again

Co-authored-by: gh-aw-bot <259018956+gh-aw-bot@users.noreply.github.com>

Copilot AI commented Sep 28, 2026 •

Copy link
Copy Markdown
Contributor Author

@copilot include provenance in the generated by footer (on it's own line, sub) in all footers to standardized provenance. Make provenance identifier the link to the search that is the little clock tod...

Implemented in commit 9f2d8e1. All generated and agent-failure footers now use the standardized <sub> provenance line; the legacy {history_link} placeholder remains compatible but renders empty, so the old clock link is no longer emitted. Updated tests and footer documentation, and the impacted validation passed.

pr-sous-chef
@copilot Maintainer follow-up landed after the prior sous-chef pass. Please address the latest request about standardized provenance footers, refresh the branch if needed, and continue ...

Completed in commit 9f2d8e1. Standardized provenance is now the only history link in generated and agent-failure footers; legacy {history_link} remains a no-op for compatibility. Tests, lint, and final impacted validation pass.

@copilot include provenance in the generated by footer (on it's own line, sub) in all footers to standardized provenance. Make provenance identifier the link to the search that is the little clock tod...

Correction: the pushed commit is 77e68f2.

pr-sous-chef
@copilot Maintainer follow-up landed after the prior sous-chef pass. Please address the latest request about standardized provenance footers, refresh the branch if needed, and continue ...

Correction: the pushed commit is 77e68f2.

@gh-aw-bot

Copy link
Copy Markdown
Collaborator

@copilot There is still forward progress needed on this PR.

Generated by PR Sous Chef: https://github.com/github/gh-aw/actions/runs/36514477321

Generated by 👨‍🍳 PR Sous Chef · pi · gpt54 · 24.6 AIC · ⌖ 8.82 AIC · ⊞ 9.7K · ◷
Comment /souschef to run again

Copilot AI commented Sep 29, 2026

Copy link
Copy Markdown
Contributor Author

@copilot There is still forward progress needed on this PR.

  • The remaining unresolved review threads already have author responses and appear ready for maintainer review:...

Final pass on head bb4b5c2: the standardized provenance footer and durable review-marker changes are present, and the worktree is clean. The three replied-to threads are ready for maintainer resolution: #63496 (comment), #63496 (comment), and #63496 (comment). Local make fmt, make lint, make test-unit, make test, and make recompile passed. The Copilot check was still running at last inspection; full CI on this head remains unverified and needs a maintainer-triggered rerun. The earlier conclusion failure was due to report_incomplete: comment-memory write blocked after agent success, not a reproduced product/test failure. Maintainer next steps: resolve the threads, re-trigger/approve CI, then give the required approval and merge.

@gh-aw-bot

Copy link
Copy Markdown
Collaborator

pr-sous-chef
@copilot There is still forward progress needed on this PR.

  • The remaining unresolved review threads already have author follow-up on the current head.
  • Please post one concise maintainer-facing summary confirming which threads are ready to resolve, whether full CI still needs a human-triggered rerun, and then run the pr-finisher skill for final review-state cleanup.

Generated by PR Sous Chef: https://github.com/github/gh-aw/actions/runs/36521701091

Generated by 👨‍🍳 PR Sous Chef · pi · gpt54 · 21.7 AIC · ⌖ 8.79 AIC · ⊞ 9.7K · ◷
Comment /souschef to run again

Copilot AI commented Sep 29, 2026

Copy link
Copy Markdown
Contributor Author

pr-sous-chef
@copilot There is still forward progress needed on this PR.
...

Final pr-finisher pass on clean head bb4b5c2; it contains the current base. The three replied-to threads are ready for maintainer resolution: #63496 (comment), #63496 (comment), and #63496 (comment). The Copilot check is currently running; the last Copilot run and advanced-security check passed. Full CI has not run on this head, so a maintainer still needs to trigger/approve that run. Local make fmt, make lint, make test-unit, make test, and make recompile passed in the previous pass; no files changed since. I can’t resolve review threads or trigger CI here. Maintainer steps: resolve those threads, trigger full CI, then provide the required approval.

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.

Preserve review provenance marker for supersede-older-reviews

4 participants