Skip to content

HYP-197: legacy defk handlers を defhandler へ移行#419

Draft
proboscis wants to merge 3 commits into
mainfrom
reactor/doeff-impl-pr-human-review-hyp-197
Draft

HYP-197: legacy defk handlers を defhandler へ移行#419
proboscis wants to merge 3 commits into
mainfrom
reactor/doeff-impl-pr-human-review-hyp-197

Conversation

@proboscis
Copy link
Copy Markdown
Owner

PR説明図

概要

HYP-197 は、production Hy source に残っていた旧 defk [effect k] handler 署名を defhandler に移行する変更です。doeff-hy の macro guard が拒否する旧署名を package 側から取り除き、import と pytest collection が止まらない状態にします。

変更内容

  • doeff-docker の Dockerfile / Docker build / image push handler を defhandler 節へ移行しました。
  • doeff-ml-nexus の file / docker / rsync / resolve handler を defhandler 節へ移行しました。
  • Dockerfile 生成 Program で、現在の defk macro 要件に合わせて :pre / :post 契約を追加しました。
  • production packages/**/src/**/*.hy に旧 defk handler-like 署名が戻った場合に検出する architecture test と Semgrep ルールを追加しました。
  • PR 説明図を imagegen で生成し、Hypha/Evidence/HYP-197/pr-explanation.png に保存しました。

レビュアーが見るべきこと

  • 未対応 effect の扱いが手書き Pass effect k ではなく、defhandler の既定転送に移っていること。
  • Dockerfile instruction handler の Tell、各実行 handler の Ask / slog 連携が維持されていること。
  • packages/doeff-ml-nexus/src/doeff_ml_nexus/docker.hy の契約追加が Dockerfile 生成の既存挙動を変えていないこと。

確認したこと

  • uv run --package doeff-ml-nexus pytest packages/doeff-ml-nexus/tests/test_docker.py -q -> 4 passed
  • uv run --package doeff-ml-nexus pytest packages/doeff-ml-nexus/tests/test_serializer.py packages/doeff-ml-nexus/tests/test_uv_deps.py -q -> 12 passed
  • uv run --package doeff-ml-nexus pytest packages/doeff-ml-nexus/tests -q -> 27 passed
  • uv run pytest tests/architecture/test_no_legacy_defk_handler_signatures.py -q -> 1 passed
  • uv run --package doeff-ml-nexus pytest packages/doeff-ml-nexus/tests/test_handler_imports.py -q -> 6 passed
  • uv run semgrep --config .semgrep.yaml packages/doeff-docker/src/doeff_docker/handlers/dockerfile.hy packages/doeff-docker/src/doeff_docker/handlers/docker.hy packages/doeff-ml-nexus/src/doeff_ml_nexus/handlers -> 0 findings
  • git diff --check origin/main...HEAD -> 通過

補足

UI や表示文言の変更ではないため、UI 証跡確認は不要です。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant