Skip to content

feat(prism): production constation wire and attestation routes - #2

Merged
echobt merged 8 commits into
BaseIntelligence:mainfrom
alpha1122x:feat/production-constation-wire
Jul 27, 2026
Merged

feat(prism): production constation wire and attestation routes#2
echobt merged 8 commits into
BaseIntelligence:mainfrom
alpha1122x:feat/production-constation-wire

Conversation

@alpha1122x

Copy link
Copy Markdown
Contributor

Summary

  • Bring standalone BaseIntelligence/prism into content-parity with the already-merged constation/attestation wiring in base packages/challenges/prism/ (PRs #41/#42 on BaseIntelligence/base).
  • Production ingest deserializes nested result.constation_bundle and re-runs constation_ok via BASE HTTP checkers (or in-process services for single-node/tests).
  • Public attestation challenge/answer routes live on the prism app; scoring fail-closes with no score row when the bundle is missing or fails (P1).

Changes

  • Add constation.py, constation_checkers.py, breakglass.py, attestation_routes.py.
  • Wire production constation kwargs in app.py; gate ingestion / audit / queue / proof on constation_ok (tier ceiling 1).
  • Pin base to monorepo SHA e6951699 (release wheel v3.1.2 lacks DigestAllowlist / AttestationNonceService / attestation payload).
  • Tests for bundle wire, scoring gate, prod HTTP ingest, attestation routes S8, trust contract; delete obsolete test_lium_client.py to match base package.
  • Docs: tamper-evidence trust model and scoring gate (no TEE / no tamper-prevention claims).

Test plan

  • uv run ruff check . (exit 0)
  • uv run pytest -q — 1367 passed, 16 skipped
  • tests/test_prism_no_tee_absence.py not weakened
  • CI green on this PR head

CI

  • Waiting for required checks to go green on this head SHA.

Notes

  • Trust model is tamper-evidence only (miner has root on rented pods). Sole elevation predicate is constation_ok; no effective_tier ≥ 2; insecure checkers stay behind allow_insecure_signatures for tests only.
  • Do not merge until CI is green and a maintainer reviews.
  • Parallel work: prism-recipe miner image attestation PR is independent.

echobt and others added 6 commits July 26, 2026 23:02
Port constation_ok, HTTP checkers, and break-glass admission from the
base monorepo package so standalone prism can fail-closed on the six
mechanism bundle without TEE claims.

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Deserialize result.constation_bundle on ingest and attach BASE HTTP or
in-process checkers. Pin base to monorepo SHA that ships attestation
modules (release wheel v3.1.2 lacks them).

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Host challenge/answer and internal constation check endpoints on the
prism app (BASE proxy surface), matching monorepo package wiring.

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Make constation_ok the sole elevation predicate (tier ceiling 1), require
bundles on the lium backend, and drop the obsolete lium client tests.

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Add HTTP ingest fail-closed coverage and a trust-contract guard that
effective_tier never exceeds 1 without constation_ok.

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Record miner-root threat model, six mechanisms with limits, and P1
no-bundle-no-score behavior without TEE or tamper-prevention claims.

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
@coderabbitai

coderabbitai Bot commented Jul 26, 2026

Copy link
Copy Markdown

Warning

Review limit reached

@alpha1122x, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 16 minutes

Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available.
You're only billed for reviews past your plan's rate limits ($0.25/file).

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 8ecc2ba0-8555-4766-8a26-5e7c938cf47a

📥 Commits

Reviewing files that changed from the base of the PR and between 0ef0708 and f0583c2.

⛔ Files ignored due to path filters (1)
  • uv.lock is excluded by !**/*.lock
📒 Files selected for processing (31)
  • docs/scoring.md
  • docs/security.md
  • pyproject.toml
  • src/prism_challenge/app.py
  • src/prism_challenge/attestation_routes.py
  • src/prism_challenge/audit.py
  • src/prism_challenge/breakglass.py
  • src/prism_challenge/config.py
  • src/prism_challenge/constation.py
  • src/prism_challenge/constation_checkers.py
  • src/prism_challenge/ingestion.py
  • src/prism_challenge/models.py
  • src/prism_challenge/proof.py
  • src/prism_challenge/queue.py
  • src/prism_challenge/routes.py
  • tests/conftest.py
  • tests/test_constation_bundle_wire.py
  • tests/test_constation_ok.py
  • tests/test_constation_scoring_gate.py
  • tests/test_doc_trust_contract.py
  • tests/test_execution_backend_constation_gate.py
  • tests/test_lium_client.py
  • tests/test_prism_attestation_routes_s8.py
  • tests/test_prism_audit_effective_tier.py
  • tests/test_prism_no_tee_absence.py
  • tests/test_prism_proof.py
  • tests/test_prism_result_ingestion.py
  • tests/test_prism_scoring_characterization_baseline.py
  • tests/test_prod_constation_http_ingest.py
  • tests/test_prod_constation_kwargs.py
  • tests/test_sdk_release_boundary.py
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

echobt and others added 2 commits July 26, 2026 23:22
…sport

Type MINER_FAULT/INFRA_FAULT as Final[Literal[...]] so fault_class_of
returns FaultClass. Narrow BaseHttpConstationClient transport to sync
BaseTransport. Widen optional-import ignore for AttestationVerifyReason.

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Replace the git+ SHA pin with the published wheel URL and sha256 so
docker-build on python:3.12-slim can resolve base without git.

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
@echobt
echobt merged commit 03b0564 into BaseIntelligence:main Jul 27, 2026
8 checks passed
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