Skip to content

feat: verify governed staging binding - #193

Merged
mikemcdougall merged 3 commits into
trunkfrom
feat/staging-binding-evidence
Aug 9, 2026
Merged

feat: verify governed staging binding#193
mikemcdougall merged 3 commits into
trunkfrom
feat/staging-binding-evidence

Conversation

@mikemcdougall

Copy link
Copy Markdown
Contributor

Summary

  • consume one atomic, non-secret HONUA_CLIENT_COMPAT_BINDING_JSON deployment document for remote staging
  • fail closed on absent, stale, malformed, mutable, target-mismatched, or descriptor-digest-mismatched evidence
  • fetch only a commit-pinned honua-demo-infra descriptor and validate its protected fixture contract
  • record explicit local_stack and governed descriptor/deployment digests in the staging receipt

Rollout dependency

The staging variable must be populated from a terminal demo-infra deployment artifact produced by honua-io/honua-demo-infra#32 before the remote workflow can certify this change. This PR does not update that variable or any credential.

Focused validation

  • PYTHONPATH=packages/honua-sdk python -m pytest tests/test_staging_binding_contract.py tests/test_smoke_harness.py -q (19 passed)

Refs honua-io/honua-demo-infra#28

@mikemcdougall
mikemcdougall marked this pull request as ready for review August 9, 2026 04:22
@mikemcdougall
mikemcdougall merged commit e2be24d into trunk Aug 9, 2026
26 of 27 checks passed
@mikemcdougall
mikemcdougall deleted the feat/staging-binding-evidence branch August 9, 2026 04:22

@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: d9d7fed9e3

ℹ️ 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 scripts/_smoke_harness.py
descriptor_ref = binding.get("descriptor")
target = binding.get("target")
access = binding.get("access")
if not all(isinstance(value, dict) for value in (owner, descriptor_ref, target, access)):

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P1 Badge Validate the deployment provenance block

When the staging variable omits source entirely, names another repository/workflow, or gives a commit different from the commit embedded in the descriptor URL, this validator still accepts it because only owner, descriptor, target, and access are required. The workflow can therefore emit a passing governed receipt without evidence that the descriptor came from the claimed terminal demo-infra deployment; require source and cross-check its repository and commit against the allowlisted descriptor reference.

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.

1 participant