Skip to content

Execution evidence hardening: run/replay artifacts and sociosphere bridge#6

Merged
mdheller merged 6 commits intomainfrom
codex/run-replay-artifacts-v0-1
Apr 3, 2026
Merged

Execution evidence hardening: run/replay artifacts and sociosphere bridge#6
mdheller merged 6 commits intomainfrom
codex/run-replay-artifacts-v0-1

Conversation

@mdheller
Copy link
Copy Markdown
Member

@mdheller mdheller commented Apr 3, 2026

Summary

This PR fills the downstream evidence gap in agentplane by adding:

  • schemas/run-artifact.schema.v0.1.json
  • schemas/replay-artifact.schema.v0.1.json
  • scripts/emit_run_artifact.py
  • scripts/emit_replay_artifact.py
  • docs/sociosphere-bridge.md

Why

agentplane already emits validation and placement evidence. This PR adds the missing run/replay layer and documents how upstream sociosphere workspace artifacts may be carried through as references instead of being rediscovered by scanning the workspace.

Follow-up

  1. Wire these emitters into the real runner backend path.
  2. Optionally add CI/schema validation for the new artifact shapes.
  3. Teach the bundle generation path to pass upstream workspace artifact refs into the execution environment.

Comment thread scripts/emit_replay_artifact.py Dismissed
Copy link
Copy Markdown
Member Author

mdheller commented Apr 3, 2026

Paired upstream workspace-controller change is in SocioProphet/sociosphere PR #12. Review these together: sociosphere now defines the upstream artifact contract and workspace-spine workflow, while this PR adds the downstream run/replay artifact layer and sociosphere bridge note.

@mdheller mdheller marked this pull request as ready for review April 3, 2026 11:12
@mdheller mdheller merged commit da11905 into main Apr 3, 2026
5 checks passed
Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

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: 0094e07aed

ℹ️ 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".

@@ -0,0 +1,107 @@
#!/usr/bin/env python3
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Mark run/replay emitter scripts executable

This entrypoint is committed with mode 0644, so invoking it as documented (scripts/emit_run_artifact.py ...) fails with Permission denied on Unix unless callers prepend python3. Because the usage text in both new emitter scripts omits python3 and existing script entrypoints in this repo are executable, this breaks the advertised CLI path for the new evidence emitters.

Useful? React with 👍 / 👎.

Comment on lines +69 to +72
lane = (spec.get("policy") or {}).get("lane")
backend = ((spec.get("vm") or {}).get("backendIntent"))
if not lane or not backend:
die("bundle spec.policy.lane and spec.vm.backendIntent are required", 2)
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Enforce lane enum before emitting RunArtifact

The emitter only checks that spec.policy.lane is present, but schemas/run-artifact.schema.v0.1.json restricts lane to staging or prod. As written, a bundle with a non-empty invalid lane (for example dev) will still produce run-artifact.json, creating artifacts that violate the schema and can fail downstream validation or ingestion.

Useful? React with 👍 / 👎.

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.

2 participants