Conversation
Owner
|
This no longer merges into All of it is prose, so taking staging's text and re-applying your lines on top should be the whole job. git fetch origin
git merge origin/staging
# resolve, then
uv run pytest tests/ -q
uv run ruff check code_review_graph/
uv run mypy code_review_graph/ --ignore-missing-imports --no-strict-optional
git pushI have not reviewed the change itself yet. That comes once it merges and the checks run against the merged state, since staging has moved a long way and the result is what matters. |
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.
Closes #1038.
Problem
The OpenCode installer template (
_opencode_plugin_content()incode_review_graph/skills.py) exports a bare function using the removedapp.onAPI. On OpenCode 2.x (verified v2.0.7) the loader rejects it before any hook runs:opencode plugin listshows the entry with ID-/ statefailed. #947 covers theapp.onfailure; #949 ports the template to the V1 returned-hooks shape, but a function default export still fails the V2 loader, so 2.x stays broken.The template's
run($, cmd)helper has a second bug (also noted in #947): interpolating a full command string into Bun's$template escapes it into a single executable name.Fix
Plugin.define({ id: "code-review-graph", setup(ctx) {...} })from@opencode/plugin.session.createdviactx.event.subscribe+status(scoped to the plugin instance directory).ctx.tool.hook("execute.after")onedit/write/patch+update --skip-flows(V2 has nofile.editedhook).ctx.tool.hook("execute.before")onbash/shell/execute+detect-changes --brief, never blocking.node:child_processexecFilewith argv arrays.Verification
uv run pytest tests/test_skills.py -q: 210 passed.uv run ruff check code_review_graph/skills.py tests/test_skills.py: clean.bun build --external @opencode/plugin: bundles clean.opencode reload,opencode plugin listand/api/pluginreportcode-review-graph -> active(was-/failed), no newfailed to load pluginentries;code-review-graph statusworks against a real graph.