Skip to content

Add the `daedalus_distribute` verb

Date: 2026-06-05 Status: accepted Supersedes: none Superseded-by: none — current

SPEC-07 (Daedalus marketing engine) requires an engine the founder can run mechanically: “given artifact X shipped, output exactly what to post, where, in what voice, when.” Sub-project A made daedalus/contracts/marketing-engine.yaml machine-shaped; sub-project C operationalises it. The verb grammar already hosts per-repo domain verbs (traceo_validate, crumb_validate, eva_status), so a daedalus_* verb is consistent with precedent.

Upholds: MR-7, MR-12.

Add daedalus_distribute (write verb, targets devarno-cloud). It derives the voice-routed social post-pack from a PUBLISHED journal entry and appends one distribution event to a Daedalus-local recognition-arc ledger (daedalus/content/arc.yaml). Dry-run-default, idempotent, PR-emitting; never auto-posts. Five enumerable constraints make SPEC-07/08 testable, notably DEDICATION_ABSENT (SPEC-08: Angelo categorically absent from marketing surfaces) and NO_PROMOTION (~100/0 value/promotion).

The arc “phase” layer is a maintained Daedalus-local structure, not the canonical phase verbs — keeping a content-marketing arc out of the superproject MILESTONES (altitude / push-down policy). Two alternatives (canonical phase verbs on a registered Daedalus unit; a separate daedalus_arc verb) were rejected/deferred; see the design spec.

  • Canonical phase verbs on a registered Daedalus unit — would couple content- marketing arc progression to superproject MILESTONES, violating push-down policy (altitude concern: arc state belongs in the Daedalus-local ledger, not the parent phase graph). Rejected.
  • Separate daedalus_arc verb — would split arc mutation from distribution into two verbs requiring coordinated invocation; idempotency and ordering guarantees become harder to enforce. Deferred; can be reintroduced if the arc ledger grows complex enough to warrant its own verb surface.

For code:

  • New verb daedalus_distribute registered in the verb grammar targeting devarno-cloud.
  • Operating mode: because devarno-cloud is fleets_allowed: [], the verb runs as human:<email> with PETROVA_ALLOW_HUMAN_OVERRIDE=1. The PR is still human-merge-gated.

For docs:

  • This decision doc.

For in-flight phases:

  • Sub-project C (Daedalus cadence engine operationalisation) gates on this decision before the verb implementation lands.

For invariants:

  • MR-7 upheld: this decision doc is the paper trail for the verb addition.
  • MR-12 upheld: no template change in core/templates/ (verb is Daedalus-domain, not a cross-consumer spine concern).
  • Design spec: devarno-cloud:docs/superpowers/specs/2026-06-05-daedalus-cadence-engine-design.md
  • Verb grammar precedents: traceo_validate, crumb_validate, eva_status
  • SPEC-07 (Daedalus marketing engine), SPEC-08 (Angelo absence constraint)
  • Subagent: petrova-control-plane (2026-06-05)
  • Human: <<pending — countersign here to close>>