Skip to content

Add tool-surface diff MVP#48

Merged
pengfei-threemoonslab merged 3 commits intomainfrom
codex/tool-surface-diff-mvp
May 7, 2026
Merged

Add tool-surface diff MVP#48
pengfei-threemoonslab merged 3 commits intomainfrom
codex/tool-surface-diff-mvp

Conversation

@pengfei-threemoonslab
Copy link
Copy Markdown
Contributor

@pengfei-threemoonslab pengfei-threemoonslab commented May 7, 2026

Summary

  • Add JSON-first tool_surface_facts and tool_surface_diff fields with report schema v0.10.
  • Add agents-shipgate scan --diff-from and baseline schema v0.3 snapshots for surface comparisons.
  • Render the diff in Markdown reports, Release Evidence Packets, GitHub summaries, and PR comments while keeping release_decision.decision, exit behavior, and SARIF unchanged.
  • Add GitHub Action diff_from, diff_base, and diff_enabled support plus docs, examples, schemas, fixtures, and tests.
  • Address review feedback for accepted-debt overlap, pre-v0.10 reference reports, markdown escaping, tempdir cleanup, PR comment highlight ordering, broadness-aware scope diffs, no-op CLI summaries, and v0.2 baseline diff-reference coverage.

Validation

  • python scripts/generate_schemas.py
  • python -m ruff check .
  • python -m pytest (434 passed)

Copy link
Copy Markdown
Contributor Author

Addressed the pre-merge review feedback in 2a95d5d:

  • Fixed new_findings so baseline-matched accepted debt is excluded from the new bucket.
  • Preserved finding deltas for pre-v0.10 --diff-from reports that lack tool_surface_facts, while keeping the surface diff disabled with an actionable note.
  • Escaped tool/tag values in GitHub Step Summary highlights.
  • Cleaned up the temporary base worktree/tempdir after the current scan consumes the generated base report.
  • Interleaved PR comment highlights with removed controls prioritized so they are not hidden by high-risk tag volume.
  • Added extra="forbid" to the tool-surface diff models, documented scope-kind add/remove behavior, and regenerated schemas.

Validation rerun:

  • python scripts/generate_schemas.py
  • python -m ruff check .
  • python -m pytest (431 passed)

Copy link
Copy Markdown
Contributor Author

Addressed the latest non-blocking review nits in a331516:

  • Scope deltas now compare broad as well as tool membership.
  • CLI output now prints Tool-surface diff: no changes for enabled no-op diffs.
  • Added coverage for v0.2 baseline diff references that lack tool_surface_facts.

I left N1 as follow-up: adding description excerpts would change the JSON shape, while the MVP contract currently keeps deterministic hashes and the full current descriptions in the inventory.

Validation:

  • python scripts/generate_schemas.py
  • python -m ruff check .
  • python -m pytest (434 passed)

@pengfei-threemoonslab pengfei-threemoonslab marked this pull request as ready for review May 7, 2026 22:06
@pengfei-threemoonslab pengfei-threemoonslab changed the title [codex] Add tool-surface diff MVP Add tool-surface diff MVP May 7, 2026
@pengfei-threemoonslab pengfei-threemoonslab merged commit dc9b1ad into main May 7, 2026
1 check passed
@pengfei-threemoonslab pengfei-threemoonslab deleted the codex/tool-surface-diff-mvp branch May 7, 2026 22:32
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.

1 participant