activation

package
v0.0.21 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 18, 2026 License: MIT Imports: 15 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// MaxCorpusBytes bounds one YAML document before decoding allocates case
	// values. MaxCorpusCases bounds the retained ordered metadata rows.
	MaxCorpusBytes     = 8 << 20
	MaxCorpusCases     = 1024
	MaxFieldBytes      = 1 << 20
	MaxProvenanceBytes = 1 << 20
	MaxFixtureBytes    = acceptance.MaxCaptureFixtureBytes
)

Variables

This section is empty.

Functions

func ClaudeCode2_1_261Matcher added in v0.0.9

func ClaudeCode2_1_261Matcher(event model.ContractEventKind) string

ClaudeCode2_1_261Matcher returns the host matcher declared for an event. An undeclared matcher is empty, preserving the host's default behaviour. Matcher metadata does not select or enable an event.

func ClaudeCode2_1_261TargetEvents added in v0.0.9

func ClaudeCode2_1_261TargetEvents() []model.ContractEventKind

ClaudeCode2_1_261TargetEvents returns the typed target subset in declaration order. The returned slice is independent of the static declaration table.

func Codex0_153_0TargetEvents added in v0.0.9

func Codex0_153_0TargetEvents() []model.ContractEventKind

Codex0_153_0TargetEvents returns a defensive copy of the proved target set.

func GeneratedCaptureProofs added in v0.0.9

func GeneratedCaptureProofs() map[string]CaptureProof

GeneratedCaptureProofs returns the generated constant of every capture proof arm by arm name, across the three generated files.

func GeneratedProductionProofs added in v0.0.9

func GeneratedProductionProofs() map[string]ProductionProof

GeneratedProductionProofs returns the generated constant of every production proof arm by arm name, across the three generated files.

func OpenCode1_18_29TargetEvents added in v0.0.9

func OpenCode1_18_29TargetEvents() []model.ContractEventKind

OpenCode1_18_29TargetEvents returns a defensive copy of the proved target set.

func OpenCode2_0_20TargetEvents added in v0.0.9

func OpenCode2_0_20TargetEvents() []model.ContractEventKind

OpenCode2_0_20TargetEvents returns a defensive copy of the 2.0.20 target set.

func ProvenancePath added in v0.0.9

func ProvenancePath(fixture string) string

ProvenancePath returns the sidecar path of a fixture: the fixture's path with ".capture.json" or ".json" replaced by ".provenance.json".

Types

type CaptureProof

type CaptureProof uint16

CaptureProof is a closed, event-bound proof that a reviewed native capture exists for one exact host contract. The zero value carries no proof.

Its arms are DECLARED per harness in the three target files and GENERATED into proofs_{claude,codex,opencode}.gen.go, with one ordinal range per harness (Claude Code 1-99, Codex 100-199, OpenCode 200-299) so that the three harness files can gain arms independently without an ordinal collision. The declaration tables are the source of truth for what a proof MEANS (its event and its fixture); the generated constants are the names by which the rest of the tree refers to a proof.

const (
	CaptureProofSessionStart       CaptureProof = 1
	CaptureProofSessionEnd         CaptureProof = 2
	CaptureProofPreToolUse         CaptureProof = 3
	CaptureProofPostToolUse        CaptureProof = 4
	CaptureProofPostToolUseFailure CaptureProof = 5
	CaptureProofPostToolBatch      CaptureProof = 6
	CaptureProofPreCompact         CaptureProof = 7
	CaptureProofPostCompact        CaptureProof = 8
	CaptureProofFileChanged        CaptureProof = 9
)

Claude Code capture proofs, ordinals 1-99.

const (
	CaptureProofCodexSessionStart      CaptureProof = 100
	CaptureProofCodexPreToolUse        CaptureProof = 101
	CaptureProofCodexUserPromptSubmit  CaptureProof = 102
	CaptureProofCodexPermissionRequest CaptureProof = 103
	CaptureProofCodexPostToolUse       CaptureProof = 104
	CaptureProofCodexPreCompact        CaptureProof = 105
	CaptureProofCodexPostCompact       CaptureProof = 106
	CaptureProofCodexSubagentStart     CaptureProof = 107
	CaptureProofCodexSubagentStop      CaptureProof = 108
	CaptureProofCodexStop              CaptureProof = 109
	CaptureProofCodexSessionEnd        CaptureProof = 110
	CaptureProofCodexInterrupt         CaptureProof = 111
)

Codex capture proofs, ordinals 100-199.

const (
	CaptureProofOpenCodeSessionCreated                  CaptureProof = 200
	CaptureProofOpenCodeToolExecuteBefore               CaptureProof = 201
	CaptureProofOpenCode2SessionPrompt                  CaptureProof = 202
	CaptureProofOpenCode2SessionContext                 CaptureProof = 203
	CaptureProofOpenCode2SessionTitle                   CaptureProof = 204
	CaptureProofOpenCode2SessionModelRequest            CaptureProof = 205
	CaptureProofOpenCode2SessionHttpRequest             CaptureProof = 206
	CaptureProofOpenCode2SessionHttpResponse            CaptureProof = 207
	CaptureProofOpenCode2ToolExecuteBefore              CaptureProof = 208
	CaptureProofOpenCode2ToolExecuteAfter               CaptureProof = 209
	CaptureProofOpenCode2PermissionEvaluate             CaptureProof = 210
	CaptureProofOpenCode2SessionCreated                 CaptureProof = 211
	CaptureProofOpenCode2SessionCompaction              CaptureProof = 212
	CaptureProofOpenCode2SessionGenerate                CaptureProof = 213
	CaptureProofOpenCode2SessionExperimentalWsHandshake CaptureProof = 214
	CaptureProofOpenCode2SessionExperimentalWsSend      CaptureProof = 215
	CaptureProofOpenCode2SessionExperimentalWsReceive   CaptureProof = 216
	CaptureProofOpenCode2SessionRetry                   CaptureProof = 217
	CaptureProofOpenCode2ShellCreateBefore              CaptureProof = 218
)

OpenCode capture proofs, ordinals 200-299.

func (CaptureProof) Event

Event returns the generated event the proof is bound to.

func (CaptureProof) Harness added in v0.0.9

func (p CaptureProof) Harness() (ir.HarnessID, bool)

Harness returns the harness whose target file declares the proof.

func (CaptureProof) IsValid

func (p CaptureProof) IsValid() bool

func (CaptureProof) Name

func (p CaptureProof) Name() string

Name cites the committed fixture that is the proof, as "path (description)".

type CaptureProofArm added in v0.0.9

type CaptureProofArm struct {
	Harness ir.HarnessID
	Arm     string
	Proof   CaptureProof
	Event   model.ContractEventKind
	Fixture string
}

CaptureProofArm is one declared capture proof, as the tables declare it.

func CaptureProofArms added in v0.0.9

func CaptureProofArms() []CaptureProofArm

CaptureProofArms returns every declared capture proof of every harness, in harness order then declaration order.

type Case

type Case struct {
	// contains filtered or unexported fields
}

Case is an immutable, scalar-backed corpus row. Fixture, provenance, and mutation fields intentionally remain private: callers compare only this public oracle surface and pass the Case back to Evaluate.

func (Case) Classification

func (c Case) Classification() Classification

func (Case) ExpectedDecision

func (c Case) ExpectedDecision() Decision

func (Case) ExpectedReason

func (c Case) ExpectedReason() CorpusReason

func (Case) IsValid

func (c Case) IsValid() bool

func (Case) Name

func (c Case) Name() string

type Classification

type Classification uint8

Classification identifies whether a corpus row is expected to exercise the admitted path or one of its guarded rejection paths. Its zero value is reserved for an unconstructed value.

const (
	ClassificationInvalid Classification = iota
	ClassificationMustPass
	ClassificationMustFail
)

func (Classification) IsValid

func (c Classification) IsValid() bool

func (Classification) String

func (c Classification) String() string

func (*Classification) UnmarshalText

func (c *Classification) UnmarshalText(text []byte) error

type Corpus

type Corpus struct {
	// contains filtered or unexported fields
}

Corpus owns an ordered set of immutable Case values. The zero value is an empty corpus; LoadCorpus is the constructor that establishes coverage.

func LoadCorpus

func LoadCorpus(path string) (Corpus, error)

LoadCorpus reads and validates one bounded activation corpus. Its implementation is intentionally kept separate from the static activation manifest; it is test-time evidence tooling and never runs on hook ingress.

func (Corpus) Cases

func (c Corpus) Cases() []Case

type CorpusReason

type CorpusReason uint8

