Skip to content

feat(publish)!: share issue receipts with finding tracking - #1426

Open
mldangelo-oai wants to merge 23 commits into
mainfrom
mdangelo/codex/shared-issue-associations
Open

mldangelo-oai wants to merge 23 commits into
mainfrom
mdangelo/codex/shared-issue-associations

Conversation

@mldangelo-oai

@mldangelo-oai mldangelo-oai commented Oct 8, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

Share local issue history between CLI publication and plugin tracking. Tracking can reuse accepted associations across scans; CLI --skip-existing remains scoped to the selected occurrence.

Changes

  • Replace the Linear-only store with shared receipts for Linear, Jira, GitHub issues, and advisories; migrate existing records without losing accepted receipt replay or publication recovery.
  • Add model-facing tools to read and record finding issue associations while preserving sealed-source ownership and destination checks.
  • Keep optional readback diagnostics separate from the accepted issue identity and URL.
  • Merge current main, retain shared workbench runtime behavior, and isolate the publication fixture environment.

Testing

  • All five portable plugin checks, SDK types and formatting passed.
  • SDK publication tests: 43 passed. Python tests: 248 passed, 1 skipped.
  • Three focused MCP test files and fresh/resumed Deep Scan worker checks passed.
  • Three native review passes and a fresh independent verifier on this head found no actionable issues.
  • The full SDK suite is running. Live provider QA was not repeated.

Risk and rollout

Upgrade CLI and plugin together when sharing a state directory. Migration preserves existing Linear records but removes the old table, so older publishers cannot write afterward. A later readback failure neither invalidates an accepted association nor authorizes another issue creation. No additional CLI syntax is introduced by this refresh.

Public disclosure review

  • No customer, partner, prospect, or user identities, data, or identifying details are included.
  • No credentials, personal data, private source, scan findings, or nonpublic links or tickets are included.
  • I reviewed the branch name, title, description, commits, changes, comments, logs, screenshots, attachments, and links for public disclosure.

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 8, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-16T04:19:58.379151Z 2dba6b2 New commits
🔒 Security Review ✅ Completed 2026-10-16T04:19:42.837681Z 2dba6b2 New commits
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@github-actions github-actions Bot added the breaking-change Breaking change called out in generated release notes label Oct 8, 2026
@mldangelo-oai

Copy link
Copy Markdown
Collaborator Author

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Keep them coming!

Reviewed commit: 9bb06a1fba

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

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.

🔵 Needs a closer look

The irreversible schema replacement and cross-runtime fallback behavior warrant final human review despite extensive tests.

0 open findings

What changed in this PR

This PR unifies CLI publication and plugin tracking around shared local finding-issue receipts.

Changes:

  • Adds migration 44 and a shared finding-issues workbench command.
  • Exposes MCP tools for reading and recording receipts across supported trackers.
  • Adds migration, interoperability, sealed-artifact, and state-fallback coverage.
File Description
sdk/​typescript/​tests-ts/​runtime.test.ts Updates bundled command expectation.
sdk/​typescript/​tests-ts/​publication-store.test.ts Tests shared receipt persistence and migration.
sdk/​typescript/​tests-ts/​publication-integration.test.ts Tests CLI/plugin interoperability.
sdk/​typescript/​src/​publication-store.ts Adopts the shared receipt workbench API.
sdk/​typescript/​docs/​cli.md Documents shared history and upgrade compatibility.
plugins/​codex-security/​tests/​test_workbench_setup_and_migrations.py Updates migration expectations.
plugins/​codex-security/​tests/​test_workbench_db.py Updates schema-table assertions.
plugins/​codex-security/​tests/​test_finding_issue_receipts.py Tests receipt validation, migration, and replay.
plugins/​codex-security/​skills/​track-findings/​SKILL.md Integrates shared receipts into tracking guidance.
plugins/​codex-security/​skills/​track-findings/​references/​github-security-advisories.md Adds advisory receipt recording guidance.
plugins/​codex-security/​shared/​workbench-migrations.json Adds the shared receipt table migration.
plugins/​codex-security/​scripts/​workbench_publication.py Implements shared receipt operations.
plugins/​codex-security/​scripts/​workbench_db.py Dispatches the new workbench command.
plugins/​codex-security/​scripts/​workbench_cli.py Registers the consolidated command.
plugins/​codex-security/​mcp-app/​tests/​test_workbench_state_fallback.ts Tests receipt fallback recovery.
plugins/​codex-security/​mcp-app/​tests/​test_finding_issue_tools.ts Tests the new MCP tools.
plugins/​codex-security/​mcp-app/​tests/​test_compact_artifact_server.ts Verifies tool registration.
plugins/​codex-security/​mcp-app/​src/​server/​finding-issue-tools.ts Defines receipt MCP tools and schemas.
plugins/​codex-security/​mcp-app/​server.ts Registers tools and restores fallback selection.
docs/​plugin-connectors.md Documents shared tracker associations.

🧠 Review effort: Balanced


Give feedback about Copilot approvals in this survey to enter a drawing for a $150 gift card.

