Conversation
| on: | ||
| push: | ||
| branches: [dev] | ||
| pull_request: |
There was a problem hiding this comment.
WARNING: pull_request trigger likely can't write/push to beta (and may be unsafe if it ever can)
This job needs contents: write and runs bun script/beta.ts which force-pushes the beta branch. On pull_request events from forks, GITHUB_TOKEN is typically read-only and secrets are unavailable, so this workflow usually can't push. If the intent is to run the sync when a maintainer-applied label is present, pull_request_target + a safe checkout strategy (avoid executing PR code) is usually the workable pattern.
| push: | ||
| branches: | ||
| - dev | ||
| pull_request: |
There was a problem hiding this comment.
WARNING: pull_request trigger + commit/push step will fail or behave unexpectedly for forks
This workflow later runs git push origin HEAD:${{ github.ref_name }}. On pull_request events, github.ref_name is not the head branch name (often NNN/merge), and for fork PRs the token typically cannot push to the fork anyway. Consider guarding to same-repo PRs only (or switching to pull_request_target with tight constraints) to avoid noisy failures.
| const cmd = strings.reduce((acc, str, i) => acc + str + (values[i] ?? ""), "") | ||
| return { | ||
| async nothrow() { | ||
| const proc = Bun.spawn(cmd.split(" "), { |
There was a problem hiding this comment.
WARNING: cmd.split(" ") argument parsing is brittle and can break commands
In $(...), using cmd.split(" ") will mis-handle quoted args, paths with spaces, and any future interpolations that include whitespace. This can cause hard-to-diagnose failures (or, if values ever become user-influenced, opens the door to argument injection). Prefer Bun's built-in $ (from bun) or Bun.spawn([cmd, ...args]) with an explicit argv array.
| 1. Check the logs for error messages | ||
| 2. Try running with `--print-logs` to see output in the terminal | ||
| 3. Ensure you have the latest version with `opencode upgrade` | ||
| 3. Ensure you have the latest version with `kilo upgrade` |
There was a problem hiding this comment.
WARNING: Docs command likely incorrect (kilo binary may not exist)
This repo appears to expose the CLI as opencode (see packages/opencode/package.json bin), so kilo upgrade is likely a broken command for users.
| 3. Ensure you have the latest version with `kilo upgrade` | |
| 3. Ensure you have the latest version with `opencode upgrade` |
| let output = [`version=${Script.version}`] | ||
|
|
||
| if (!Script.preview) { | ||
| await $`gh release create v${Script.version} -d --title "v${Script.version}" ${Script.preview ? "--prerelease" : ""}` |
There was a problem hiding this comment.
WARNING: Dead Script.preview check + possible empty CLI arg
This block only runs when !Script.preview, so ${Script.preview ? "--prerelease" : ""} can never add --prerelease. Also, interpolating "" into Bun’s $`` can pass an empty argument to gh`, which may be treated as an (invalid) asset path.
| await $`gh release create v${Script.version} -d --title "v${Script.version}" ${Script.preview ? "--prerelease" : ""}` | |
| await $`gh release create v${Script.version} -d --title "v${Script.version}"` |
If you do want prereleases for preview builds, the surrounding if (!Script.preview) likely needs restructuring so preview runs gh release create with --prerelease.
| const previous = await getLatestRelease() | ||
| const notes = await buildNotes(previous, "HEAD") | ||
| // notes.unshift(highlightsTemplate) | ||
| await $`git commit -am "release: v${Script.version}"` |
There was a problem hiding this comment.
WARNING: Release publish can fail when there’s nothing to commit
git commit -am ... exits non-zero if there are no changes (e.g. rerunning the script or if version files were already updated), and Bun’s $`` throws on non-zero exits. Consider guarding with git status --porcelain/git diff --quiet` before committing (or handle the “nothing to commit” case explicitly).
| await $`git commit -am "release: v${Script.version}"` | ||
| await $`git tag v${Script.version}` | ||
| await $`git fetch origin` | ||
| await $`git cherry-pick HEAD..origin/dev`.nothrow() |
There was a problem hiding this comment.
WARNING: Cherry-pick failures are ignored
git cherry-pick ....nothrow() returns { exitCode, stdout, stderr }, but the result is ignored. If the cherry-pick fails (conflicts, empty range, etc.), the script will still push tags/branches and edit the release notes, which can leave the release in a partially-updated state.
|
|
||
| - Big Pickle is a stealth model that's free on OpenCode for a limited time. The team is using this time to collect feedback and improve the model. | ||
| - GLM 4.7 Free is available on Kilo for a limited time. The team is using this time to collect feedback and improve the model. | ||
| - Kimi M2.5 Free is available on Kilo for a limited time. The team is using this time to collect feedback and improve the model. |
There was a problem hiding this comment.
SUGGESTION: Typo in model name (Kimi M2.5 → Kimi K2.5)
| - Kimi M2.5 Free is available on Kilo for a limited time. The team is using this time to collect feedback and improve the model. | |
| - Kimi K2.5 Free is available on Kilo for a limited time. The team is using this time to collect feedback and improve the model. |
Code Review SummaryStatus: 10 Issues Found | Recommendation: Address before merge Overview
Issue Details (click to expand)WARNING
SUGGESTION
Other Observations (not in diff)Issues found in unchanged code that cannot receive inline comments:
Files Reviewed (10 files)
|
| ```json title="opencode.json" {3} | ||
| { | ||
| "$schema": "https://opencode.ai/config.json", | ||
| "$schema": "https://kilo.ai/config.json", |
There was a problem hiding this comment.
WARNING: $schema URL likely should remain opencode.ai (docs consistency)
Existing docs/comments indicate schemas stay https://opencode.ai/...; switching to kilo.ai may break editor validation until the schema is published there.
| "$schema": "https://kilo.ai/config.json", | |
| "$schema": "https://opencode.ai/config.json", |
| ```json title="my-theme.json" | ||
| { | ||
| "$schema": "https://opencode.ai/theme.json", | ||
| "$schema": "https://kilo.ai/theme.json", |
There was a problem hiding this comment.
WARNING: Theme schema URL likely should remain opencode.ai
If the theme schema isn’t hosted at kilo.ai yet, this change will break validation for custom theme files.
| "$schema": "https://kilo.ai/theme.json", | |
| "$schema": "https://opencode.ai/theme.json", |
| ```json title="opencode.json" | ||
| { | ||
| "$schema": "https://opencode.ai/config.json", | ||
| "$schema": "https://kilo.ai/config.json", |
There was a problem hiding this comment.
WARNING: $schema URL likely should remain opencode.ai
Other docs in this PR were flagged for the same change; if kilo.ai/config.json isn’t guaranteed to exist, keeping opencode.ai avoids broken schema validation for users.
| "$schema": "https://kilo.ai/config.json", | |
| "$schema": "https://opencode.ai/config.json", |
| const issueNumber = isPR ? context.payload.pull_request.number : context.payload.issue.number; | ||
| const authorAssociation = isPR ? context.payload.pull_request.author_association : context.payload.issue.author_association; | ||
|
|
||
| if (authorAssociation === 'CONTRIBUTOR') { |
There was a problem hiding this comment.
WARNING: Contributor label condition likely misses most external PR authors
pull_request.author_association commonly returns FIRST_TIME_CONTRIBUTOR / FIRST_TIMER for new community PRs (and NONE in some cases). Checking only CONTRIBUTOR may skip labeling the majority of non-member PRs. Consider including the first-time values or inverting the check (eg, label when association is not MEMBER/OWNER/COLLABORATOR).
https://github.com/anomalyco/opencode/releases/tag/v1.1.43
packages/kilo-i18n.