Skip to content

v0.3.3 — Tested with OpenCode 2.2.4, used-up limits stop at once

Latest

Choose a tag to compare

@WTLAIB WTLAIB released this 30 Oct 21:43
0a60281

Azure DevOps PR Review for OpenCode — 0.3.3

This release moves the tested host to OpenCode 2.2.4, stops at once when a
model's usage or spend limit is used up, and shows the OpenCode version in
/pr-check instead of a notice on every receipt. Reviews, comment previews,
adjustments and publication work as in 0.3.2.

What changed

  • Tested with OpenCode 2.2.4. AZPR is validated with OpenCode CLI 2.2.4
    instead of 2.1.4. The runtime needed no change: with the same fake provider,
    a review sends byte-identical model requests on both hosts. OpenCode 2.2.x
    offers new tools to every agent, such as image generation when a provider has
    an image model; private reviewers still see only AZPR's tools and the native
    read tools.
  • OpenCode version in /pr-check. A new OpenCode row names the host
    version and is a WARNING when it is not the tested one; reviews still run,
    and AZPR still refuses to start if OpenCode lacks something it needs.
    Receipts no longer end with a host notice after every OpenCode update.
  • Used-up limits stop at once. When a model's usage or spend limit is used
    up, AZPR refuses OpenCode's retries, starts no new session, and the receipt
    names the limit. Besides the provider quota and the OpenCode free-model
    limit, this covers the ChatGPT and OpenCode Go usage limits that OpenCode
    2.2.3 reports and OpenCode's spend limits; a used-up ChatGPT limit was
    previously retried as a rate limit.
  • Fewer host events. AZPR subscribes only to the session events that show
    a review progressing; OpenCode 2.2.0 and later deliver no others.
  • Proxies. OpenCode 2.2.4 always adds 127.0.0.1, localhost and ::1
    to NO_PROXY, and Bun honours NO_PROXY even for azure.proxy. Azure
    DevOps requests are unaffected; the
    company-network guide
    now says to keep dev.azure.com out of NO_PROXY when it must use the
    proxy.

Upgrading OpenCode

OpenCode 2.2.0 and later migrate OpenCode's database when they first start,
and the migration cannot be undone. Stop the service and back up the database
before installing 2.2.4:

opencode service stop
mkdir -p ~/opencode-db-backup && cp -p ~/.local/share/opencode/opencode.db* ~/opencode-db-backup/
npm install -g @opencode/cli@2.2.4
opencode service start

Use sudo for the global install if your npm prefix needs it. To go back,
stop the service, reinstall the previous OpenCode and restore the backup.
AZPR 0.3.3 also runs on OpenCode 2.1.4 (/pr-check then shows the OpenCode
WARNING row), so the two upgrades can happen in either order.

Installation

opencode plugin add opencode-azure-devops-pr-review@0.3.3

Alternatively, install the same release from Git:

opencode plugin add 'github:WTLAIB/opencode-azure-devops-pr-review-v2#v0.3.3'

Add only one of them. Follow the
quickstart
for a private PAT file, /pr-setup, a service restart and the first review.

Upgrading AZPR

For an entry that opencode plugin add created, add 0.3.3 and remove the
previous version only when the download succeeded. Replace PREVIOUS_VERSION
with the version in your plugins entry, such as 0.3.2:

opencode plugin add opencode-azure-devops-pr-review@0.3.3 &&
  opencode plugin remove opencode-azure-devops-pr-review@PREVIOUS_VERSION

Run them when no AZPR command is running: OpenCode 2.1.4 and 2.2.4 switch the
running service to 0.3.3 within seconds, without a restart, and
opencode plugin list should then show a single azpr row with 0.3.3. Running
only the first command leaves the previous version running. For an entry with
options, change only its package value; the OpenCode service then downloads
0.3.3 with its own network settings. See
upgrading
for the details. External settings, the PAT file and review records remain in
place, and this release adds no settings or required migration.

For a source installation, extract the new archive and run its installer with
--replace to retain settings:

sh install.sh --config-dir /absolute/path/to/v2-opencode-config --replace

Compatibility and validation

The tested target is OpenCode CLI 2.2.4 (V2 plugin API), Node.js
22.23.3, Ubuntu 22.04.5 under WSL2, and Azure DevOps Services REST API
7.1. OpenCode 1.x and Azure DevOps Server are not supported; other operating
systems remain unvalidated.

The validation record
describes the comparison of OpenCode 2.1.4 and 2.2.4 and the release checks
with fake services. A review-only live run of the candidate with
openai/gpt-6-luna on the 1-file test PR, in a service still on OpenCode
2.1.4, completed and confirmed the PR's three known defects.

The npm package, Git package and source archive contain the same runtime, with
no npm dependencies or install scripts; the source archive also contains the
documentation, installers and settings example. The release source artifact is
opencode-azure-devops-pr-review-v2-0.3.3.tar.gz, with checksums in SHA256SUMS.