Skip to content

eval: prove stable agent identity and presentation metadata - #70

Open
schickling-assistant wants to merge 2 commits into
compoundingtech:mainfrom
schickling-assistant:schickling-assistant/2026-07-31-agent-presentation-contract-current
Open

eval: prove stable agent identity and presentation metadata#70
schickling-assistant wants to merge 2 commits into
compoundingtech:mainfrom
schickling-assistant:schickling-assistant/2026-07-31-agent-presentation-contract-current

Conversation

@schickling-assistant

@schickling-assistant schickling-assistant commented Jul 31, 2026

Copy link
Copy Markdown
Contributor

Problem

The stable-identity change spans schema, routing, authoring, PTY projection, lifecycle reconciliation, and durable agent state. Unit coverage in st2 cannot by itself prove that those layers compose without restarting an agent or making presentation an automation alias.

Goal

Provide model-free acceptance evidence for compoundingtech/st2#136: stable identity, optional non-unique name, optional enduring description, exact-ID-only behavior, and presentation updates that preserve the live process and durable state.

Decisions

  • Exercise the real st2 and PTY binaries, catalogs, inboxes, context, resources, and PTY metadata; do not mock the cross-layer boundary.
  • Keep current activity out of Agent Spec; the eval surface has no summary field.
  • Update the lifecycle assertion to current st2 taxonomy: replacing a dead stable task is restarted, not launched.
  • Test the exact source candidate with a reproducible Nix build, but keep the checked-in portable pin at 0fed14b until an immutable post-merge release exists. No prerelease tag, fake asset metadata, compatibility branch, or weakened preflight is introduced.

Review and merge state

This PR is ready for review, so reviewers can assess the eval contract and the four repaired acceptance-proof gaps on the exact head below. Ready-for-review does not mean merge-ready.

Merge remains blocked until all of the following are true:

  • the exact PTY and st2 product heads have accepted product-owner verdicts;
  • PTY #142 and st2 #136 are merged and st2 publishes immutable portable artifacts;
  • this PR is repinned to those published artifacts; and
  • bin/check-corpus.sh completes green against the published result.

Current dependency state:

Dependency Exact head GitHub state Acceptance state
PTY #142 0deb3f0ad6eb07f30ad9dea6392b843d4495ad5f Ready, unmerged The exact-head owner acceptance required by this PR must be recorded on the product PR
st2 #136 79b0e483d1a2f324386ac57498ca45d78157f4c7 Ready, unmerged Exact-head maintainer review is RED; its architectural and owner gates remain open

Verification

Candidate under test:

Input Exact value
evals source b9226b9d8cb5be958f4d8a7d948b798746f9fa1c
st2 PR compoundingtech/st2#136
st2 source 79b0e483d1a2f324386ac57498ca45d78157f4c7
PTY source locked by st2 0deb3f0ad6eb07f30ad9dea6392b843d4495ad5f
Nix-built version st2 0.1.0+79b0e48
st2 binary SHA-256 fceaa76a1f77948c52a411de3c2b5d6c70c4f1298890c19516f54e5a24751514
Surface Result
agent-presentation-contract 9 PASS / 0 FAIL / 9 gating
agent-presentation-continuity 6 PASS / 0 FAIL / 6 gating
KDL parse gate 115 files PASS
Semantic load 60 maintained cells + 13 nested catalogs PASS
Fixture reset, harness, and VRS mutation gates PASS
Independent post-boundary checks PASS
git diff --check PASS

The strengthened contract now also proves rename --clear receipts/source preservation, the complete invalid-description format matrix, transitive supervisor-ancestor authorization, and that descriptions cannot route messages.

The candidate-backed corpus passed through the VRS mutation gates, then stopped at the dev4 environment's configured Git signing program, which is unavailable there (/usr/local/bin/op-ssh-sign). The guard was not bypassed, so this is not claimed as a complete corpus green. Preflight closed-set mutations, overnight policy, current-tree PII, reachable-history PII, generated catalog, and diff checks passed independently after that boundary.

Complexity

The PR adds two self-contained cells and reuses the existing eval harness. It introduces no production dependency or compatibility layer.

Concerns

Both product dependencies are ready for review but remain unmerged. The checked-in corpus still validates the published portable st2 source 0fed14b. This PR is reviewable now but cannot merge until the gates in Review and merge state are satisfied.

Friction & bottlenecks

The dev4 Git signing configuration prevents the synthetic commit fixture from completing because its configured signing program is absent. The proof records that boundary explicitly and does not weaken or bypass it.

Follow-ups

After PTY #142 and st2 #136 are accepted and merged and release-portable publishes immutable assets:

  • update full/short st2 source pins;
  • update portable binary, archive, and SHA256SUMS hashes;
  • record the immutable release tag and successful run URL;
  • rerun bin/check-corpus.sh from its published-pin preflight through completion.

References

Refs compoundingtech/st2#128.
Refs compoundingtech/st2#136.
Depends on compoundingtech/pty#142.
Supersedes #66.

agent-session-id: dev3.cos-fr-relay
agent-tool: Codex
agent-tool-version: 0.145.0
agent-model: gpt-5.6-sol
agent-runtime-profile: /nix/store/qlk5xbdfmj5nn1q145j0fx73f2pmdjj7-coding-agent-runtime-profile/share/coding-agents/profile.json
agent-skills-manifest: /nix/store/2km8dbiyv3wc484l1hd8n2lh65121qvq-agent-skills-corpus/share/agent-skills/manifest.json
tooling-profile: dotfiles@unknown-dirty

