Skip to content

v0.18.3

Latest

Choose a tag to compare

@github-actions github-actions released this 23 Oct 03:34
155d2ef

Patch Changes

  • #271 b66598e Thanks @lucasbraum! - fix no longer hides an agent session that could not work. When the Anthropic API refuses the request (an invalid key, an empty credit balance, a model the key cannot use), the Agent SDK ends the session after one turn with nothing spent and the API's message; Uptide dropped that message, recorded "made no change" for every site and ran the feedback rounds into the same error. Now the task records the error (llm.tasks[].error, gate error), no further session starts, and every task that leaves nothing says why in llm.tasks[].noChange: the API's error, no turn, no output, a refusal, a stop, or every edit rejected. When nothing the agent did stayed, report.json (llm.agentIdle), the terminal and the PR body say "The agent did not change anything: ", and the PR body no longer says the code was migrated when every site is still manual.

  • #271 b66598e Thanks @lucasbraum! - The lockfile check no longer stops an upgrade when the package manager moves an unchanged package's dependency onto the copy the upgrade installs. Upgrading express 4 to 5, pnpm can move another package's qs or iconv-lite onto the newer copy express 5 brings: the old copy leaves the lockfile, and every package depending on it read as "same version, different resolution", so the run fell back to an agent-led draft. Such a move is now in scope when it stays in the same major (the same minor below 1.0) and never goes back, and the copy it left goes with it when nothing else needs it; the PR body and the terminal list each one as lockfile housekeeping ("onto the upgrade's copy"). A move to a release the upgrade did not bring, a downgrade, a major apart, or a change to what the repository declares itself is still refused. The same applies to npm (a nested copy dropped for the hoisted one) and Yarn Berry (a descriptor that now resolves to the upgrade's copy).

  • #273 51d0370 Thanks @lucasbraum! - fix and check in a checkout whose dependencies are not installed now stop before any analysis with PACKAGE_NOT_INSTALLED (exit 2), name the package.json that declares the package, say whether nothing is installed or only that package is missing, and give the frozen install for the lockfile (npm ci, pnpm install --frozen-lockfile, yarn install --frozen-lockfile, yarn install --immutable). Before, a node_modules in a directory above the project counted as the project's install, so a fresh clone under such a directory got past the check and fix failed with a misleading "has no upgrade". Uptide still installs nothing in your checkout. check --json now answers every refusal on stdout with {"error": {"code", "message"}}, as fix --json does. When the package is already at or past the target, fix says " is already at (target )".

  • #271 b66598e Thanks @lucasbraum! - The PR body titles each group of sites by what changed instead of an internal key: a pack rule's group by the pack's one-line summary of the rule (report.json keeps them as ruleSummaries), and sites no rule covers, keyed by the path of the declaration that changed (e.query), by what the compiler said there or by what changed ("e.query was removed in express 5.3.0").