Developer scripts
Table of Contents
The scripts/ directory at the repository root holds standalone automation
scripts that support the build, test, and documentation workflows. These are
distinct from component-level scripts (e.g. ores.compass, ores.sql) which live
inside their respective projects/<component>/ trees and are documented in
those component overviews.
Where a Python script and a shell wrapper share a purpose, both are listed together; the shell script delegates to the Python one and provides a convenient entry point for CI or Make targets.
Sprint metrics and reporting
Scripts that extract data from git history, agile docs, and test runs to produce reports and charts used in sprint health reviews.
| Script | Purpose | Notes |
|---|---|---|
sprint_prs_commits.gnuplot |
Renders a dual-axis bar chart of PRs and commits per day for a sprint. | Reads build/output/sprint_NN/sprint_activity.csv; writes PNG to doc/agile/versions/v0/sprint_NN/. Data generated by compass sprint charts. |
sprint_line_churn.gnuplot |
Renders lines added/deleted per day for a sprint. | Same CSV source and output convention as above. |
sprint_pr_cycle.gnuplot |
Renders PR open-to-merge cycle times for a sprint. | Reads pr_cycle_times.csv. |
sprint_stories_done.gnuplot |
Renders cumulative stories DONE per day for a sprint. | Reads sprint_progress.csv. |
Validation and quality
Scripts that validate artefacts against external standards or committed baselines.
| Script | Purpose | Notes |
|---|---|---|
validate_ore_examples.sh |
Validates every XML file in external/ore/examples/ against the ORE XSD schema. |
Used as a pre-import gate; see the ORE import plan for context. |
ore_domain_roundtrip_check.py |
Compares committed roundtrip outputs in assets/test_data/domain_roundtrip/ against upstream ORE originals; reports per-file and per-entity fidelity for Portfolio and CurrencyConfig document types. |
Standalone Python; no shell companion. |
Documentation generation
Scripts that generate or transform documentation artefacts.
| Script | Purpose | Notes |
|---|---|---|
backfill_story_task_tables.py |
Back-fills the * Tasks section in sprint story docs, replacing bullet-list entries with org-mode tables. |
One-shot migration script; safe to re-run with --dry-run. |
Utilities
General-purpose helper scripts not tied to a specific workflow.
| Script | Purpose | Notes |
|---|---|---|
convert_to_unix.sh |
Converts text files in a given project root from DOS to Unix line endings using dos2unix. |
Accepts an optional path argument; defaults to .. Excludes vcpkg/ and output/. |
See also
- ores.compass — repository compass tool with its own script family (
compass.sh,compass.py), documented in the component overview. - ores.sql — database lifecycle management; see its
* Scriptssection for the full inventory of lifecycle and utility scripts.