midnight-verify:verify-by-witness

Verify TypeScript witnesses against compiled Compact contracts with compile, type-check, and runtime checks.

37|9|Updated Feb 25, 2026
One-click install
npx skills add https://github.com/devrelaicom/midnight-expert --skill midnight-verify-verify-by-witness
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: midnight-verify:verify-by-witness
Source: https://github.com/devrelaicom/midnight-expert/tree/main/plugins/midnight-verify/skills/verify-by-witness
Command: npx skills add https://github.com/devrelaicom/midnight-expert --skill midnight-verify-verify-by-witness

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Cross-domain witness verification helps ensure TypeScript witnesses correctly align with compiled Compact contracts, reducing integration risk across domains.

Core Features & Use Cases

  • Multi-phase verification of a contract-witness pairing (compile, type-check, structural checks, and runtime validation).
  • Cross-domain correctness checks, ensuring witnesses satisfy the Witnesses type and contract interfaces in a deterministic workflow.
  • Use case: developers validate that a new witness implements required methods before deployment.

Quick Start

Place your .compact contract and corresponding .ts witness in a workspace and follow Phase 1–5 to verify cross-domain alignment.

Frequently Asked Questions about midnight-verify:verify-by-witness

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I verify a TypeScript witness against a compiled Compact contract?

Cross-domain witness verification ensures TypeScript witnesses correctly align with compiled Compact contracts, reducing integration risk across domains by validating required methods before deployment.

What does cross-domain witness verification for Compact actually check?

Cross-domain witness verification checks if a TypeScript witness satisfies the generated Witnesses type, enforcing deterministic verification and guardrails against non-deterministic code during runtime behavior validation.

How do I start cross-domain witness verification in my workspace?

To start cross-domain witness verification, place your .compact contract and corresponding .ts witness files in a workspace, then follow the Phase 1 to 5 process to verify alignment.

Does witness verification guard against non-deterministic code in TypeScript?

Yes, witness verification enforces deterministic verification by guardrailing against non-deterministic code, ensuring the TypeScript witness satisfies the contract interface in a deterministic workflow.

Can I get deployment guidance after verifying a Compact witness?

Yes, the verification process provides deployment guidance if devnet end-to-end testing is recommended after successfully validating the cross-domain contract-witness pairing.