Common envelope
Shared types referenced by every verb schema. Single source of truth for cross-cutting types.
Definitions
Section titled “Definitions”RepoSlug— Slug from registry.yaml. Must match an entry’s slug field exactly.IsoDate— ISO 8601 date (MR-4). YYYY-MM-DD form for dates; full RFC 3339 for timestamps.IdempotencyKey— SHA256 of|<target_repo>|<canonical_input_json>, hex-encoded, lowercase. 64 chars. MRCitation— Cross-cutting meta-rule identifier from META-RULES.md.Profile— Branch protection / merge profile inherited from registry.yaml.Status— Terminal status of a verb invocation.Actor— Who invoked the verb. fleet:for agent fleets, human: for direct human invocation, system: for petrova internal automation. TriggeredBy— What surfaced the need for this verb invocation. Required by MR-7 — every action has a documented trigger.Envelope— Common input envelope embedded in every verb’s input.OutputEnvelope— Common output envelope returned by every verb invocation.PRRef— Reference to the PR emitted by an applied write verb.HermesSkippedFiles— Planned files a depositing verb did not write because the target repo’s .hermes/lock or consumer-owned .petrova/pins lists them (or either file is unreadable and the path is a workflow). See cli/src/hermes-lock.ts.DiffPreview— Predicted file changes (returned in dry_run mode). Mirrors the shape applied mode would emit.Error—MilestoneId— Milestone identifier. Numeric form M{phase}.{n}[.{m}] (e.g. M7.8.2) or lettered-track form M-{TRACK}{n}[.{m}] (e.g. M-A1, M-D3) used by repos whose MILESTONES.md follows a lettered-block convention.SeamTier— Autonomy tier per docs/decisions/2026-09-12-seam-class-taxonomy.md (AT0-AT3). Source of truth is host/src/registry.ts’s PetrovaTool.seamTier; this $def exists for schemas that need to reference the type for human readability, per IR-002 step 2. A verb schema echoing its tier here never sets it independently of registry.ts.AuthorizingDecision— Path to the docs/decisions/*.md file that assigned a verb’s seamTier. A tier with no citation is not a grant (docs/decisions/2026-09-12-seam-tier-carrier-field-schema-act.md).
Source
Section titled “Source”spec/verbs/_common.schema.json — see the petrova-codes repo for the authoritative JSON Schema.