Skip to main content

Study-definition and orchestration layer for the cmudrc design research ecosystem

Project description

design-research-experiments

CI Coverage Examples Passing Public API In Examples Docs

[!IMPORTANT] Current monthly release: Apollo Ascent - April 2026
Due: April 1, 2026
Tracks: March 2026 work

design-research-experiments is the hypothesis-first study-definition and experiment-orchestration layer in the cmudrc design research ecosystem.

It composes sibling libraries rather than reimplementing them:

  • design-research-agents for executable agent behavior, workflows, and traces
  • design-research-problems for problem catalogs, registries, and evaluators
  • design-research-analysis for downstream unified-table analysis and reporting

Overview

This package centers on reproducible experiment structure and execution:

  • typed schemas for studies, factors, blocks, hypotheses, outcomes, and analysis plans
  • design-of-experiments materialization (full/constrained factorial, randomized block, repeated measures, latin square, custom matrices)
  • run orchestration with deterministic seeding, checkpointing, resume support, and interactive tqdm progress on terminal runs
  • canonical artifact exports (study.yaml, manifest.json, conditions.csv, runs.csv, events.csv, evaluations.csv, and machine-readable hypothesis/plan files)
  • documented artifact contracts that downstream analysis can ingest directory-first
  • thin adapters that connect to the public APIs of sibling agent/problem/analysis libraries

Quickstart

Requires Python 3.12+. Maintainer workflows target Python 3.12 (.python-version).

python -m venv .venv
source .venv/bin/activate
make dev
make test

Run a basic example:

make run-example

This repo maintains a hard 90% total line-coverage floor in CI via make coverage. The repo-specific rule tracks the family-wide coverage policy in cmudrc/design-research#4.

CLI

The package installs a drexp CLI:

drexp validate-study path/to/study.yaml
drexp materialize-design path/to/study.yaml
drexp generate-doe --kind lhs --factors-json '{"x": [0, 1], "y": [10, 20]}' --n-samples 12 --out artifacts/doe.csv
drexp run-study path/to/study.yaml
drexp resume-study path/to/study.yaml
drexp export-analysis path/to/study.yaml
drexp bundle-results path/to/output_dir

Examples

See examples/README.md for runnable scripts, including end-to-end recipe executions.

Docs

See the published documentation for guides, the artifact contract, and API reference.

Build docs locally with:

make docs

Public API

Top-level exports are intentionally small:

  • Study, Factor, Level, Constraint, Condition, Block
  • RecipeStudyConfig, ComparisonStudyConfig, and recipe-specific typed config classes
  • Hypothesis, OutcomeSpec, AnalysisPlan
  • RunSpec, RunResult, BenchmarkBundle
  • build_design, generate_doe, materialize_conditions
  • build_univariate_comparison_study, build_bivariate_comparison_study, build_strategy_comparison_study, and other recipe builders
  • run_study, resume_study
  • export_analysis_tables, validate_study

Contributing

Contribution workflow and quality gates are documented in CONTRIBUTING.md.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

design_research_experiments-0.1.1.tar.gz (79.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

design_research_experiments-0.1.1-py3-none-any.whl (63.1 kB view details)

Uploaded Python 3

File details

Details for the file design_research_experiments-0.1.1.tar.gz.

File metadata

File hashes

Hashes for design_research_experiments-0.1.1.tar.gz
Algorithm Hash digest
SHA256 a769dbc82005bfd1760bcf50863db28e9cf07f4d50e2c85d911305bbad14f337
MD5 20709164ca82b4621fcc214c62b75e91
BLAKE2b-256 6f68b206476fa228b69dfb0bfdc5e53a4e18eceb5a796bb8ed944dcb0ee4ef9b

See more details on using hashes here.

Provenance

The following attestation bundles were made for design_research_experiments-0.1.1.tar.gz:

Publisher: workflow.yml on cmudrc/design-research-experiments

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file design_research_experiments-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for design_research_experiments-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 7fad621eee4bc870e92134a8042ad5160e3ead02f7b9364b0128f86ca202c864
MD5 9b24daa8245b88625217f263e7e2c7cb
BLAKE2b-256 85118e9460b830df7fd0f3c35c2ea75e4d4af38fde227d25e108352106f9571e

See more details on using hashes here.

Provenance

The following attestation bundles were made for design_research_experiments-0.1.1-py3-none-any.whl:

Publisher: workflow.yml on cmudrc/design-research-experiments

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page