@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: 3cac84f781

ℹ️ 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 cells/agent-presentation-contract/fixture/contract.sh
Comment thread cells/agent-presentation-contract/fixture/contract.sh
Comment thread cells/agent-presentation-contract/fixture/contract.sh
Comment thread cells/agent-presentation-contract/fixture/contract.sh

myobie commented Jul 31, 2026

Copy link
Copy Markdown
Collaborator

Hold at exact head 3cac84f781d3e952b814399e0d6425e2ab7b1001: this PR is not merge-ready.

  • The body pins superseded st2 #136 head dcf77b7; its current head is 47047dedb16053d86675658bcd31ef76c014ca6b, and that dependency remains an open draft.
  • PTY #142 at 706e4f5e4cd88fe24ce5b8afb7dbd507bd3e215c is also an open draft with accepted review blockers.
  • The PR body itself says readiness must wait for st2 #136 to merge and publish, followed by immutable portable-pin updates and a complete bin/check-corpus.sh run. The recorded corpus run stopped before completion, so it is not final evidence.
  • The exact head also has unresolved acceptance-proof review comments.

Please return PR70 to draft if appropriate. Before marking it ready again, restack/re-pin against the accepted dependency artifacts, address the proof gaps, and record a complete model-free corpus green against the published merged st2/PTY result.

agent-session-id: dev3.cos-fr-relay
agent-tool: Codex
agent-tool-version: 0.145.0
agent-model: gpt-5.6-sol
agent-runtime-profile: /nix/store/qlk5xbdfmj5nn1q145j0fx73f2pmdjj7-coding-agent-runtime-profile/share/coding-agents/profile.json
agent-skills-manifest: /nix/store/2km8dbiyv3wc484l1hd8n2lh65121qvq-agent-skills-corpus/share/agent-skills/manifest.json
tooling-profile: dotfiles@unknown-dirty
@schickling-assistant
schickling-assistant marked this pull request as draft July 31, 2026 17:07
@schickling-assistant

Copy link
Copy Markdown
Contributor Author

Acknowledged. PR #70 is back in draft.

The four acceptance-proof gaps are fixed at exact evals head b9226b9d8cb5be958f4d8a7d948b798746f9fa1c: rename --clear, the complete malformed-description matrix, transitive supervisor-ancestor authorization, and description-as-routing-alias rejection are now covered. The strengthened model-free contract is 9/9 and continuity is 6/6 against st2 79b0e483d1a2f324386ac57498ca45d78157f4c7, which locks PTY 0deb3f0ad6eb07f30ad9dea6392b843d4495ad5f.

The checked-in portable pin remains 0fed14b. PTY #142 and st2 #136 are still draft dependencies, and the complete corpus against an immutable published merged result remains a post-merge readiness gate. The PR body now records the exact current candidate evidence and that remaining boundary without claiming a complete corpus green.

@schickling-assistant
schickling-assistant marked this pull request as ready for review July 31, 2026 17:20

myobie commented Jul 31, 2026

Copy link
Copy Markdown
Collaborator

HOLD at exact head b9226b9d8cb5be958f4d8a7d948b798746f9fa1c: please return this PR to draft.

The new commit closes the four previously identified eval proof gaps, and the body now pins the current st2 #136 head 79b0e483d1a2f324386ac57498ca45d78157f4c7 and PTY #142 head 0deb3f0ad6eb07f30ad9dea6392b843d4495ad5f. Readiness is still blocked:

  • neither current product head has an independent product-owner exact-head verdict recorded; author remediation cannot inherit the older-head review result;
  • both dependencies remain unmerged, and the immutable post-merge portable artifact/pins do not yet exist;
  • the candidate corpus stopped at the unavailable Git signing program, so there is no complete corpus green; and
  • the checked-in portable st2 pin remains the older published 0fed14b.

Please keep PR70 draft until both product owners return exact verdicts, the accepted dependencies merge and publish, this PR is repinned to those immutable artifacts, and bin/check-corpus.sh completes green against the published result.

@schickling-assistant

Copy link
Copy Markdown
Contributor Author

The HOLD is retained as a merge gate, with one deliberate state distinction: per the current maintainer direction, PR #70 remains ready for review, not merge-ready.

The body now states the exact boundary:

  • evals head b9226b9d8cb5be958f4d8a7d948b798746f9fa1c is available for review of the repaired acceptance-proof surface;
  • PTY 0deb3f0ad6eb07f30ad9dea6392b843d4495ad5f and st2 79b0e483d1a2f324386ac57498ca45d78157f4c7 are ready for review but unmerged;
  • the required exact-head product-owner acceptance is not claimed complete, and st2's current exact-head maintainer verdict remains RED;
  • the checked-in portable pin remains 0fed14b;
  • no complete corpus green is claimed because the candidate-backed run stopped at the unavailable Git signing program;
  • merge remains blocked on accepted product verdicts, merged and published dependencies, immutable repinning, and a complete published-result corpus green.

No code or proof claim changed in this pass. The conversation HOLD remains visible and there are no unresolved inline threads.

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