Appendix 14C: Chapter 14 artifact dictionary (what each output is for)
Chapter 14 is designed to produce a small “analysis pack” of artifacts that are:
easy to inspect (CSV / Markdown),
easy to automate (JSON),
easy to review visually (figures + manifest),
and reproducible (regenerate from the same dataset + seed).
This appendix lists each artifact, its purpose, and what to look at first.
Where the Chapter 14 artifacts live
Chapter 14 is run via:
make business-ch14
The Makefile passes an output root like --outdir outputs/track_d.
The Chapter 14 script then writes inside a Track D subfolder, so the final location is:
outputs/track_d/track_d/
Typical directory layout:
outputs/track_d/track_d/
ch14_driver_table.csv
ch14_regression_design.json
ch14_regression_summary.json
ch14_regression_memo.md
ch14_figures_manifest.csv
figures/
ch14_fig01_cogs_vs_units.png
ch14_fig02_revenue_vs_units.png
ch14_fig03_actual_vs_predicted_revenue_m3.png
Suggested review order (fastest to insight)
ch14_driver_table.csv(sanity check the monthly driver table)ch14_regression_memo.md(read the story in plain English)figures/*.png(does the relationship look stable / linear-ish?)ch14_regression_summary.json(exact coefficients, R², and structured values)ch14_regression_design.json+ch14_figures_manifest.csv(repro + reporting metadata)
Artifact dictionary
Artifact |
Purpose |
What to look for first |
|---|---|---|
|
The monthly driver table used for all models (units sold, invoice count, revenue, COGS). This is the “data contract” for Chapter 14. |
Check month alignment and magnitude:
- Are months continuous?
- Are |
|
Human-readable summary (the “starter executive memo”). This is what you would paste into a planning email or a short doc. |
Read it top-to-bottom: - Are the slopes/intercepts interpreted correctly (baseline vs rate)? - Do the guardrails make sense (driver lens, not causation)? |
|
Machine-readable results: coefficients, R², key diagnostics, and structured values for downstream automation. |
Look for: - Coefficients (intercept + slopes) - R² per model - Any “notes”/flags the script includes for interpretation |
|
Reproducibility “design contract”: expected inputs, driver definitions, and model formulas. Useful for reviewers and for future chapters that want to rely on the same structure. |
Confirm: - Model formulas match the chapter narrative (m1/m2/m3) - Driver definitions match the dataset lineage (inventory movements, AR events, IS lines) |
|
A reporting manifest listing each figure file plus metadata (chart type, title, axis labels, guardrail note, data source). This supports consistent documentation and future “report assembly.” |
Open it and confirm:
- All figure filenames exist under |
|
Visual check for Model 1: COGS vs units sold with a fitted line. |
Look for: - Is the relationship roughly linear? - Do you see major outliers dominating the fit? - Does the intercept look plausible (near-zero vs baseline cost)? |
|
Visual check for Model 2: Revenue vs units sold with a fitted line. |
Look for: - Is slope stable (implied blended price-per-unit)? - Any clusters suggesting mix/price shifts? - Does a non-zero intercept suggest timing or non-unit revenue? |
|
Visual check for Model 3: multi-driver revenue model (actual vs predicted / fit quality view). |
Look for: - Are predictions systematically high/low in certain months (patterned residuals)? - Does adding invoice_count appear to improve fit meaningfully? - Any “regime change” behavior (model works early, breaks later)? |
How to regenerate the artifacts (and why they are not committed)
Artifacts under outputs/ are generated and not committed to git.
This keeps the repo small and makes your results reproducible.
Standard regeneration:
# Ensure the dataset exists locally (gitignored)
make business-nso-sim
make business-validate
# Rebuild Chapter 14 artifacts
make business-ch14
If you want to run Chapter 14 on a different dataset folder:
python -m scripts.business_ch14_regression_driver_analysis \
--datadir data/synthetic/nso_v1 \
--outdir outputs/track_d \
--seed 123
Common “first checks” when something looks wrong
If slopes look odd, first verify
ch14_driver_table.csv: a sign convention mistake (e.g., units sold negative) can flip interpretations.If a figure is missing, open
ch14_figures_manifest.csvand confirm the filename is listed and matches the file on disk.If revenue/COGS appear inconsistent, re-run:
make business-validateTrack D assumes measurement quality before modeling.
Closing note
Chapter 14 artifacts are intentionally designed to make regression “accounting-grade”:
a driver table you can audit,
models you can explain,
visuals you can sanity-check,
and structured JSON you can automate.
Appendix 14B (NSO v1 data dictionary) explains the tables. Appendix 14C explains the artifacts produced from those tables.