Purpose
Provide scheduled source data for BOUSD data-confirmation support workflows without repeated manual exports.
Current state
Repo evidence confirms a single extract contract: `run.sh` executes `conf.d/config-dataconf-docs.toml`, writes `temp/result-dataconf-docs.csv`, and overwrites `SourceData-dataconf-docs!A1:ZZ10000` before saving `data/downloaded-dataconf-docs.csv`. `aether/docs/cron-example.txt` shows weekday 15-minute scheduling (`*/15 7-18 * * 1-5`) from `/home/bousdtech/repos/BOUSD-DataConfDocs-Extract/run.sh`, and host normalization maps this cron runtime primarily to `sal-01.bousd.us`.
Next step
Resolve role boundaries in the [Owner, Escalation, and Fallback Matrix](../owner-escalation-and-fallback-matrix/): consuming workflow owner, business sign-off owner, technical fallback operator, escalation owner, and backup coverage.
Interfaces
Inputs- SQL query files
- TOML configuration
- ODBC connection settings
- Google service-account access
Outputs- SourceData-dataconf-docs sheet tab
- temp/result-dataconf-docs.csv
- data/downloaded-dataconf-docs.csv
Reality to Action trace
Reality IngestionContributes in this stage.
Canonical StorageNot in scope.
Automation EnginesNot in scope.
Human InterfacesContributes in this stage.
Operational AdoptionContributes in this stage.
Core workflow
TBD. Document the 5-10 steps that define the core workflow.
Data integrity and contracts
Source of truth rules
- Aeries is canonical for the extracted data.
- Destination sheets are operational distribution surfaces and should not become the authoring system.
Safe handling
- Restrict service-account keys and ODBC credentials to approved operators.
- Treat CSV artifacts and destination tabs as restricted operational data.
- Document host ownership and recovery steps in an internal runbook.
Operational notes
Reliability posture
The `run.sh` pipeline is deterministic and schedule evidence exists in `aether/docs/cron-example.txt`. Host normalization now places this workload on `sal-01.bousd.us` as part of the Linux cron extract family. This repo documents extraction and sheet-write behavior, but not downstream consumer ownership or centralized alert routing.
Observability
- stdout/stderr from run.sh and bundled CLI tools
- CSV artifacts in `temp/result-dataconf-docs.csv` and `data/downloaded-dataconf-docs.csv`
- stale or missing downstream sheet tabs
Security and privacy
These jobs move restricted operational data from Aeries into Google Sheets. Keep service-account keys, credentials, logs, and CSV artifacts private.
Dependencies
Upstream- Aeries SQL access
- ODBC driver stability
- service-account sharing
- scheduler ownership
Downstream- data-confirmation document workflows
Ownership
OwnersTechnology Services, Josh Barton
UsersTechnology Services, district reporting stakeholders
Operational Notes
- Implementation pattern:
run.sh wrapper, conf.d/ configuration, SQL-over-ODBC extraction, local CSV artifacts, and controlled Google Sheets range overwrites. - Query scope is document metadata from Aeries
DCS/DCV context (portal flags, confirmation flags, school indicators, document grouping) exported through one config file. - Scheduled cadence: Every 15 minutes on weekdays between 07:00 and 18:00; repo evidence uses
*/15 7-18 * * 1-5 /home/bousdtech/repos/BOUSD-DataConfDocs-Extract/run.sh. - Runtime host context: Linux cron execution is now normalized to
sal-01.bousd.us for this extract family. - Destination contract in code:
SourceData-dataconf-docs!A1:ZZ10000. - Alerting note: no in-repo notifier/mailer path is documented in
run.sh; escalation ownership must come from external operations documentation. - Ownership boundary: technical extraction/runtime behavior is evidenced, but downstream consumer authority and business sign-off ownership are not represented in repo or scheduler artifacts.
- Governance note: unresolved ownership/escalation/fallback fields are tracked in the Owner, Escalation, and Fallback Matrix.
- Shared family risks include sheet header drift, secret sprawl, owner/escalation coverage gaps, and weak centralized monitoring.
Registry Alignment
- Registry context: this feed belongs to the Aeries-to-Google Sheets reporting extract family, which Atlas keeps as operational family context rather than as a standalone BOUSD integration.
- Registry clarified: this project is one of the live BOUSD reporting extracts supporting operational workflows beyond the dashboard pages.
- Validation gaps: scheduler cadence, destination tab contract, and primary host context (
sal-01) are now evidence-backed; unresolved owner/escalation/fallback fields are maintained in the Owner, Escalation, and Fallback Matrix together with destination-sheet inventory follow-up.