Repository navigation
fix: 素の Ubuntu 24.04 での初期設定で止まった箇所を直す - #521
Merged
Merged
Conversation
The 7-day release quarantine lets a security fix through per package with an absolute `exclude-newer-package` cutoff. That cutoff never expires by itself, so once the admitted release is older than the window the entry only freezes the package there and later Dependabot bumps become silent no-ops. That is what scripts/check_uv_exclude_newer.py exists to catch, and it now fails: emulator/pyproject.toml: `certifi` cutoff 2026-10-20 is 9 days old emulator/pyproject.toml: `mlflow` cutoff 2026-10-21 is 8 days old ... mlflow-skinny, mlflow-tracing, and telemetry/examples `certifi` certifi 2026.10.19 (the eMudhra CA removal) and mlflow / mlflow-skinny / mlflow-tracing 3.17.2 (GHSA-wqmh-qccw-pqwf) were admitted on 2026-10-26 with a comment saying to remove them on or after 2026-10-28. Dropping them leaves the repo-authoritative `exclude-newer = "7 days"` span in charge, which now admits those releases on its own. `uv lock` in both projects removes only the lock's `[options.exclude-newer-package]` metadata: no resolved version changes (the diff is 7 deletions, 0 version lines). The `ruff = false, ty = false` entries stay; those are a different mechanism (skip the span so an exact pin can move without waiting out the window). (cherry picked from commit 973f7d4)
step_prek_shim searched installs/prek/latest, which mise creates as a symlink to the version directory. find does not follow a symlinked start point, so it found nothing, command -v prek was empty before mise activate, and every fresh box skipped the ~/.local/bin/prek shim that git hooks fall back to. A trailing slash makes find descend into it; the shim still names latest/ so a prek upgrade carries it along. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0147hurtFmppBfdZ3M8n8e4V
just restore-skills-lock exited 1 on a fresh box: the skills CLI cloned both sources and found no skill by these names at HEAD. - gemini-interactions-api (google-gemini/gemini-skills): the repo now ships gemini-api-dev, gemini-live-api-dev and gemini-omni-flash-api. - resolving-merge-conflicts (mattpocock/skills): not among its 38 skills. Both stay declared nowhere else (no skillOverrides entry), so the declaration shrinks from 153 to 151 records. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0147hurtFmppBfdZ3M8n8e4V
`uv tool install pyright` (the PyPI wrapper) puts pyright and pyright-langserver links in ~/.local/bin. detect reported those links, and prune skipped them as "removed with its uv tool", but pyright was not one of the uv tools prune removes, so nothing removed it and doctor warned python-retired on every run. Add it to RETIRED_UV_TOOLS. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0147hurtFmppBfdZ3M8n8e4V
just doctor warned twice after mise installed rtk 1.1.0: - rtk-pi-extension: config/pi/extensions/rtk.ts was vendored from 1.0.1. Re-vendored with just rtk-pi-refresh; the upstream body is unchanged, only the version in the header moves. - rtk-guard: 1.1.0 adds `ng`, which the command guard had not classified. `rtk ng` runs the Angular CLI (a fixed tool, like `rtk next` and `rtk tsc`), not operands the agent supplies, so it joins RTK_FILTER_SUBCOMMANDS. The guard never reads that set; doctor does. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0147hurtFmppBfdZ3M8n8e4V
Two serve() tests bind real sockets on 127.0.0.1 and ::1, because
serve() refuses to run on one address family alone. In a container with
IPv6 disabled (AF_INET6 is "Address family not supported") they fail
with "could not bind on any address out of [('::1', 0, 0, 0)]", which
made test-unit, and so just ci, red on such a host. Skip them there: the
code is untested on that host, not broken. Every other serve() test
replaces start_server and still runs.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0147hurtFmppBfdZ3M8n8e4V
hironow
marked this pull request as ready for review
October 30, 2026 11:01
The a2a-inspector image builds upstream source with this repo's Dockerfile, which expects backend/, frontend/, pyproject.toml and uv.lock, and it cloned upstream main. Upstream rewrote the inspector in Go on main (a2aproject/a2a-inspector#221, 2026-10-27), so every COPY now fails with "/src/repo/backend: not found". test-emulators has been red on main since 556eedb (2026-10-28) for this reason. Default A2A_INSPECTOR_REF to 8aa0646, the commit just before the rewrite and what CI last built green. `git clone --branch` takes no commit SHA, so the source stage now does init + `fetch --depth 1` + checkout FETCH_HEAD, which still accepts a branch or tag as an override. Moving to the Go inspector is a separate decision. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0147hurtFmppBfdZ3M8n8e4V
Owner
Author
|
Generated by Claude Code |
Under mise, `corepack` on PATH is a shim for the node the deployed ~/.config/mise/config.toml asks for (`node = "lts"`). Node moved its LTS line to 26, so a rerun with INSTALL_SKIP_ADD_UPDATE=1 (no `mise install`) resolves to node 26.13.0, which is not installed, and the shim exits 1. install.sh runs under `set -e`, so step_corepack stopped the installer before the dotfiles were deployed. The dev container's "Install: rerun update path" test fails this way: the image pins node 24.22.1, which matched `lts` only while LTS was 24. Make the step best-effort with a WARN that names the fix, like step_sheldon. Whether the image should move to node 26 is a separate decision. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0147hurtFmppBfdZ3M8n8e4V
Owner
Author
|
Generated by Claude Code |
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.
概要
素の Ubuntu 24.04 コンテナ(root、mise なし)で
install.sh相当の手順、just harden-env、just sync-agents、just restore-skills-lock、just doctor、just ciを順に実行し、止まった箇所や警告が残った箇所を直した。CI で見つかった、main でも落ちる 2 件もあわせて直した。commit は関心ごとに分けてある。fix(install)prekstep_prek_shimが~/.local/bin/prekを作れていなかった。mise はinstalls/prek/latestを symlink で作り、findは起点の symlink を辿らないので、何も見つからず毎回 skip していた。起点に末尾スラッシュを付けた。shim はlatest/経由のパスを指したままなので、prek を上げても追従するfix(install)corepackINSTALL_SKIP_ADD_UPDATE=1で install.sh を再実行すると、node = "lts"に当たる node が入っておらずcorepack enableが失敗する。set -eなので installer 全体が止まっていた(dev container のInstall: rerun update pathもこれで落ちた)。step_sheldonと同じく、WARN を出して続けるようにしたfix(skills)just restore-skills-lockが exit 1 になっていた。gemini-interactions-api(google-gemini/gemini-skills)とresolving-merge-conflicts(mattpocock/skills)が上流の HEAD に無い(skills CLI が clone した一覧で確認)。宣言から外した(153 → 151 件)fix(doctor)uv tool install pyrightで入った pyright をjust prune-retired-python-toolsが消せず、doctor がpython-retiredを出し続けていた。RETIRED_UV_TOOLSに pyright を足したchore(rtk)just rtk-pi-refreshでrtk.tsを再 vendor した(本体は同じで、見出しの版だけ変わる)。新しいサブコマンドng(Angular CLI を実行する。nextやtscと同じ種類)をRTK_FILTER_SUBCOMMANDSに分類したtest(ollama)::1に bind できず、実際に bind するserve()のテスト 2 件が落ちてjust ciが赤になっていた。::1に bind できない機体ではこの 2 件だけを skip する。ほかのserve()テストはstart_serverを差し替えているので、そのまま動くfix(emulator)mainを Go に書き直した(a2aproject/a2a-inspector#221)ため、Python/TypeScript 構成を前提にした Dockerfile が作れない。既定の取得先を、書き直しの直前の commit8aa0646に固定した。commit SHA を渡せるよう、取得をinit+fetchに変えたchore(deps)(cherry-pick)exclude-newer-packageがjust lint(check-uv-exclude-newer)を落とし、commit hook を通せなかったため。main の test-just もこれで落ちていた検証
tests/unit/test_install_prek_shim.py、tests/unit/test_install_corepack_step.py、emulator/tests/test_a2a_inspector_build.pyに追加した 2 件、test_retired_python_tools.pyとtest_ai_tools_check.pyに追加した 1 件ずつ)just ci:forbidden-tokens 以外はすべて通過した(unit は 1915 passed / 103 skipped)。just emu-lintも通過した~/.local/bin/prekが作られた。retired_python_tools.sh detectの結果は空になった。doctor のrtk-guardとrtk-pi-extensionは OK になった。skills-placeで missing が 0 になった。a2a-inspector の取得は、固定した SHA でもmainでもgit fetch --depth 1で取れることを確かめた(image の build は CI で確認する)未確認のこと
$DOTFILES_FORBIDDEN_TOKENS)が無い。そのため commit はforbidden-tokens-stagedとforbidden-tokens-commit-msgの 2 つの hook だけを SKIP して作った(operator の承認済み)。lint とテストの hook は通しているjust test-installを回していない。 コンテナで Docker daemon に届かないため。CI が回すのはjust testまで直していないこと
config/mise/image-tools.tomlの24.22.1)と、host のnode = "lts"(今は 26 系)がずれている。image を 26 系に上げるかどうか@ollama/pi-web-search用の Ollama 公式インストーラーが、zstdが無いため失敗した(just deployは WARN を出して続行する)。素の WSL Ubuntu でも同じことが起きうるUV_NATIVE_TLSの非推奨警告は、コンテナが設定する環境変数から出ている。docker、brew、jev-key、ca-* の WARN は、このクラウドコンテナの性質によるもの🤖 Generated with Claude Code
https://claude.ai/code/session_0147hurtFmppBfdZ3M8n8e4V