solver: issimo entitlement switch — watcher, config re-prep, server restart, AGENTS solver-mode - #127
Merged
Conversation
…le's POST), grant/revoke the issimo entitlement (other codes preserved), re-prep the session project, restart the opencode server, then report ready; AGENTS gains a '## Solver mode' section in HP (author with Piccolissimo, never claim cloud execution) + tests Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
… (Piccolissimo, same run-dir contract) selected by solver mode at both prep sites
The agent's vetted-solve flow follows {{TEMPLATE_PATH}} procedurally, so an
appended AGENTS instruction could never make HP sessions author Piccolissimo
solves — the template file itself must swap. solve_template_hp.jl mirrors
solve_template.jl line-for-line in every contract section (AMICODE_ITER,
AMICODE_PULSE_META/AMICODE_PULSE, STOP-file cooperative stop, iter PNGs,
result.toml, pulse.jld2, DONE) and swaps only the solver layer: CubicSplinePulse
+ Piccolissimo SplineIntegrator (Tsit5) inside SplinePulseProblem, rollout at
interpolation=:cubic. The optimizer stays Ipopt — AMICODE_ITER needs the raw
IPM state (inf_pr/inf_du) and the STOP poll rides Ipopt's intermediate
callback; Altissimo exposes neither. Both prepareOpencodeProject call sites
(boot + solver-mode watcher re-prep) now select the template by mode, and the
packaging guard pins the new asset.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
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.
Extension half of the real solver switch (pairs with harmoniqs/opencode#14).
What it does
solver-mode.json(the fork toggle's POST target). On aswitchingrequest it does the REAL switch:applyEntitlementForModegrants/revokes theissimoentitlement (other codes preserved) → re-runsprepareOpencodeProject(skills/scores/allowlist follow the entitlement) → restarts the opencode server → writesstatus:ready. This exercises the exact machinery a paid subscription will use (packageAllowlist → agent + amico-run import scan).templates/solve_template_hp.jl(PiccolissimoSplineIntegrator+SplinePulseProblem, cubic-spline rollout) preserving the run-dir contract line-for-line (AMICODE_ITER/PULSE/META, STOP poll, result.toml, iter PNGs). BothprepareOpencodeProjectsites (boot + switch) select the template by solver mode. Optimizer stays Ipopt — Altissimo's backend exposes no per-iteration hook, so the live convergence stream + cooperative stop only exist on Ipopt (another reason Altissimo execution is a follow-up).## Solver modesection in HP (author with Piccolissimo; never claim cloud execution).Known follow-ups (flagged, not in scope here)
scores/pulse-designer/templates/solve.jl) + tier-1 registry are NOT yet mode-aware — a solve routed through the score resolver can still pick plain Piccolo. Needs its own design pass (shared registry contract).Pkg.developof the Piccolissimo/Altissimo checkouts).Verification
442 tests green (4 new solver-mode tests: state round-trip, entitlement grant/revoke/preserve/idempotence, watcher single-fire+busy-latch); packaging guard updated so the HP template ships; live-verified end-to-end — flip → issimo granted → restart → ready → boot log shows
solve_template_hp.jl→ allowlist gains Piccolissimo.🤖 Generated with Claude Code