Skip to content

Phase 8: Verification API — hosted provenance check #9

Description

@ToryMic

Goal

Expose sorseal's on-chain + reproducibility checks as a hosted endpoint so Wave teams get "is this deployed contract still sealed?" as a URL, a webhook, or an alert — without running the CLI themselves.

Scope

  • A small read-only HTTP service (sorseal serve) with one endpoint per contract id that runs onchain-verify/onchain-audit against the configured RPC and returns JSON.
  • Polling/monitoring: a --watch mode that re-checks on a schedule and reports drift (a new unsealed upgrade, an inconsistent lineage).
  • Document the trust model honestly: the API answers are only as trusted as the RPC endpoint + provenance data; this is convenience, not a new trust root.

Why

The CLI is the foundation; a hosted check makes provenance verification part of a Wave team's daily ops, catching an unsealed deploy before it becomes an incident.

Success criteria

  • GET /contracts/:id returns the audit JSON (same shape as the CLI report) with correct exit semantics encoded in the response.
  • A --watch mode flags a newly-deployed unsealed version within one poll interval.
  • Service remains stateless and single-binary; no database dependency.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestphase-8Verification API / hosted provenance check

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions