Skip to content

Anytime search: deadlines for the coupled, memory-lift, targeted and universal searches - #51

Merged
Autoplectic merged 1 commit into
mainfrom
anytime-inner-stages
Nov 13, 2026
Merged

Autoplectic merged 1 commit into
mainfrom
anytime-inner-stages

Conversation

@Autoplectic

Copy link
Copy Markdown
Member

Summary

Follow-up to #49. With time_budget set, the last unbudgeted search loops could still overrun by minutes. That is enough to hit the survey's hard timeout under parallel load. Each now takes a deadline (a time.monotonic() value) and returns a valid result when it stops:

  • coupled_search: no new start after the deadline; the ε-machine seed always runs.
  • memory_lift_search: no new start after the deadline (at least one runs).
  • targeted_line_split_seeds: no new start or hop, and only the best decomposition is polished, once the deadline passes.
  • universal_generative_optimizer: no larger state count once a generator is verified, and its coupled_search calls get the same deadline.

The pipeline gives them 50%, 20%, 80% and 60% of the remaining budget.

Trace on a 4-state survey case that used to hit the 1500 s hard timeout: with time_budget=300 it now returns at 331 s with bracket [1.406, 1.777] (budget_exhausted=True). The remaining overrun was a single coupled-search size that started just before the deadline; these deadlines stop that loop.

Test plan

  • New test: the four searches stop promptly at an expired deadline with valid results.
  • Generator suites: 180 passed.
  • ruff, ty (no new diagnostics).

Made with Cursor

Co-authored-by: Cursor <cursoragent@cursor.com>
@Autoplectic
Autoplectic merged commit aacff76 into main Nov 13, 2026
10 checks passed
Autoplectic pushed a commit that referenced this pull request Nov 13, 2026
separating_optima has no deadline and dominated the 120 s wall-clock check
on the Ubuntu CI runners (about 158 s under coverage), failing main since #51.

Co-authored-by: Cursor <cursoragent@cursor.com>
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