FE-1412: Scale the Python client's timeout for seeded trials - #9229
Draft
kube wants to merge 1 commit into
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
1 Skipped Deployment
|
kube
force-pushed
the
cf/fe-1412-python-client-support-seeded-trials-in-the-optimizer-service
branch
from
August 17, 2026 23:51
3eda58b to
63d0a20
Compare
kube
force-pushed
the
cf/fe-1412-python-client-support-seeded-trials-in-the-optimizer-service
branch
from
August 17, 2026 23:56
63d0a20 to
7007b77
Compare
kube
marked this pull request as ready for review
August 17, 2026 23:56
PR SummaryCursor Bugbot is generating a summary for commit 7007b77. Configure here. |
Contributor
There was a problem hiding this comment.
Pull request overview
Scales Python optimization response timeouts for sequential seeded trials and documents the behavior.
Changes:
- Validates
seedsPerTrialand scales response deadlines. - Adds unit and CLI end-to-end coverage.
- Documents seeded execution and timeout behavior.
Reviewed changes
Copilot reviewed 6 out of 6 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
session.py |
Stores the base response timeout. |
optimization.py |
Validates seed count and scales timeouts. |
test_optimization_session.py |
Tests scaling and invalid values. |
test_e2e_cli.py |
Tests a two-seed CLI trial. |
Python README.md |
Documents scaled deadlines. |
Optimizer README.md |
Documents sequential seeded trials. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
kube
marked this pull request as draft
August 18, 2026 00:14
kube
force-pushed
the
cf/fe-1412-python-client-support-seeded-trials-in-the-optimizer-service
branch
from
August 18, 2026 00:33
7007b77 to
d7e47b1
Compare
kube
force-pushed
the
cf/fe-1412-python-client-support-seeded-trials-in-the-optimizer-service
branch
from
August 18, 2026 00:47
d7e47b1 to
478a28f
Compare
kube
force-pushed
the
cf/fe-1412-python-client-support-seeded-trials-in-the-optimizer-service
branch
from
August 18, 2026 22:48
2e527f6 to
bc69cf3
Compare
kube
force-pushed
the
cf/fe-1412-python-client-support-seeded-trials-in-the-optimizer-service
branch
from
August 18, 2026 23:19
bc69cf3 to
b8b924e
Compare
kube
force-pushed
the
cf/fe-1412-python-client-support-seeded-trials-in-the-optimizer-service
branch
from
August 18, 2026 23:37
b8b924e to
c872ad2
Compare
kube
force-pushed
the
cf/fe-1412-python-client-support-seeded-trials-in-the-optimizer-service
branch
from
August 19, 2026 09:03
c872ad2 to
bd52c92
Compare
kube
force-pushed
the
cf/fe-1412-python-client-support-seeded-trials-in-the-optimizer-service
branch
from
August 19, 2026 09:40
bd52c92 to
454b48b
Compare
3 tasks
With execution.seedsPerTrial, one optimization.evaluate may legally run up to 100 simulations sequentially, so the bindings validate the seedsPerTrial reported by optimization.describe (integer, 1-100) and multiply the per-response deadline by it. A new end-to-end test drives a two-seed trial against the real built CLI, asserting the derived seed sequence, per-seed replicates, and the mean objective.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
🌟 What is the purpose of this PR?
Top of the FE-1408 stack: makes the Python side ready for trials that run multiple seeded simulations. The seeded runs execute sequentially in the CLI, so one
optimization.evaluatemay legally takeseedsPerTrial ×the single-run time — the client's fixed 240 s response deadline must scale with it.Stack #9226: FE-1410 → FE-1411 → FE-1408 → FE-1413 → FE-1270 → this PR.
🔗 Related links
🔍 What does this change?
@local/petrinaut-python(consumed byapps/petrinaut-opt):OptimizationSession.describe_optimization()validates the reportedstudy.seedsPerTrial(integer, 1–100; protocol error otherwise) and multiplies the per-response deadline by it.[42, 1013904268], the per-seedreplicates, and the mean objective.No image changes: the seeded runs are sequential, so no worker permissions or pool caps are needed.
Pre-Merge Checklist 🚀
🚢 Has this modified a publishable library?
This PR:
📜 Does this require a change to the docs?
The changes in this PR:
🕸️ Does this require a change to the Turbo Graph?
The changes in this PR:
🛡 What tests cover this?
seedsPerTrial, rejection of invalid values, and the sequential two-seed e2e against the real bundle.❓ How to test this?
🤖 Generated with Claude Code