Skip to content

SCE-002: add experiment variation-selection policies and allocation bindings #787

Description

@Brad-Edwards

Requirements

  • SCE-002 — Scenario Composition, Parameterization, and Randomization

Outcome

Extend the pre-run experiment-authoring surface selected by #652 so a study declares how scenario-family variation points are fixed, enumerated, balanced, sampled, or assigned to controlled factors.

Scope

  • Binding experiment factors and conditions to named scenario variation points.
  • Selection policies selected by the design, including fixed, exhaustive, Cartesian, balanced/stratified, weighted, bounded random, without-replacement, and t-way coverage where supported.
  • Explicit distinction among controlled factors, nuisance variables, ordinary configuration, and runtime stochasticity.
  • Bounded distribution parameters and validation.
  • Root stochastic-control and random-stream suite references.
  • Cross-artifact validation against the referenced expanded scenario family.
  • Authoring examples, schema/contract generation, fixtures, and MCP validation/scaffolding.

Acceptance criteria

  • The SDL declares what may vary; the experiment declares how and why it varies.
  • Every policy resolves to a declared compatible variation point and bounded domain.
  • Allocation counts, factor assignments, and sampling policies are mutually consistent.
  • Unsupported or unbounded policies fail admission.
  • Non-random designs require no synthetic seed.
  • Random designs identify the governed stochastic-control suite from Controlled Randomness And Seed Preservation (EXP-718) #274.
  • Positive and negative fixtures cover every admitted policy kind.

Non-goals

  • Producing concrete trial entries.
  • Scheduling or executing trials.
  • Hiding selection policy inside SDL defaults.

Metadata

Metadata

Assignees

No one assigned

    Labels

    requirementTracks a Ground Control requirementwave-2Wave 2 requirement

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions