Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 16 additions & 4 deletions src/amplifier_app_opencode/prereqs.py
Original file line number Diff line number Diff line change
Expand Up @@ -52,8 +52,20 @@
OPENCODE_INSTALL_SH = "https://opencode.ai/install"
OPENCODE_NPM_PACKAGE = "opencode-ai"

# Minimum amplifier-agent version amplifier-opencode requires. >= 0.14.1 is the
# first version where a `delegate` call does not hang. On the HTTP face we drive
# Minimum amplifier-agent version amplifier-opencode requires. >= 0.15.0 is the
# first version where the agent owns its own storage tree: it binds
# ``AMPLIFIER_HOME`` to ``~/.amplifier-agent/foundation`` before importing
# amplifier_foundation, so module clones, provider rate-limit state and the
# ChatGPT OAuth token no longer land in ``~/.amplifier`` -- a directory owned by
# amplifier-app-cli and shared, unnamespaced, with every other Amplifier
# application on the machine. On a host that runs both, the two applications
# were reading and writing the same clone directories. 0.15.0 also resolves the
# floating ``@main`` module refs to concrete commits before preparing the
# bundle, so an upstream module fix reaches an existing install instead of being
# pinned forever to whatever ``main`` pointed at on the day it was first set up;
# a machine below this floor keeps serving frozen module code no reinstall can
# refresh.
# (0.14.1 remains the floor for a `delegate` call not hanging. On the HTTP face we drive
# for every turn, provider selection is per request: the mount plan's provider
# list is narrowed to the one the wire `model` field selects, then restored so
# the next request starts clean. Below 0.14.1 that restore mutated the mount plan
Expand All @@ -80,8 +92,8 @@
# with the native anthropic provider's; 0.10.0 for `GET /v1/skills` and
# `GET /v1/modes`, which the skills and modes bridges read; 0.9.3 for
# `auth set --stdin`, which onboarding uses to hand the provider key to the agent
# off-argv. 0.14.1 subsumes all five.)
MIN_AGENT_VERSION = "0.14.1"
# off-argv. 0.15.0 subsumes all of the above.)
MIN_AGENT_VERSION = "0.15.0"
# The silent, launch-time auto-install/self-heal targets this exact known-good
# git tag rather than a moving branch, so a reliability tool never drags users
# onto un-vetted ``main``. Kept in lockstep with MIN_AGENT_VERSION: to adopt a
Expand Down
2 changes: 1 addition & 1 deletion tests/e2e/suites/onboarding/conftest.py
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@
SENTINEL = "sk-e2e-SENTINEL-DO-NOT-LEAK-abc123"

# Version the fake agent reports for ``--version``. Comfortably above
# ``prereqs.MIN_AGENT_VERSION`` (0.14.1 as of this writing) so the preflight's
# ``prereqs.MIN_AGENT_VERSION`` (0.15.0 as of this writing) so the preflight's
# version-floor check passes without this suite needing to track that constant.
FAKE_AGENT_VERSION = "99.0.0"

Expand Down