
REODE vocabulary
- assess
- plan
- explore
- transform
- validate
- fix
- measure
- recipes
- docker isolation
- equivalence
- escalation
- checkpoint
- learnings
Assess: assess_node · assessment_report · frameworks_detected · SOCRATIC RISK ANALYSIS · clarity_score · BASELINE BUILD · baseline_build_success · detect_spring_features · SpringAssessment · memory_context · get_local_jdk_versionPlan: plan_node · migration_plan · incremental_recipe_chain · get_recipe_chain · project_constraints · llm_structural · get_migration_strategy · is_fw_to_boot_migration · hitl_level · memory_contextExplore: _explore_before_fix · AFFECTED FILES · read_file · @Data · pom.xml · classify_build_error · ErrorCategory · get_category_prompt_hint · _batch_errors · _detect_fix_patterns · CANNOT FIND SYMBOL · compute_error_signatureTransform: llm_structural · transform_node · rewrite-maven-plugin · _ensure_openrewrite_plugin · rewrite:run · java_openrewrite_run · recipes_applied · _BATCH_SIZE · source_path_backup · structural_changes · resume_from_batchValidate: BASELINE BUILD · validate_node · java_build · java_test · java_lint · build_error_output · test_error_output · test_pass_rate · _route_after_validate · build_verification_tasks · verify-compat-check · SubAgentManager · _BackpressureExecutor · docker_maven_command · max_iterationsFix: memory_context · _explore_before_fix · @Data · pom.xml · get_category_prompt_hint · _detect_fix_patterns · build_error_output · test_error_output · fix_node · _fix_deterministic_pass · _apply_deterministic_fixes · LOMBOK 1.18.34 · annotationProcessorPaths · _fix_architect_editor_pass · FixPlan · _execute_llm_fix · _BackpressureExecutor · fix_attempts · java-migration-diagnostic · _determine_escalation · _build_full_project_context · fix-iter-{iteration} · AUTO-LEARNINGSMeasure: baseline_build_success · recipes_applied · test_pass_rate · measure_node · MigrationScorecard · G1 BUILD SUCCESS · G2 TEST EQUIVALENCE · G3 COVERAGE PRESERVATION · G4 TEST INTEGRITY · G5 NO TEST EXCLUSION · _count_deleted_test_files · _count_surefire_excludes · automation_ratio · S/A/B/C GRADERecipes: detect_spring_features · incremental_recipe_chain · get_recipe_chain · rewrite-maven-plugin · java_openrewrite_run · UpgradeToJava17 · UpgradeToJava21 · JavaxMigrationToJakarta · UpgradeSpringBoot_3_2 · UpgradeSpringSecurity_6_2 · JUnit4to5Migration · rewrite-migrate-java · rewrite-spring · SPRING_RECIPE_CHAINS · java_openrewrite_listDocker Isolation: JDK_DOCKER_IMAGES · maven:3.9-eclipse-temurin-22 · needs_docker_build · docker_maven_command · get_local_jdk_version · is_docker_available · docker_build_mode · local_jdk_version · _maven_cache_dir · JDK MISMATCHEquivalence: source_path_backup · verify-compat-check · java_app_start · e2e_smoke_test · java_app_stop · run_jar_comparison · detect_jar_type · deploy_dual_stack · discover_endpoints · api_equivalence_rate · api_breaking_changes · teardown_dual_stackEscalation: _route_after_validate · fix_attempts · _determine_escalation · claude-opus-4-6 · _build_full_project_context · _is_stuck · CONVERGENCE · CIRCUIT BREAKER · recovery_attempted · max_iterations · budget_usd · _check_budget_gateCheckpoint: _BATCH_SIZE · PipelineCheckpoint · reode/checkpoint · fix-iter-{iteration} · resume_from_batch · _resume_skip_nodes · MigrationProgressTracker · migration_progress.json · _save_node_progress · --resumeLearnings: FixPlan · FixEventLog · FixEvent · fix_events.jsonl · query_by_signature · format_learnings · compute_error_signature · AUTO-LEARNINGS · LEARNINGS.md · _append_learning · AVOID THIS APPROACH
修正の根拠と受け入れ条件を分けた移行ループ
元のビルドの状態を記録してルールベースの変換を適用し、修正の前にソースとPOMの証拠を集めます。モデルが編集した後も、ビルド、テスト、テストの完全性を再び確認し、上限や停滞で終わった実行は成功と分けて報告します。
ルールベースの変換とモデルによる修正を組み合わせ、変更したコードをビルドとテストで確認します。業務プロジェクトです。
リポジトリでのREODE作業。pinxlabへの参加期間 March 16, 2026 to May 26, 2026
業務で使うCLIツールです。
ルール変換
元の状態をベースラインとして残し、ルール変換の後にビルドとテストで検証して、測定まで進みます。
ソース · POMデータ: ソース · POM原本の状態 · compile
原本の確認移行するJava/SpringのソースとPOMを受け取ります。顧客のコードと画面は表示しません。
原本の状態 · compile
原本の確認データ: 原本のcompileベースライン · 不明な値は未測定実行状態変換の前にランタイムを選んで原本をcompileするため、もともと壊れていたビルドはベースラインに残ります。ベースラインのテストとカバレッジの既定値は測定値ではありません。
原本の状態 · compile
原本の確認実行 · 判定: ルール変換計画 → ルールベースの変換変換実行グラフは、原本の確認 → 変換計画 → ルールベースの変換 → 検証と進みます。ルールで扱える変換を先に適用します。
計画 → ルールベースの変換
変換実行 · 判定: build · testbuild · test · 反復+1検証変換したコードをビルドとテストで検証し、反復回数を1つ増やします。結果は実行状態に戻ります。
build · test · 反復+1
検証データ: 結果 · 反復回数継続 · 測定 · 最大3回次の段階ビルドの成否、テスト通過率、反復回数で次の段階を決めます。
継続 · 測定 · 最大3回
次の段階実行 · 判定: 通過 · 上限 · 停滞ルールの比率 · テスト · カバレッジ測定ビルドとテストの両方が通ったとき、反復上限に達したとき、または停滞が検出されたとき(未実施なら一度復旧を試みた後)、実行は測定に進みます。測定に進むことは成功を意味しません。
ベースライン · 不明な値は未測定
実行状態データ: ベースラインとの比較ルールの比率 · テスト · カバレッジ測定測定は実行状態に保持されたベースラインを読み取ります。新たなベースライン実行ではありません。
5つの受け入れ条件
測定データ: 等級付けスコアカード · 等級ビルドの成功、テスト通過率100%、カバレッジの変化が−5以上(ベースラインが分かっている場合のみ)、削除されたテスト0件、surefireの除外0件。5つすべてを満たしたときだけ等級を付けます。
原因に基づく修正
修正の前に証拠を集め、決定論的な修正を先に行います。再ビルドが通ればモデルを飛ばし、通らなければ証拠と指示でモデルが修正し、結果を再び検証します。
build · test · 反復+1
検証データ: 結果 · 反復回数継続 · 測定 · 最大3回次の段階ビルドの成否、テスト通過率、反復回数で次の段階を決めます。
継続 · 測定 · 最大3回
次の段階実行 · 判定: 失敗 · 再試行原因の証拠 · ソース3件 · POM修正前の探索ビルドが失敗したかテスト通過率が100%未満で、反復上限(既定3回)に達していなければ、修正に進みます。
原因の証拠 · ソース3件 · POM
修正前の探索観測 · 報告: 修正前に保存修正前のチェックポイント復旧記録修正の前にチェックポイントを保存します。ベストエフォートのため、保存に失敗しても修正は止まらず、保存は成功の根拠にもなりません。
原因の証拠 · ソース3件 · POM
修正前の探索データ: 証拠 · エラーのグループ既知のパターンを修正決定論的な修正失敗したJavaファイル、最大3件のソースの冒頭部分、アノテーション、POMとannotation processorの設定、深さ2までのimportを集めます。範囲を限ったサンプルであり、コードベース全体の理解ではありません。
再ビルドの確認
決定論的な修正実行 · 判定: 通過 · LLMを省略build · test · 反復+1検証既知のパターン(例:Lombokの設定)の決定論的な修正で再ビルドが通れば、モデルは呼び出しません。それでも実行は検証に戻るため、これは最終的な受け入れではありません。
再ビルドの確認
決定論的な修正失敗 · 上限: 再ビルドの失敗証拠 · 指示で修正モデルによる修正再ビルドが失敗すると、集めた証拠と修正指示がモデルによる修正に渡されます。コードを読むと、一緒に渡されるエラー文は再ビルドの新しいエラーではなく最初のビルドのエラーなので、「残ったエラーだけが渡される」と読んではいけません。実行で再現した欠陥ではありません。
同じエラーの過去の修正
復旧記録データ: 過去の修正証拠 · 指示で修正モデルによる修正同じエラーシグネチャで記録された過去の修正を照会して添付します。モデルの学習ではなく、入力に加わる記録です。
証拠 · 指示で修正
モデルによる修正実行 · 判定: 再検証build · test · 反復+1検証モデルは構造化されたarchitect/editor経路で、その経路が使えないときや復旧中はtool-useプロンプトで修正し、ビルドとテストで再び検証します。モデルの編集は、それ自体では通過したビルドではありません。
通過と停滞の区別
等級には5つの条件すべてが必要です。テストの削除や除外、上限や停滞による終了は成功に数えません。
継続 · 測定 · 最大3回
次の段階実行 · 判定: 通過 · 上限 · 停滞ルールの比率 · テスト · カバレッジ測定ビルドとテストの両方が通ったとき、反復上限に達したとき、または停滞が検出されたとき(未実施なら一度復旧を試みた後)、実行は測定に進みます。測定に進むことは成功を意味しません。
ベースライン · 不明な値は未測定
実行状態データ: ベースラインとの比較ルールの比率 · テスト · カバレッジ測定測定は実行状態に保持されたベースラインを読み取ります。新たなベースライン実行ではありません。
5つの受け入れ条件
測定データ: 等級付けスコアカード · 等級ビルドの成功、テスト通過率100%、カバレッジの変化が−5以上(ベースラインが分かっている場合のみ)、削除されたテスト0件、surefireの除外0件。5つすべてを満たしたときだけ等級を付けます。
5つの受け入れ条件
測定失敗 · 上限: 削除 · 除外 · 失敗失敗 · 停滞の報告テストの削除やsurefireの除外で得た通過、ビルドやテストの失敗は失敗のままです。削除と除外の検査はGitやPOMを読めないと0件と数えるため、すべての違反を捕捉する証明ではありません。
継続 · 測定 · 最大3回
次の段階観測 · 報告: 上限 · 停滞による終了失敗 · 停滞の報告上限や停滞で終わった実行も測定は経ますが、成功としては報告しません。これは報告の区別であり、測定を飛ばす近道ではありません。
すべての接続を同じ太さで表示します。フローを選ぶと、その経路だけを番号付きで強調します。
- 実線 · 入力、結果、記録の流れる方向
- 破線 · 実行、判定、要求
- 長い点線 · 観測と報告、判定とは別
- 短い破線 · 失敗、停止、上限
- 太い黒線 · 選んだフロー。番号は順序
- ボックス · コードまたは状態の境界、見出しに名前
- 内側のチップ · その境界の構成要素
- 点線ボックス · その境界の外
- オレンジの枠 · モデルが判断する場所
- パイプラインの段階 · 修正
- 検証 · ルーティング · 受け入れ条件
- 状態 · 記録
- 修正前の探索
非公開の実装記録と開発記録から作図しました。名前は公開用の一般名で、コードパスや顧客情報は載せていません。
- 再ビルド失敗後の入力
- モデルによる修正は集めた証拠と修正指示を受け取りますが、一緒に渡されるエラー文は再ビルドの新しいエラーではなく、最初のビルドのエラーです。コードを読んで確認した点で、実行では再現しておらず、ソースも変更していません。
- 受け入れ条件の限界
- カバレッジのベースラインが不明な場合、その条件は飛ばします。surefireの検査は、ベースラインとの差分ではなく現在のPOMの除外を数えます。削除と除外の検査は、GitやPOMを読めないと0件と数えます。
- 事例と数値
- 約40件のsetterエラーをLombokとPOMの設定という1つの原因にたどったのは、当時記録された診断です。処理量、精度、最終的な納品の数値ではありません。