Skip to content

feat(ingestion): schedule the San Acacia ingest weekly - #860

Merged
jirhiker merged 1 commit into
stagingfrom
feat/san-acacia-weekly-schedule
Aug 19, 2026
Merged

feat(ingestion): schedule the San Acacia ingest weekly#860
jirhiker merged 1 commit into
stagingfrom
feat/san-acacia-weekly-schedule

Conversation

@jirhiker

Copy link
Copy Markdown
Member

Part of task 4.4. san_acacia_ingest over the whole san_acacia asset group,
driven by san_acacia_weekly.

Weekly, not the daily cadence the plan assumed

These are five-minute diver readings nobody watches in real time, and the
vendor's endpoint answers 500 when pushed. The watermark makes the interval a
question of freshness rather than correctness: each run resumes from where
the last finished, so a missed week is caught up by the next run rather than
lost.

Mondays 05:00 America/Denver, not UTC. The wells, the people reading the
data and the working day are all in one timezone — a schedule drifting an hour
twice a year would be the surprising choice. After midnight so a run covers
whole days; early enough that a failure is visible at the start of the week
rather than discovered the following Monday.

Stopped by default

DefaultScheduleStatus.STOPPED. Turning it on starts writing to Ocotillo,
and the first run for the 24 wells without history fetches back to
INITIAL_START. That should be a decision taken once, deliberately — not a
consequence of merging this.

Start it in the Dagster+ UI when you want it running.

Selected by group

So a fourth asset added to san_acacia joins the schedule without touching the
job. Dagster orders the three steps from their asset dependencies rather than
anything declared here.

A test pins the selection to exactly raw_san_acacia_locations,
raw_san_acacia_readings and san_acacia_observations, and asserts
ingestion_heartbeat and database_connectivity are excluded. A group name is
a string: a typo would leave a schedule that runs successfully and ingests
nothing, which looks exactly like everything working.

Retries

RetryPolicy(max_retries=2, delay=60) — enough for a dropped request or a token
expiring mid-run. Not more: a persistent 500 means the window is wrong or the
endpoint is unwell, and hammering it makes both worse.

Still open in 4.4

Observability and alerting — log bridge, failure notification, run metadata.

107 tests pass.

🤖 Generated with Claude Code

One job over the san_acacia asset group, selected by group so a fourth asset
joins the schedule without touching the job. Dagster orders the three steps from
their dependencies.

Weekly rather than the daily cadence the plan assumed. These are five-minute
diver readings nobody watches in real time, the vendor's endpoint answers 500
when pushed, and the watermark makes the interval a question of freshness rather
than correctness -- a run resumes from wherever the last one finished, so a
missed week is caught up rather than lost.

Mondays 05:00 America/Denver rather than UTC: the wells, the people reading the
data and the working day are all in one timezone, so a schedule that shifts an
hour twice a year would be the surprising choice.

Stopped by default. Turning it on begins writing to Ocotillo, and the first run
for the 24 wells without history fetches back to the floor. That is a decision
somebody should take once, not a consequence of a merge.

A test pins the selection to exactly the three ingest assets. A group name is a
string, and a typo would leave a schedule that runs successfully and ingests
nothing, which looks like everything working.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@github-actions

github-actions Bot commented Aug 19, 2026

Copy link
Copy Markdown
Contributor

Coverage

77.97% total — gate is 75%.

Coverage for the Python files changed in this PR
Name Stmts Miss Cover Missing
automated_ingestion/defs/definitions.py 5 0 100%
automated_ingestion/defs/jobs/san_acacia.py 4 0 100%
TOTAL 9 0 100%

@github-actions

github-actions Bot commented Aug 19, 2026

Copy link
Copy Markdown
Contributor

Your pull request is automatically being deployed to Dagster Cloud.

Location Status Link Updated
ocotillo-automated-ingestion View in Cloud Aug 19, 2026 at 06:52 PM (UTC)

@jirhiker
jirhiker merged commit 8c02977 into staging Aug 19, 2026
10 checks passed
@jirhiker
jirhiker deleted the feat/san-acacia-weekly-schedule branch August 19, 2026 18:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant