Skip to content

[iris] Reject child submissions when parent is absent from the DB#4560

Open
claude[bot] wants to merge 2 commits intomainfrom
agent/20260409-fix-4559
Open

[iris] Reject child submissions when parent is absent from the DB#4560
claude[bot] wants to merge 2 commits intomainfrom
agent/20260409-fix-4559

Conversation

@claude
Copy link
Copy Markdown
Contributor

@claude claude bot commented Apr 9, 2026

After a controller restart from a checkpoint that did not capture a parent row, child jobs were silently accepted with parent_job_id = NULL, leaving orphaned rows that the dashboard WHERE depth = 1 query never surfaces. Extend launch_job's parent guard to reject absent parents with FAILED_PRECONDITION alongside terminated ones, and drop the silent null fallback in transitions.submit_job. Adds a regression test.

Fixes #4559

After a controller restart from a checkpoint that did not capture a parent
row, child jobs were silently accepted with `parent_job_id = NULL`, leaving
orphaned rows the dashboard `WHERE depth = 1` query never surfaces. Extend
launch_job's parent guard to reject absent parents with FAILED_PRECONDITION
alongside terminated ones, and drop the silent null fallback in
transitions.submit_job.

Fixes #4559

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The Iris backend in integration_client previously wrapped tests in an
IrisContext whose parent job_id did not correspond to a real row in the
controller DB; this relied on the silent null-parent fallback that is now
removed. Submit a long-running holder job and use its id as the parent
context so child submissions have a live parent row.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@rjpower rjpower requested a review from yonromai April 9, 2026 16:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

agent-generated Created by automation/agent

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[iris] Child job submission silently accepted when parent is absent from DB

1 participant