Skip to content

fix(plugin): keep model-authored runtime status out of finalized reports - #703

Merged
mldangelo-oai merged 1 commit into
openai:mainfrom
russlan23:fix/report-runtime-status
Sep 17, 2026
Merged

mldangelo-oai merged 1 commit into
openai:mainfrom
russlan23:fix/report-runtime-status

Conversation

@russlan23

Copy link
Copy Markdown
Contributor

Summary

Finalized reports can retain model-authored scope.runtimeStatus text that contradicts the finalizer-owned completed and sealed state. This removes that free-form field from the Markdown projection so lifecycle presentation has one authoritative source.

Fixes #687.

Changes

  • Stop projecting scope.runtimeStatus into generated reports.
  • Keep the field in the manifest and draft schemas for backward compatibility.
  • Add a regression test that seals a scan containing stale pre-finalization narration and verifies the report omits it.
  • Update the checked-in completed-scan report fixture.

Testing

  • Focused finalization and report-projection tests: 2 passed.
  • Complete plugin suite in Python 3.12 Docker with Git and ripgrep: 1,033 passed, 9 skipped, 103 subtests passed.
  • git diff --check passed.

Risk and rollout

Low. This changes only deterministic Markdown presentation. Manifest data, schemas, artifact digests, CLI surface, and finalizer-owned lifecycle fields are unchanged. Existing runtimeStatus values remain readable by compatible consumers but are no longer presented as lifecycle status in regenerated reports.

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.

Copy link
Copy Markdown

I opened #959 with this implementation rebased onto current main. It preserves your three-file report-projection fix and regression coverage; the only changes are rebasing and validation metadata.

@mldangelo-oai

Copy link
Copy Markdown
Collaborator

@codex review

@mldangelo-oai mldangelo-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.

The report now relies on finalizer-owned lifecycle fields while retaining runtimeStatus in the manifest for compatibility. The regression covers stale pre-finalization text after sealing. No blocking findings in this diff.

@mldangelo-oai
mldangelo-oai merged commit 1518e93 into openai:main Sep 17, 2026
55 of 58 checks passed
@github-actions github-actions Bot mentioned this pull request Sep 18, 2026
3 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Finalized reports can retain stale pre-finalization status and contradict scan completion

3 participants