@mldangelo-oai mldangelo-oai changed the title feat!: share finding issue receipts across publication and tracking feat(publish)!: share finding issue receipts across publication and tracking Oct 8, 2026
@mldangelo-oai mldangelo-oai added area:artifacts Saved scan state, storage, sealing, recovery, history, and artifact integrity. area:integrations SDK/API surfaces, MCP integrations, hooks, and external application connections. area:publication Publishing findings or patches to Cloud, GitHub, GitLab, and issue trackers. labels Oct 8, 2026

@chatgpt-codex-connector chatgpt-codex-connector 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.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 279d39584f

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread plugins/codex-security/scripts/workbench_publication.py

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.

🟡 Changes recommended

Readback validation currently permits contradictory or incomplete status records in shared history.

2 open findings

🧠 Review effort: Balanced


Give feedback about Copilot approvals in this survey to enter a drawing for a $150 gift card.

Comment thread plugins/codex-security/mcp-app/src/server/finding-issue-tools.ts
Comment thread plugins/codex-security/scripts/workbench_publication.py

@mldangelo-oai mldangelo-oai left a comment

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

Clarified the existing contract: reuse records an established association; optional readback and diagnostic text do not undo that association. Keeping the supported no-read reuse path and optional diagnostics.

Comment thread plugins/codex-security/scripts/workbench_publication.py
Comment thread plugins/codex-security/mcp-app/src/server/finding-issue-tools.ts
Comment thread plugins/codex-security/scripts/workbench_publication.py
@mldangelo-oai mldangelo-oai removed area:artifacts Saved scan state, storage, sealing, recovery, history, and artifact integrity. area:publication Publishing findings or patches to Cloud, GitHub, GitLab, and issue trackers. area:integrations SDK/API surfaces, MCP integrations, hooks, and external application connections. labels Oct 8, 2026

@zcrab-oai zcrab-oai left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Reviewed the diff and relevant callers at 279d395, with an independent second pass. No actionable findings.

Focused validation: Actual model-facing issue tools MCP integration passed after selecting the source plugin and working Python explicitly. Python issue-receipts suite passed: 16 tests (143.83s).

Validation limits: Source review used the exact recorded head, not the current checkout. Full cross-platform/integration suites were not rerun.

CI still has failed, canceled, or unfinished checks. This source-review approval does not clear those checks.

@chatgpt-codex-connector chatgpt-codex-connector 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.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 6dc00c3f2b

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread plugins/codex-security/scripts/workbench_publication.py

@chatgpt-codex-connector chatgpt-codex-connector 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.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 0c0865166d

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread plugins/codex-security/mcp-app/src/server/finding-issue-tools.ts
Comment thread plugins/codex-security/scripts/workbench_publication.py

@zcrab-oai zcrab-oai left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Approved at d1fe058d05da after independent source review and validation. The prior receipt ownership, URL replay, and large-response concerns are addressed.

Test-isolation consideration: the connector-identity fixture calls preparation without its fixture environment, so severity lookup depends on ambient workbench state. Pass { ...OPTIONS, environment: completed.environment } at publication-integration.test.ts:991. This omission predates the PR; it is a test-isolation issue. The failing case passed when rerun with an isolated initialized ambient database.

Validation: plugin build passed; 39 SDK tests passed initially, and both connector-identity cases passed on the targeted rerun. All 22 Python receipt tests passed. One process-group assertion was blocked by the outer sandbox denying ps. Local checks used macOS ARM64; the full platform matrix was not rerun.

@chatgpt-codex-connector chatgpt-codex-connector 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.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: e6e33bec5f

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread plugins/codex-security/mcp-app/server.ts Outdated
@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Something went wrong. Try again later by commenting “@codex review”.

Unknown error
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@mldangelo-oai
mldangelo-oai requested a balanced review from Copilot October 11, 2026 21:18
@mldangelo-oai

Copy link
Copy Markdown
Collaborator Author

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Nice work!

Reviewed commit: 85b3369803

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

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.

🔵 Needs a closer look

The breaking database migration and cross-runtime publication semantics warrant final human review.

0 open findings

2 resolved since last review

🧠 Review effort: Balanced

@mldangelo-oai mldangelo-oai changed the title feat(publish)!: share finding issue receipts across publication and tracking feat(publish)!: share issue receipts with finding tracking Oct 12, 2026

@zcrab-oai zcrab-oai left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Reviewed the changes since the previous reviewed head in two passes, using exact source at 85b3369803d9 and prior review evidence. Unchanged portions of the large branch were not exhaustively re-audited.

Approved with these considerations still open:

Validation: CI-helper TypeScript compilation and plugin bundling passed locally; native binaries came from CI with matching compiled source inputs. Focused Python tests passed: test_finding_issue_receipts.py (22 passed in 8.50s). The full cross-platform suite was not run locally; Windows execution remains unverified here.

@alandelong-oai alandelong-oai left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Reviewed the actual diff at 5da54aa9ecb00c7abdce1f8254f67dafa19c8900 in three independent passes, including receipt transactions, migrations, CLI/plugin interoperability tests, and the tracking documentation. Sealed-source ownership and destination checks remain enforced; accepted write identity survives an optional readback failure; rejected receipt updates roll back together.

No blocking findings. The migration intentionally requires coordinated publisher upgrades, as documented. Static review only; migrations, builds, and integration tests were not executed.

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

breaking-change Breaking change called out in generated release notes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants