#2019 feat(nurture): arm model-usage-without-workflows (BUILDING PRODUCT FEATURES)
Opened by keeb · 9/4/2026
Parent: the product-nurture epic. Arms whiteboard flow #3 — BUILDING PRODUCT FEATURES.
Sustained model usage and zero workflow run. These are the operatives who
have adopted half the product: they are running methods by hand, repeatedly,
which is precisely the shape a workflow exists to replace. The message promotes
workflows and shareability.
Qualification
model_no_workflow: ≥3 distinct active days with a command = 'model'
invocation in the trailing 30 days, and zero command = 'workflow', subcommand = 'run' invocations ever.
Both terms come from cli_daily, which is already keyed
(distinct_id, command, subcommand, day) — this is the cheapest read in the
set, and the only one whose grain matches the question exactly.
occurrenceKey: "once". If the pitch does not land the first time, sending it
again does not improve it.
Two things to get right
"Ever" means ever, and cli_daily is day-grain from the beginning. Do not
bound the workflow-usage term to the same 30-day window as the model term. An
operative who ran one workflow eight months ago and stopped is not the audience
for "you have never tried workflows" — they are a different (and more
interesting) segment, and conflating them makes the copy wrong.
A collective's daemon is not a person. swamp serve on a collective API
key ingests under collective:<id>, and a team daemon runs model methods
constantly. The grain-level exclusion (#1679) must be present on this read or
the flow's largest apparent qualifier is a credential.
Verification
- Fixtures at 2 and 3 active model-days; one with a single
workflow runat the far edge of history (must not qualify); one whose activity is entirely under acollective:id (must not appear at all). - A captured-SQL assertion that the workflow term carries no day floor.
- In production: hand-check the first cohort — for each, zero
workflow/runrows incli_dailyacross every bound device, for all time.
In Progress
Click a lifecycle step above to view its details.