Skip to content

ci(test): add mint provenance repro marker - #8251

Closed
ralphbean wants to merge 1 commit into
fullsend-ai:mainfrom
ralphbean:foreign-branch
Closed

ralphbean wants to merge 1 commit into
fullsend-ai:mainfrom
ralphbean:foreign-branch

Conversation

@ralphbean

Copy link
Copy Markdown
Member

Temporary harmless marker for testing mint workflow provenance. No credential handling or agent behavior changes.

Signed-off-by: Ralph Bean <rbean@redhat.com>
@qodo-code-review

Copy link
Copy Markdown

PR Summary by Qodo

Add a provenance reproducer marker to the dispatch workflow

⚙️ Configuration changes 🕐 Less than 5 minutes

Grey Divider

AI Description

• Add a temporary log marker to the route job for mint provenance testing.
• Leave credential handling, routing, and agent behavior unchanged.
High-Level Assessment

A log-only step is appropriate for this temporary reproducer: it provides a recognizable marker without changing workflow logic or handling credentials.

Files changed (1) +3 / -0

Other (1) +3 / -0
reusable-dispatch.ymlEmit a provenance reproducer marker in the route job +3/-0

Emit a provenance reproducer marker in the route job

• Adds an unconditional echo step before event-action validation. The step prints 'MINT_PROVENANCE_REPRO_FOREIGN_BRANCH' for provenance testing without changing routing or agent behavior.

.github/workflows/reusable-dispatch.yml

@qodo-code-review

Copy link
Copy Markdown

Code Review by Qodo

🐞 Bugs (0) 📘 Rule violations (1) 🔗 Cross-repo conflicts (0) 📜 Skill insights (0)

Grey Divider


Informational

1. Workflow change lacks required guide review 📘 Rule violation § Compliance
Description
The added provenance marker modifies a GitHub Actions workflow without recording that
docs/contributing/ci-workflows.md was consulted. Because this workflow runs in the dispatch path
and declares secret inputs while supporting pull-request contexts, the missing review evidence
affects the workflow change as a whole.
Code

.github/workflows/reusable-dispatch.yml[R117-118]

+      - name: Mint provenance reproducer marker
+        run: echo "MINT_PROVENANCE_REPRO_FOREIGN_BRANCH"
Relevance

● Weak

Recent matching workflow-guide compliance finding was rejected for a similar pull_request_target
workflow change.

PR-#7845

ⓘ Recommendations generated based on similar findings in past PRs

Evidence
The changed workflow adds a new step at the cited lines, while the workflow declares secret inputs
and contains pull-request-target handling. The PR description only describes a temporary marker and
does not state that docs/contributing/ci-workflows.md was consulted.

Rule 3201588: Consult CI workflow guide when modifying GitHub Actions workflows or secrets
.github/workflows/reusable-dispatch.yml[117-118]

Agent prompt
The issue below was found during a code review. Follow the provided context and guidance below and implement a solution

## Issue description
The workflow was modified without explicit evidence that `docs/contributing/ci-workflows.md` was consulted, as required for workflow changes involving dispatch and secret-handling contexts.

## Fix Focus Areas
- .github/workflows/reusable-dispatch.yml[117-118]

## Recommended Fix
Add an explicit statement to the PR description or an appropriate inline comment confirming that `docs/contributing/ci-workflows.md` was reviewed and that the workflow change follows its documented conventions.

ⓘ Copy this prompt and use it to remediate the issue with your preferred AI generation tools

Dismiss ↗ | View ↗


Grey Divider

Context sources
✅ Compliance rules (platform): 89 rules
✅ Skills: 5 invoked
  writing-user-docs
  writing-adrs
  check-patch-coverage
  cutting-releases
  adr-corner
✅ Cross-repo context — repo relationships
  Explored: repo: fullsend-ai/experiments (sha: 3f1614fa) — View relationship
  Explored: repo: fullsend-ai/.fullsend (sha: 7c163cad) — View relationship
  Explored: repo: fullsend-ai/metrics (sha: aceacd33) — View relationship
  Explored: repo: fullsend-ai/pi-xai-vertex (sha: 8f50bdda) — View relationship
  Explored: repo: fullsend-ai/scribe (sha: 0f3eb528) — View relationship
  Explored: repo: fullsend-ai/agents (sha: f3dd8897) — View relationship
  Explored: repo: fullsend-ai/pi-anthropic-vertex (sha: 960eff35) — View relationship
  Explored: repo: fullsend-ai/mlflow-assessments (sha: 2fdb0120) — View relationship
Review mode: Auto: 🚀 Fast: Localized harmless CI marker with no credentials or behavior changes.

Grey Divider

Tip of the day
💡 Did you know, you can show, collapse, or hide each part of a finding: code, evidence, and all

More tips ↗ | Customize Qodo ↗ | Qodo docs ↗

Grey Divider

Qodo Logo

@fullsend-ai-review

fullsend-ai-review Bot commented Oct 9, 2026 •

Copy link
Copy Markdown

🤖 Finished Review · ✅ Success · Started 12:40 PM UTC · Completed 12:50 PM UTC

Commit: 7bd8e73 · View workflow run →

Runtime: pi · Model: sonnet → claude-sonnet-5-5 · Effort: high · Cost: $1.28

@codecov

codecov Bot commented Oct 9, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@fullsend-ai-review fullsend-ai-review Bot added the risk/elevated PR risk: elevated label Oct 9, 2026
@fullsend-ai-review

Copy link
Copy Markdown

Risk Assessment: elevated (3/5)

Details

Protected CI workflow modification with no accompanying tests on a high-churn, regression-prone dispatch workflow with extensive author contention, elevated despite minimal diff size and established author.

@fullsend-ai-review

Copy link
Copy Markdown

Review

Findings

High

  • [protected-path] .github/workflows/reusable-dispatch.yml:117 — The PR modifies a protected path (.github/workflows/reusable-dispatch.yml) and has no linked issue; the description only calls the change a temporary test marker and does not justify modifying governance/infrastructure files. Human approval is always required for protected-path changes.

Medium

  • [intent-alignment] .github/workflows/reusable-dispatch.yml:117 — The PR says it is a temporary reproducer marker for testing mint workflow provenance. It adds a debug step to the core production reusable dispatch workflow. That workflow is shared by downstream callers, so if the PR merges, the step runs on every Route job invocation. A transient test step does not belong permanently in this workflow.
    Remediation: If the PR exists only to test CI or reproduce provenance behavior on a branch, convert it to draft or close it once verification is done, so the temporary marker never reaches main. If permanent provenance verification is needed in reusable-dispatch.yml, define that requirement and add permanent instrumentation for it.

Next steps:

  • /fs-fix — agent addresses review findings automatically
  • /fs-fix <your instruction> — agent fixes with your specific guidance
  • Push commits directly — review re-runs automatically on push
  • /fs-fix-stop — disable automatic fix runs for this PR

@fullsend-ai-review fullsend-ai-review Bot 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.

See the review comment for full details.

trigger_source: ${{ steps.route.outputs.trigger_source }}
event_payload: ${{ steps.payload.outputs.event_payload }}
steps:
- name: Mint provenance reproducer marker

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

[high] protected-path

The PR modifies a protected path (.github/workflows/reusable-dispatch.yml) and has no linked issue; the description only calls the change a temporary test marker and does not justify modifying governance/infrastructure files. Human approval is always required for protected-path changes.

trigger_source: ${{ steps.route.outputs.trigger_source }}
event_payload: ${{ steps.payload.outputs.event_payload }}
steps:
- name: Mint provenance reproducer marker

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

[medium] intent-alignment

The PR says it is a temporary reproducer marker for testing mint workflow provenance. It adds a debug step to the core production reusable dispatch workflow. That workflow is shared by downstream callers, so if the PR merges, the step runs on every Route job invocation. A transient test step does not belong permanently in this workflow.

Suggested fix: If the PR exists only to test CI or reproduce provenance behavior on a branch, convert it to draft or close it once verification is done, so the temporary marker never reaches main. If permanent provenance verification is needed in reusable-dispatch.yml, define that requirement and add permanent instrumentation for it.

@ralphbean ralphbean closed this Oct 9, 2026

This branch was previously deployed

1 inactive deployment
dev — 7bd8e730 Deployed Oct 9, 2026 by ralphbean via playback #15971
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

risk/elevated PR risk: elevated

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant