Experiment file
An Experiment file holds one Experiment: the Hypothesis, what it varies, the unit, and the Metrics that judge it.
| Property | Value |
|---|---|
| Path | experiments/ |
| Holds | Experiment |
| Kind | file |
| Leaders | db-first, git-first |
| Team | Product Team |
| Written by | Change.merge |
| Compiled by | StartupBuilder |
Example
experiments/ in a Startup repository. Closewise, a sample business, declares a Close Noun.
---
hypothesis: A 30-day trial turns more agencies into paying Customers than a 14-day trial, because a trial that spans a month end shows one full Close.
varies: settings.trial
arms: { control: 14d, month: 30d }
unit: visitor
metric: outside-paying-customers
guardrails: [month-3-retention]
window: 45d
minN: 150
---
A 14-day trial ends before most agencies see their first Close.Props
The frontmatter keys the file takes. The body is its prose.
| Prop | Type | Required | Description |
|---|---|---|---|
hypothesis | text | required | The belief under test, stated so the primary Metric can prove it wrong. |
varies | string | required | What it varies: a file path such as prompts/, or a Setting such as settings.trial. |
arms | json | Each arm’s value, keyed by arm; control is the current value. File arms come from @arm siblings instead. | |
unit | string | Who is assigned: visitor, customer, contact, conversation or request. | |
split | json | Each arm’s share of units. Even by default. | |
metric | Metric | required | The primary Metric that decides the winner. |
guardrails | list of Metric | Metrics that stop the Experiment the moment one breaches. | |
window | string | How long it runs before its Readout is read, such as 14d. | |
minN | integer | The fewest exposed units per arm before a verdict. |
Generates
StartupBuilder compiles it into these records, Verbs and routes.
| Kind | What |
|---|---|
| Records | Experiment, Hypothesis, Variant, Flag |
| Verbs | Hypothesis.test, Experiment.start, Flag.evaluate |
| Routes | None. |