CorpusReason is the closed set of expected evidence-gate bypass reasons. CorpusReasonNone is the zero value and is valid only with DecisionEnabled on a constructed Case or Evaluation.

const (
	CorpusReasonNone CorpusReason = iota
	CorpusReasonNonAuthenticOrigin
	CorpusReasonDigestMismatch
	CorpusReasonVersionOutOfRange
	CorpusReasonPathEscape
)

func (CorpusReason) IsValid

func (r CorpusReason) IsValid() bool

func (CorpusReason) IsWithheldReason

func (r CorpusReason) IsWithheldReason() bool

func (CorpusReason) String

func (r CorpusReason) String() string

func (*CorpusReason) UnmarshalText

func (r *CorpusReason) UnmarshalText(text []byte) error

type CoverageError

type CoverageError struct {
	MissingCoverage MissingCoverage
}

CoverageError reports a syntactically valid corpus that is vacuous or lacks one or more required rejection categories.

func (*CoverageError) Error

func (e *CoverageError) Error() string

type Decision

type Decision uint8

Decision is the closed activation result expected from a corpus case. Its zero value is invalid.

const (
	DecisionInvalid Decision = iota
	DecisionEnabled
	DecisionWithheld
)

func (Decision) IsValid

func (d Decision) IsValid() bool

func (Decision) String

func (d Decision) String() string

func (*Decision) UnmarshalText

func (d *Decision) UnmarshalText(text []byte) error

type Entry

type Entry struct {
	Event           model.ContractEventKind
	State           State
	Reason          WithheldReason
	CaptureProof    CaptureProof
	ProductionProof ProductionProof
	Clearance       string
}

Entry is one complete activation decision. Withheld entries always carry a reason and zero proofs; enabled entries carry both event-bound proofs and a zero reason. A withheld entry whose reason is a user decision also carries the committed CLEARANCE.md path where that decision is recorded.

func ClaudeCode2_1_261 added in v0.0.9

func ClaudeCode2_1_261() ([]Entry, error)

ClaudeCode2_1_261 returns a fresh exhaustive activation manifest. The manifest is derived only from the generated registration manifest and the static typed target declaration table; it performs no filesystem access.

func Codex0_153_0 added in v0.0.9

func Codex0_153_0() ([]Entry, error)

Codex0_153_0 derives a fresh exhaustive activation manifest from the generated Codex host manifest and the proved static target declaration. An event without a target declaration is withheld outside-target-set. The manifest performs no filesystem access and derives only from the generated registration manifest, so Codex evidence can never enable an OpenCode or Claude entry.

func NewEnabled

func NewEnabled(event model.ContractEventKind, capture CaptureProof, production ProductionProof) (Entry, error)

func NewWithheld

func NewWithheld(event model.ContractEventKind, reason WithheldReason) (Entry, error)

NewWithheld builds a withheld entry for a reason that needs no user decision. A reason that records a user decision is refused here, because the decision's CLEARANCE.md path is part of the entry; use NewWithheldByDecision for it.

func NewWithheldByDecision added in v0.0.9

func NewWithheldByDecision(event model.ContractEventKind, reason WithheldReason, clearance string) (Entry, error)

NewWithheldByDecision builds a withheld entry for a reason that records a user decision (no reachable trigger, unclearable payload, provider hook, not emitted by host, emitted outside transport, trigger not exercised). The clearance is the committed CLEARANCE.md path that holds the decision; it is validated by the same rule a capture sidecar's clearance is. For WithheldNotEmittedByHost specifically, the acceptance rule is stricter than an empty-path check: the recorded decision at that path must cite the search that found no emission site (the file and symbol searched, at the recorded host version), never only the absence of a payload file, a documentation page, or a struct; see the WithheldNotEmittedByHost doc comment.

func OpenCode1_18_29 added in v0.0.9

func OpenCode1_18_29() ([]Entry, error)

OpenCode1_18_29 derives a fresh exhaustive activation manifest from the generated host manifest and the proved static target declaration.

func OpenCode2_0_20 added in v0.0.9

func OpenCode2_0_20() ([]Entry, error)

OpenCode2_0_20 derives a fresh exhaustive activation manifest from the generated 2.0.20 host manifest and the static target declaration.

func (Entry) IsValid

func (e Entry) IsValid() bool

type Evaluation

type Evaluation struct {
	// contains filtered or unexported fields
}

Evaluation is the immutable result of one evidence evaluation. The zero value is intentionally invalid and is returned with every actionable error.

func (Evaluation) CaseName

func (e Evaluation) CaseName() string

func (Evaluation) Decision

func (e Evaluation) Decision() Decision

func (Evaluation) Detail added in v0.0.9

func (e Evaluation) Detail() string

Detail is the sentence that explains a withheld reason to a reader, when the reason has one; a version-out-of-range evaluation names the observed host version and the admitted versions. It is empty for an enabled evaluation.

func (Evaluation) Event

func (e Evaluation) Event() (model.ContractEventKind, bool)

func (Evaluation) IsValid

func (e Evaluation) IsValid() bool

func (Evaluation) Reason

func (e Evaluation) Reason() CorpusReason

type Evaluator added in v0.0.9

type Evaluator struct {
	// contains filtered or unexported fields
}

Evaluator evaluates corpus cases against ONE harness's pinned contract: its host-version admission, its registration manifest (native event name to generated event kind) and its activation target set. Build one with ClaudeCodeEvaluator, CodexEvaluator or OpenCodeEvaluator, or select one by harness with EvaluatorFor. A fixture whose sidecar names another harness is refused by name, never evaluated against the wrong contract. The zero value is invalid and evaluates nothing.

VERSION ADMISSION follows each harness's declared contract, and every harness declares the same shape: a FLOOR at the recorded host version, so that version and every later release is admitted and a host below it is refused (runtime.VersionConstraint, built by NewVersionFloor). The admission is judged here, on a fixture whose sidecar records the host version as a fact, and nowhere on the live hook path, where a host may pass no usable version at all. The sentence a withheld fixture carries spells the admitted versions through the contract's own renderer (VersionConstraint.Describe), so it follows the contract when the contract moves.

func ClaudeCodeEvaluator added in v0.0.9

func ClaudeCodeEvaluator() Evaluator

ClaudeCodeEvaluator evaluates against the pinned Claude Code contract.

func CodexEvaluator added in v0.0.9

func CodexEvaluator() Evaluator

CodexEvaluator evaluates against the pinned Codex contract.

func EvaluatorFor added in v0.0.9

func EvaluatorFor(harness acceptance.HarnessKind) (Evaluator, error)

EvaluatorFor selects the evaluator of one harness. The set is closed: a harness without a pinned lifecycle contract has no evaluator.

func OpenCodeEvaluator added in v0.0.9

func OpenCodeEvaluator() Evaluator

OpenCodeEvaluator evaluates against the pinned OpenCode contract.

func (Evaluator) Admission added in v0.0.9

func (e Evaluator) Admission() runtime.VersionConstraint

Admission returns the host-version constraint the evaluator admits.

func (Evaluator) Contract added in v0.0.9

func (e Evaluator) Contract() ir.RuntimeContractID

func (Evaluator) Evaluate added in v0.0.9

func (e Evaluator) Evaluate(root string, c Case) (Evaluation, error)

Evaluate evaluates one immutable case against contained fixture evidence, under this evaluator's harness contract. Every rejection category reports as a withheld Evaluation; a fixture the evaluator cannot read or that belongs to another harness is an error.

func (Evaluator) Harness added in v0.0.9

func (e Evaluator) Harness() acceptance.HarnessKind

func (Evaluator) IsValid added in v0.0.9

func (e Evaluator) IsValid() bool

func (Evaluator) TargetEvents added in v0.0.9

func (e Evaluator) TargetEvents() []model.ContractEventKind

TargetEvents returns the harness's activation target set as a fresh slice.

type MissingCoverage

type MissingCoverage uint8

MissingCoverage is a bitset describing the non-vacuity requirements absent from a corpus. The zero value means that no coverage is missing.

const (
	MissingCoverageNone     MissingCoverage = 0
	MissingCoverageMustPass MissingCoverage = 1 << (iota - 1)
	MissingCoverageMustFail
	MissingCoverageNonAuthenticOrigin
	MissingCoverageDigestMismatch
	MissingCoverageVersionOutOfRange
	MissingCoveragePathEscape
)

func (MissingCoverage) Has

type ProductionProof

type ProductionProof uint16

ProductionProof is a closed, event-bound proof that the shipped production path has admitted one native event. The zero value carries no proof. It is declared and generated exactly as CaptureProof is.

const (
	ProductionProofSessionStart       ProductionProof = 1
	ProductionProofSessionEnd         ProductionProof = 2
	ProductionProofPreToolUse         ProductionProof = 3
	ProductionProofPostToolUse        ProductionProof = 4
	ProductionProofPostToolUseFailure ProductionProof = 5
	ProductionProofPostToolBatch      ProductionProof = 6
	ProductionProofPreCompact         ProductionProof = 7
	ProductionProofPostCompact        ProductionProof = 8
	ProductionProofFileChanged        ProductionProof = 9
)

Claude Code production proofs, ordinals 1-99.

const (
	ProductionProofCodexSessionStart      ProductionProof = 100
	ProductionProofCodexPreToolUse        ProductionProof = 101
	ProductionProofCodexUserPromptSubmit  ProductionProof = 102
	ProductionProofCodexPermissionRequest ProductionProof = 103
	ProductionProofCodexPostToolUse       ProductionProof = 104
	ProductionProofCodexPreCompact        ProductionProof = 105
	ProductionProofCodexPostCompact       ProductionProof = 106
	ProductionProofCodexSubagentStart     ProductionProof = 107
	ProductionProofCodexSubagentStop      ProductionProof = 108
	ProductionProofCodexStop              ProductionProof = 109
	ProductionProofCodexSessionEnd        ProductionProof = 110
	ProductionProofCodexInterrupt         ProductionProof = 111
)

Codex production proofs, ordinals 100-199.

const (
	ProductionProofOpenCodeSessionCreated                  ProductionProof = 200
	ProductionProofOpenCodeToolExecuteBefore               ProductionProof = 201
	ProductionProofOpenCode2SessionPrompt                  ProductionProof = 202
	ProductionProofOpenCode2SessionContext                 ProductionProof = 203
	ProductionProofOpenCode2SessionTitle                   ProductionProof = 204
	ProductionProofOpenCode2SessionModelRequest            ProductionProof = 205
	ProductionProofOpenCode2SessionHttpRequest             ProductionProof = 206
	ProductionProofOpenCode2SessionHttpResponse            ProductionProof = 207
	ProductionProofOpenCode2ToolExecuteBefore              ProductionProof = 208
	ProductionProofOpenCode2ToolExecuteAfter               ProductionProof = 209
	ProductionProofOpenCode2PermissionEvaluate             ProductionProof = 210
	ProductionProofOpenCode2SessionCreated                 ProductionProof = 211
	ProductionProofOpenCode2SessionCompaction              ProductionProof = 212
	ProductionProofOpenCode2SessionGenerate                ProductionProof = 213
	ProductionProofOpenCode2SessionExperimentalWsHandshake ProductionProof = 214
	ProductionProofOpenCode2SessionExperimentalWsSend      ProductionProof = 215
	ProductionProofOpenCode2SessionExperimentalWsReceive   ProductionProof = 216
	ProductionProofOpenCode2SessionRetry                   ProductionProof = 217
	ProductionProofOpenCode2ShellCreateBefore              ProductionProof = 218
)

OpenCode production proofs, ordinals 200-299.

func (ProductionProof) Event

Event returns the generated event the proof is bound to.

func (ProductionProof) Harness added in v0.0.9

func (p ProductionProof) Harness() (ir.HarnessID, bool)

Harness returns the harness whose target file declares the proof.

func (ProductionProof) IsValid

func (p ProductionProof) IsValid() bool

func (ProductionProof) Name

func (p ProductionProof) Name() string

Name cites the production test that is the proof, as "file:Test/Subtest".

type ProductionProofArm added in v0.0.9

type ProductionProofArm struct {
	Harness ir.HarnessID
	Arm     string
	Proof   ProductionProof
	Event   model.ContractEventKind
	Test    string
}

ProductionProofArm is one declared production proof, as the tables declare it.

func ProductionProofArms added in v0.0.9

func ProductionProofArms() []ProductionProofArm

ProductionProofArms returns every declared production proof of every harness, in harness order then declaration order.

type ProvenanceSource

type ProvenanceSource uint8

ProvenanceSource identifies the reviewed source category for a corpus row. It is metadata only; Evaluate never trusts it as evidence.

const (
	ProvenanceSourceInvalid ProvenanceSource = iota
	ProvenanceSourceRequirement
	ProvenanceSourceBug
	ProvenanceSourceEnum
	ProvenanceSourceBoundary
)

func (ProvenanceSource) IsValid

func (s ProvenanceSource) IsValid() bool

func (ProvenanceSource) String

func (s ProvenanceSource) String() string

func (*ProvenanceSource) UnmarshalText

func (s *ProvenanceSource) UnmarshalText(text []byte) error

type State

type State uint8

State is the closed progressive-activation state of one native event.

const (
	StateInvalid State = iota
	Enabled
	Withheld
)

func (State) IsValid

func (s State) IsValid() bool

func (State) String

func (s State) String() string

type WithheldReason

type WithheldReason uint8

WithheldReason explains why an event is not registered with its host.

const (
	WithheldReasonInvalid WithheldReason = iota
	WithheldMissingFixture
	WithheldOutsideTargetSet
	WithheldUnverifiedBuild
	WithheldProductionProofMissing
	WithheldMissingRequestCorrelation
	// WithheldNoReachableTrigger records that no known action makes the host
	// fire the event in a live session, so no authentic capture can exist. It
	// is a user decision: a row that carries it names the CLEARANCE.md where
	// the decision is recorded.
	WithheldNoReachableTrigger
	// WithheldUnclearablePayload records that the captured payload cannot be
	// made safe to commit by the substitution rules. It is a user decision: a
	// row that carries it names the CLEARANCE.md where the decision is recorded.
	WithheldUnclearablePayload
	// WithheldProviderHook records that the host reads the hook's own output
	// or exit code as an answer only the hook can give, so an observer row
	// would change host behaviour rather than only report on it (a Claude
	// worktree-create hook: standard output must carry the created worktree
	// path; a worktree-remove hook: exit 0 asserts the removal happened). It
	// is a user decision: a row that carries it names the CLEARANCE.md where
	// the decision is recorded.
	WithheldProviderHook
	// WithheldNotEmittedByHost records that the host declares the event name
	// or the hook key at the recorded version and never emits the event or
	// calls the key. This covers two kinds of declared-but-silent name: an
	// event name present only in generated SDK types with no publisher, or a
	// declared hook key nothing calls. A row may take this reason only on a
	// CITED absence of an emission site in the host source at the recorded
	// version — the file and symbol searched, with the search stated in the
	// recorded decision — never on the absence of a payload file, a
	// documentation page, or a struct; a directory listing alone can miss a
	// real emitter. It is a user decision: a row that carries it names the
	// CLEARANCE.md where the decision, including that cited search, is
	// recorded.
	WithheldNotEmittedByHost
	// WithheldEmittedOutsideTransport records that the host does emit the
	// event, but on a channel the harness transport does not observe, so no
	// capture can reach the hook however long a session runs. It is a user
	// decision: a row that carries it names the CLEARANCE.md where the
	// decision is recorded.
	WithheldEmittedOutsideTransport
	// WithheldTriggerNotExercised records that the host CAN fire the event,
	// and WE chose not to produce the condition that fires it. Its two limbs
	// are (a) a setting we will not impose on the capturing user's host
	// configuration, and (b) a condition we will not induce (for example a
	// real API failure). It is a user decision: a row that carries it names
	// the CLEARANCE.md where the decision, and which limb applies, is
	// recorded.
	//
	// It does NOT cover a row nobody knows how to fire: that case is
	// WithheldNoReachableTrigger, unchanged by this reason. It does NOT cover
	// a row that was captured under a disclosed non-default configuration:
	// that row is enabled, with the configuration stated beside its fixture.
	WithheldTriggerNotExercised
)

func AllWithheldReasons added in v0.0.9

func AllWithheldReasons() []WithheldReason

AllWithheldReasons returns every valid arm in ordinal order. The population is derived from the sentinel, so an arm added above it is included without an edit here.

func (WithheldReason) IsValid

func (r WithheldReason) IsValid() bool

func (WithheldReason) RequiresClearance added in v0.0.9

func (r WithheldReason) RequiresClearance() bool

RequiresClearance reports whether the reason is a user decision that must be recorded in a CLEARANCE.md before a row may carry it.

func (WithheldReason) String

func (r WithheldReason) String() string

Directories

Path Synopsis
internal
proofgen
Package proofgen writes the per-harness proof enum arms of the activation package from the proof declaration tables in the three harness target files.
Package proofgen writes the per-harness proof enum arms of the activation package from the proof declaration tables in the three harness target files.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL