PROJECT IMPROVEMENTS · 2026.10.28

将来の手間を減らす、
今回の改善と次の一手。

アクセスできる9リポジトリと既存プロジェクトを点検。失われる履歴、意図しない更新、秘密値のログ出力を優先し、再現できる修正と検証証拠を残しました。

基準日 2026-10-28 JST · ローカル作業の記録 · 最終生成 2026-10-28 16:16 JST

今回の到達点

重要性・効果・実現性を評価し、隔離環境で実装・検証。独立レビュー後は追加承認に基づき、既存の稼働版・privateリポジトリへの反映と確認まで進めています。

9リポジトリを点検ローカル配置も別途棚卸し
23改善を実装・検証8 repo・初期7件+第2巡3件+第3巡10件+追加3件
3次回に使える試作配置棚卸し / DB診断 / 成果物照合
8 / 8反映先で確認済み稼働版・Git・復旧状態を区別
継続用チェックポイント

今回の反映と検証を保存した時点のレポートです。利用枠の更新を観測したため、この後の継続範囲を確認中です。全体目標の完了とは扱いません。

反映状況: 次の表に成功・準備中・復旧済みを表示します。古い隔離検証時点の記録より、最新の配備結果を優先します。

次の価値: 編集・再読込で未保存内容を失う経路、履歴の欠落、保存結果不明時の画像削除を修正しました。最新の3件は添付・図面画像の保全と、連続CSV/backup出力の上書き防止です。次は未参照画像の読取照合や、PC原本の同サイズ改変検出を検討できます。

改善数は動作・検証の独立した目的で集計しています。回帰テストやテスト絞込み機能を同じ修正と二重に数えていません。DB診断と棚卸しツールの拡張は3試作の内数とし、リポジトリの改善件数と二重に数えていません。全コードを網羅したセキュリティ監査ではありません。

反映先ごとの最新状態

テストと独立レビューを通した通常修正は、追加承認に基づいて既存手順で反映しています。Git更新、稼働版の置換、health確認を別々に記録し、失敗時の復旧も残します。表は確認済みの最新配備を示し、その後の追加修正は下の状態欄と成果カードで区別します。

対象現在の状態確認した内容・記録
illuminance-editorprivate master・配布HTMLへ反映済み

published_to_existing_private_master_standalone_html_updated

  • 既存private repoの配布HTMLを更新。データ入りHTMLは不変。CI定義反映・Actions未実行。
  • 利用者が保存したHTMLや、所在不明のローカル配布コピーは置換していない。
  • Git同期記録: refs/heads/master

23b493c74f6e2aeac14d72055bcac69f9993178e

tool-nfc-manager親PC配布物・Git更新済み / APIは継続稼働

desktop_distribution_updated_api_unchanged_git_synced

  • 今回の連続CSV/backup保護は親PC Desktop配布EXE/PDBの3ファイルを更新し、stage hash一致を確認。次回通常起動から有効。GUI起動・実DB操作は未実施。
  • API PID/開始時刻/EXE/Core hash・health・タスク状態を維持。APIの停止や再配布は行っていない。
  • 途中の一時停止と復旧を経て修正版へ切替済み。経緯は下の障害記録を参照。
  • 2026-10-28 13:53 JSTの最終再確認でも、loopback/LAN health・単一API・listener一致・タスク有効を維持。
  • Git同期記録: 既存private originのSHA一致を確認

9572758d503f9007a5a55e6e9416004cd159a1da

office-server-monitor稼働版へ反映・確認済み

installed_and_verified_git_synced

  • 設定と起動登録を維持。監視対象サービスのlistener変更なし。
  • 更新のため停止したのはdashboardのみ。
  • 監視中断の上限記録: 12.6秒。
  • 更新後の画面テキストでサービス3件正常・NAS正常を確認。通知領域へ戻し継続動作を確認。
  • Git同期記録: 既存private originのSHA一致を確認

83a2001d13b6ec7d6e5460bf8b9f411fdd7eb7a6

park-repair稼働版へ反映・確認済み

deployed_and_verified_git_synced

  • 通常添付と図面画像の不確定commit保護を1回のLAN releaseへ統合。未確定画像は保持し、自動削除しない。
  • 統合37件・原本8件・型検査成功、全tree一致。保守開始からhealth確認までの上限16.8秒。
  • 稼働版health・認証境界・原本サービス・frontendハッシュを検証。
  • bridge/tunnelを維持、DB migration・実データ登録なし。
  • Git同期記録: 既存private originのSHA一致を確認

4ecb3d7f9593ede50b827a735f51596697dffa0e

park-equipment-3dソース・Gitへ反映済み

applied_committed_pushed

  • 診断ラッパーのソース変更。生成済み3D資産とBlender本体の描画は変更・実行していない。
  • Git同期記録: 既存private originのSHA一致を確認

84c3ef3ba718d5cad125c8fd21bac01422238b87

construction-method-statement稼働版へ反映・確認済み

deployed_and_verified

  • 既存main push→Actions経由でWorker反映。Node22/npm ciで96件成功、適用するmigrationなし。
  • 匿名GETは画面/APIにAccess302、MCP401、discovery200。実案件の編集や認証設定変更なし。
  • Git同期記録: 既存private originのSHA一致を確認

a1c194e0f59686bd24d6f5c4c9d8124b95dd3ed0

zumen-rebuildprivate master・配布元ソースへ反映済み

published_to_existing_private_master_source_distribution_updated

  • 合成図面とQt offscreen操作で検証。実CAD/実スキャンOCRは未再実行。
  • 独立レビューの未解決指摘: 0件。利用端末への適用は個別の配布記録で確認。
  • 読込失敗時の図面保持も追加し、全109成功・2skip、独立17ケース。配布元Git更新済み、未知の利用PCは未更新。
  • Git同期記録: pushed_and_verified

6b2b4c8e7fc6b7aa64d336782eb71945700635a5

repair-order-manager稼働版へ反映・確認済み

deployed_and_verified_git_synced

  • 履歴索引化の5回帰を含む全72件・型検査・build・dry-run成功。SQL/schema/API形式は不変。
  • 合成ケースの参照回数低減を確認。実運用の応答時間短縮率は測定していない。
  • 既存Worker/bindingを保持して反映。静的asset一致と未認証API401、既存private Git同期を確認。
  • 再読込と対象不在の2修正を1回のreleaseで反映。原本72 unit/Worker+24 browser、最終review tree一致。
  • その後はテストだけをGit de0c32a1964eへ更新。原本unit23+browser24成功、Worker再配信なし。
  • Git同期記録: 既存private originのSHA一致を確認

8f932c070220c322cfdd2c6222c71f8547eef6d0

NFC配備中の一時停止と復旧

工具APIの配備途中に一時的な利用停止が発生。正確な利用停止時間は計測していない。最終19.7秒は最終配備手順全体の時間で、総停止時間ではない。

現在は修正版が正常稼働し、元DBのquick_check、LAN/loopback health、配布物ハッシュ、タスク復帰を確認済みです。DBの復元・移行、業務行の外部送信は行っていません。

発生順・復旧方法・残る改善
  • 初回は既存watchdogの2秒待受確認が失敗し、旧配布物へ切り戻し。旧APIのhealthを確認。
  • 再有効化したタスクと再起動の競合による重複APIがbind失敗。Windowsエラー報告のプロセスが共有メモリを保持。
  • 2回目はbackupと旧API起動がSQLite I/Oエラー。自動再試行を停止しDB/WAL/SHMをローカル保全。
  • 元DBの詳細エラーはSQLITE_IOERR_TRUNCATE。保全DB+WALの別コピーはquick_check正常。
  • 今回起動したAPIに親PIDと引数が一致するWerFaultだけを終了。元DBもquick_check正常となり、既存タスクで旧APIのhealth復旧。
  • 最終は整合オンラインbackupを先に取得し、タスクを無効のまま単一起動とhealth成功を待ってから再有効化。修正版への切替とLAN/loopback health・全配布hash一致成功。
  • 元mainとGitHub private mainを417f57fへ同期しremote HEAD一致を確認。

恒久対策NFC-WATCHDOG-1はその後に実装・19テスト・独立レビューを通し、APIを再起動せず既存運用へ反映済みです。

追加3修正の現在地
  • 添付保存のDB応答喪失で登録済み画像を削除しない:稼働版へ反映・確認済み
  • 図面画像の保存・復元結果が不明な間は画像と処理所有権を保持:稼働版へ反映・確認済み
  • 連続CSV・バックアップ出力で既存ファイルを上書きしない:親PC配布物・Git更新済み / APIは継続稼働

既に配備済みの同じリポジトリがあっても、今回の追加修正が配備済みとは扱いません。各修正固有のdeployment記録を確認します。

承認済みの範囲: 通常のバグ修正・品質改善・機能追加は、テストと独立レビューで問題がなければ既存デプロイ手順で本番反映まで進めます。

事前承認を残す範囲: 不可逆なデータ変更、重要な仕様変更、追加費用が発生する操作。

実装した改善

反映確認済み 23件 / 実装・検証済みで最終確認待ち 0件。

カードを開くと不具合の根拠、反映状態、差分と検証ログを確認できます。検索とフィルターは、下の改善候補にも適用されます。

01 · tool-nfc-manager · 第1巡親PC配布物・Git更新済み / APIは継続稼働

履歴CSVの1万件打切りを解消

履歴の古い行を含めてCSVへ出力し、同時刻の行順も安定させる。

原本review branch反映後も5回帰+既存Smoke成功、6プロジェクトbuildは警告0・エラー0。

重要性 4 / 効果 5 / 実現性 5 各5点
根拠・反映状態・成果物

10,005件のfixtureが修正前10,000件、修正後10,005件。日時・ID昇順とUI既定300件も検証。

反映対象commit: 9572758d503f9007a5a55e6e9416004cd159a1da

02 · tool-nfc-manager · 第1巡親PC配布物・Git更新済み / APIは継続稼働

返却済み貸出への延長と誤った監査履歴を拒否

返却済み・存在しない貸出の延長を拒否し、誤った延長履歴を作らない。

原本review branch反映後も5回帰+既存Smoke成功、6プロジェクトbuildは警告0・エラー0。

重要性 4 / 効果 4 / 実現性 5 各5点
根拠・反映状態・成果物

修正前は返却済み貸出に延長履歴を追加、存在しない貸出はSQLite外部キー例外。修正後は更新0行を業務エラーにし、履歴追加前に中断。

反映対象commit: 9572758d503f9007a5a55e6e9416004cd159a1da

03 · tool-nfc-manager · 第2巡親PC配布物・Git更新済み / APIは継続稼働

バックアップの復元と元DBからの独立性を自動検証

一部返却時点のバックアップを別DBとして開き社員/工具/貸出/履歴一致、integrity_check・foreign_key_check、元DB延長・全返却後もバックアップ不変を確認。

別DBの社員・工具・貸出・履歴を照合し、integrity_check / foreign_key_check成功。元DBの更新後もバックアップ不変を確認。

重要性 5 / 効果 5 / 実現性 5 各5点
根拠・反映状態・成果物

一部返却時点のバックアップを別DBとして開き社員/工具/貸出/履歴一致、integrity_check・foreign_key_check、元DB延長・全返却後もバックアップ不変を確認。

反映対象commit: 9572758d503f9007a5a55e6e9416004cd159a1da

04 · office-server-monitor · 第1巡稼働版へ反映・確認済み

引用符付き認証情報のログ伏字漏れを修正

引用符や空白を含む秘密値をログへ残さない。

追加回帰2件は修正前に失敗。修正後は通常Windowsで全21件成功、原本review branch反映後も21件成功。

重要性 5 / 効果 5 / 実現性 5 各5点
根拠・反映状態・成果物

password="alpha bravo charlie" の後半が修正前はログに残る。二重/一重引用符、JSONエスケープ、途中切断、実ファイルへの出力を回帰テストで確認。

反映対象commit: 83a2001d13b6ec7d6e5460bf8b9f411fdd7eb7a6

05 · office-server-monitor · 第1巡稼働版へ反映・確認済み

削除済みサービスへの操作を拒否

設定から削除されたサービスの古い操作要求を拒否する。

追加回帰2件は修正前に失敗。修正後は通常Windowsで全21件成功、原本review branch反映後も21件成功。

重要性 4 / 効果 4 / 実現性 5 各5点
根拠・反映状態・成果物

設定から削除後も内部辞書に残りstop要求が受理される問題を再現。辞書から除去し、待機していた操作も再確認して拒否。

反映対象commit: 83a2001d13b6ec7d6e5460bf8b9f411fdd7eb7a6

06 · illuminance-editor · 第1巡private master・配布HTMLへ反映済み

暗黙の最終距離アンカーを検証

保存されていない終点に全長を使うケースをvalidateAnchorsで検査し、プロジェクト切替前に拒否。明示終点・単独測点・非anchorモードは従来どおり。

43件中39成功・4skip → 45成功・0失敗・0skip。通常NodeテストとHTML build成功。UIは未検証。

重要性 4 / 効果 4 / 実現性 5 各5点
根拠・反映状態・成果物

全長10 m、途中測点の距離20 m、明示終点なしの保存JSONをvalidateが受理し、描画時の距離生成だけが例外になっていた。openProjectでは検証後にstateを切り替えるため、不正プロジェクトが状態に入ってから失敗する。

反映対象commit: 23b493c74f6e2aeac14d72055bcac69f9993178e

07 · illuminance-editor · 第1巡private master・配布HTMLへ反映済み

同梱測定CSV4件のテストを常時実行

デフォルトはrepo内samplesを使用。ILLUM_SAMPLE_ROOTは元ダウンロード階層を検証する明示overrideとして維持。欠落ファイルは失敗として検知。

43件中39成功・4skip → 45成功・0失敗・0skip。通常NodeテストとHTML build成功。UIは未検証。

重要性 3 / 効果 4 / 実現性 5 各5点
根拠・反映状態・成果物

samplesに4ファイルがあるのに、テストが別PCの絶対パスを参照し、ファイルが見つからない場合はすべてSKIPしていた。

反映対象commit: 23b493c74f6e2aeac14d72055bcac69f9993178e

08 · park-repair · 第1巡稼働版へ反映・確認済み

削除済み工事への原本アップロードを保存前に拒否

読み込んだ工事に deletedAt がある場合は保存ヘルパー呼出し前に HTTP 409。復元済み工事は引き続き登録可能。

関連7テスト成功、Worker TypeScript型検査成功。削除済みを拒否し、復元済み工事の登録は維持。

重要性 4 / 効果 4 / 実現性 5 各5点
根拠・反映状態・成果物

削除前に開いた画面から送られた写真原本が保存サービスに転送される。後の写真レコード登録は削除済み工事として拒否され、原本だけが残る可能性。

反映対象commit: 4ecb3d7f9593ede50b827a735f51596697dffa0e

09 · illuminance-editor · 第2巡private master・配布HTMLへ反映済み

PR・手動実行用の最小CIを追加

既存の単体テストとbuildを自動検証する入口を用意。読取権限、資格情報保存なし、公式ActionはSHA固定。

完全upstreamで45テストとbuild成功。CI定義はprivate masterへ反映済み。pushでは起動せず、Actions実行履歴0件を確認。

重要性 4 / 効果 4 / 実現性 5 各5点
根拠・反映状態・成果物

単体テストとbuildはあるがGitHub workflowがなく、同梱CSV4件が別PCのパス依存でskipされる状態も自動検知できなかった。

反映対象commit: 23b493c74f6e2aeac14d72055bcac69f9993178e

10 · park-equipment-3d · 第2巡ソース・Gitへ反映済み

3D生成失敗時の元例外と診断を保持

元のtracebackを先にASCII安全な形で表示し、tmpを作成してUTF-8診断を保存。診断保存自体がOSErrorでもそれを補助表示し、元の例外オブジェクトを再送出する。

修正前4件中3エラー → Python 3.13 / Blender同梱Python 3.5.3で各4件成功。Blender本体の描画は未実行。

重要性 3 / 効果 3 / 実現性 5 各5点
根拠・反映状態・成果物

tmp不在、tmpが通常ファイル、ログ書込不可の場合、診断保存の二次例外が生成処理の元例外を隠し、コンソール診断も出力されない。

反映対象commit: 84c3ef3ba718d5cad125c8fd21bac01422238b87

11 · tool-nfc-manager · 第3巡親PC配布物・Git更新済み / APIは継続稼働

起動監視の二重起動と早すぎる失敗判定を防止

起動中のAPIを重ねず、実行ファイル・PID・開始時刻・healthが一致するまで期限付きで待つ。

Windows PowerShell 5.1で19件成功、独立レビュー承認。原本反映後も19件成功。APIを再起動せずPIDとhealth不変、タスクの元状態復帰を確認。

重要性 5 / 効果 5 / 実現性 4 各5点
根拠・反映状態・成果物

起動が2秒を超えると失敗と誤判定し、手動実行と予定タスクの競合で重複APIを起動できる。listener所有者やhealthを見ず、別アプリのポート占有も成功扱い。

反映対象commit: 9572758d503f9007a5a55e6e9416004cd159a1da

12 · park-repair · 第3巡稼働版へ反映・確認済み

中断した図面生成ジョブから完成画像を復元

失敗・stale・期限切れのジョブは元IDを保持して完成画像を復元する。実行中の生成や復元中に再起動された生成は409で中断。公開tokenを使ってジョブ・資産・画像索引の変更を同一DB transaction内で限定する。

合成D1/R2の関連22件とWorker型検査成功。競合時409・未公開画像のみ補償削除を確認し、既存LANへ反映後health・認証境界も確認。

重要性 4 / 効果 4 / 実現性 4 各5点
根拠・反映状態・成果物

同じ図面・版・入力hash・描画版・用途の生成ジョブがあると、failed/stale/期限切れpending/uploadingでも kept:true を返していた。完成画像を復元せず成功扱いになり、画像が欠けたまま残る。

反映対象commit: 4ecb3d7f9593ede50b827a735f51596697dffa0e

13 · construction-method-statement · 第3巡稼働版へ反映・確認済み

遅い案件読込から新しい選択・編集・保存を保護

古い成功・失敗応答を無効化し、起動時の復元も現在の案件を置き換えない。

独立レビューで追加2競合も再現・修正。案件読込32件、全96件成功。既存ActionsのNode22/npm ciでも96件成功、本番Workerへ反映し認証境界を確認。

重要性 5 / 効果 5 / 実現性 4 各5点
根拠・反映状態・成果物

遅い案件読み込み・起動時復元が、後で選んだ案件や読み込み中の編集・保存を上書きする。失効した要求のエラーが新案件にも表示される。

反映対象commit: a1c194e0f59686bd24d6f5c4c9d8124b95dd3ed0

14 · zumen-rebuild · 第3巡private master・配布元ソースへ反映済み

属性欄で変更した項目だけを反映

選択の読込中を除いて編集欄を追跡。触った項目だけを1回のUndo単位で反映し、混在項目を表示。数値欄の未確定入力と、表示値を明示入力して揃える操作にも対応。

報告時点: 98成功・2skip。既存の実資料2件が配布されていないため。新規38ケースは全件実行。 独立レビュー・配布状態は最新記録を参照。

重要性 5 / 効果 5 / 実現性 5 各5点
根拠・反映状態・成果物

複数選択の位置だけを変更しても先頭要素の線幅や文字属性を全選択へ再適用し、未編集座標・円弧値も表示桁数へ丸めていた。

反映対象commit: 6b2b4c8e7fc6b7aa64d336782eb71945700635a5

15 · zumen-rebuild · 第3巡private master・配布元ソースへ反映済み

読取完了後も新しい編集を保護

図面世代番号を単調増加させ、開始時と異なる場合は結果を適用しない。処理IDとQObject送信元も照合し、古い成功/失敗/進捗/中止/終了を無視。GUIスレッドのqueued slotで処理し、終了通知を消費するまで再起動・入力切替を抑止。中止済フラグ、読取設定変更、ダイアログ/メニュー内の未確定操作も保護する。

報告時点: 98成功・2skip。既存の実資料2件が配布されていないため。新規38ケースは全件実行。 独立レビュー・配布状態は最新記録を参照。

重要性 5 / 効果 5 / 実現性 4 各5点
根拠・反映状態・成果物

読取開始後に編集・Undo・図面切替があっても、非同期の完了通知が図面とUndo履歴を無条件に置き換えていた。終了通知前の再起動も可能だった。

反映対象commit: 6b2b4c8e7fc6b7aa64d336782eb71945700635a5

16 · repair-order-manager · 第3巡稼働版へ反映・確認済み

受注一覧とごみ箱の履歴照合を一回の索引作成へ変更

履歴を対象ID別のMapへ一度だけまとめ、各案件は自分の履歴だけを読む。既存SQL、履歴順、版上限、個別取得、連携状態、API形式は維持。

新規5回帰、unit21件+worker51件=72件成功。合成80案件/800履歴の参照は64000→1600。実運用の速度改善率ではない。型検査・build・配布asset10件の一致・dry-run成功。

重要性 4 / 効果 4 / 実現性 5 各5点
根拠・反映状態・成果物

案件N件ごとに履歴E件の全件走査を繰り返していた。データ蓄積時のCPU作業がN×Eへ増える。

反映対象commit: 8f932c070220c322cfdd2c6222c71f8547eef6d0

17 · zumen-rebuild · 第3巡private master・配布元ソースへ反映済み

保存ファイルを開けない場合も編集中の図面を保持

設定・描画・注記・報告のすべてが成功するまで現在の図面とUndoを保持し、失敗時は未確定入力や表示位置も復元する。

新規11ケース、全109成功・2skip。独立17ケースとレビュー承認、private masterの配布元ソースへ反映・SHA一致を確認。保存形式は維持。

重要性 5 / 効果 5 / 実現性 4 各5点
根拠・反映状態・成果物

set_projectがsettings・scene・notes・reportの成功前に内部projectを置換し、Undoも早く消していた。不正settingsではcanvasとmodelが別図面になり、描画失敗や後段の表示失敗でも元図面が壊れた。

反映対象commit: 6b2b4c8e7fc6b7aa64d336782eb71945700635a5

18 · repair-order-manager · 第3巡稼働版へ反映・確認済み

再読込中の入力消失と工程編集の競合を防ぐ

一覧/工程の再読込中は入力を保護し、成功時だけ最新工程を採用。失敗時の入力保持と401の再認証を維持する。

原本72 unit/Worker+24 browser成功、独立レビュー最終tree一致。2修正を1releaseで反映、HTML/JSのHTTP byte一致・API401とprivate Git同期を確認。

重要性 5 / 効果 5 / 実現性 4 各5点
根拠・反映状態・成果物

refreshOrders は busy だけを設定して入力を無効化せず、遅い一覧応答後のrenderで待機中入力が失われ得た。 / reloadInlineProgress はbusy未設定で待機中の保存・閉じる・重複再読込を許し、401時に再認証導線も出なかった。 / 詳細フォームの最新読込でもdraftFlowだけ古いまま残り、次の保存に旧工程を含め得た。

反映対象commit: 8f932c070220c322cfdd2c6222c71f8547eef6d0

19 · repair-order-manager · 第3巡稼働版へ反映・確認済み

消えた編集対象が空の新規受付へ変わる誤登録経路を防ぐ

消えた編集対象を空の新規受付へ変えず、理由を示して一覧へ戻す。誤った新規登録を防ぐ。

原本72 unit/Worker+24 browser成功、独立レビュー最終tree一致。2修正を1releaseで反映、HTML/JSのHTTP byte一致・API401とprivate Git同期を確認。

重要性 5 / 効果 5 / 実現性 4 各5点
根拠・反映状態・成果物

詳細保存の409後に再読込し対象が一覧から消えていると、URLは元案件のまま自動採番の新規受付へ変化する。

反映対象commit: 8f932c070220c322cfdd2c6222c71f8547eef6d0

20 · repair-order-manager · 第3巡テスト原本・private Gitへ反映済み

ブラウザ起動失敗時にテスト用HTTPサーバーを閉じる

ブラウザー起動やcloseの失敗時にもテスト用HTTP serverを閉じ、失敗したテストが自然に終了する。

修正前は2子プロセスがtimeout、修正後は自然に非zero終了。原本unit23・browser24成功、独立レビュー承認。テストだけの変更をprivate Gitへ同期、Worker再配信なし。

重要性 3 / 効果 4 / 実現性 5 各5点
根拠・反映状態・成果物

Edge未導入や起動拒否でchromium.launchが失敗するとfinallyに入らず、HTTPサーバーが残ってNodeが終了しなかった。

Git commit: de0c32a1964ee978d91a79ebeff31ae1b09b0806

21 · park-repair · 第4巡稼働版へ反映・確認済み

添付保存のDB応答喪失で登録済み画像を削除しない

DB応答が不明なときは添付画像を削除せず、後から登録が完了しても参照切れにしない。元の保存エラーを保持する。

新5回帰+既存proxy3件成功。独立Miniflare SQLite/R2の8ケースも成功。遅延commit、別object保全、通常保存を確認。

重要性 4 / 効果 4 / 実現性 5 各5点
根拠・反映状態・成果物

通常uploadAssetはR2保存後のassets INSERTがthrowすると無条件でR2を削除する。INSERT自体が完了して応答だけ失われると、assets行が残り画像本体が失われる。

今回のcommit: 4ecb3d7f9593ede50b827a735f51596697dffa0e

22 · park-repair · 第4巡稼働版へ反映・確認済み

図面画像の保存・復元結果が不明な間は画像と処理所有権を保持

図面画像のDB保存結果が不明な間は画像と処理の所有権を保持し、遅延commitや古い処理の失敗が新しい結果を壊さない。

独立36テスト成功、追加指摘を解消して承認。添付との統合37テスト、原本8テスト・型検査・全tree一致を確認し、既存LANへ反映。

重要性 5 / 効果 5 / 実現性 4 各5点
根拠・反映状態・成果物

DB batchがエラー応答後にcommitすると、後続のlookupで現在未参照でも将来参照される画像を補償削除してしまう。 / 完成画像保存では未確定のbatchと並行してjobをfailedに戻し、遅延処理の成立条件を変更していた。 / 補償失敗の記録やjob失敗状態の更新自体が失敗すると、元の保存エラーが隠れる。

今回のcommit: 4ecb3d7f9593ede50b827a735f51596697dffa0e

23 · tool-nfc-manager · 第4巡親PC配布物・Git更新済み / APIは継続稼働

連続CSV・バックアップ出力で既存ファイルを上書きしない

日時が同じCSVとバックアップは連番を付けて新規作成。既存の空ファイルも上書きせず、連続・並行出力を保護する。

5新回帰は修正前に失敗、修正後は全10回帰+Smoke成功。6project build成功、独立5境界と24個の別repository instanceによる並行CSVを確認。

重要性 4 / 効果 4 / 実現性 5 各5点
根拠・反映状態・成果物

CSV名が秒単位でStreamWriter(path,false)のため、同じ秒の再出力で以前のCSVを上書きする。並行実行では共有違反にもなる。 / Backupの同名VACUUM INTOは既存nonemptyファイルで失敗し、既存emptyファイルはそのまま書き換える。

今回のcommit: 9572758d503f9007a5a55e6e9416004cd159a1da

次の作業を短くする3つの試作

01 · READ ONLY INVENTORY

ローカルプロジェクトの棚卸し

HEAD・未保存変更・未追跡・README・テスト入口を収集。親フォルダーの空gitと実アプリの子repoを混同する事故を避けます。

初期9ルートを棚卸し。再利用性の修正で相対path・競合index・Git環境変数の誤誘導を保護し、最終hashで作者15+独立6ケース成功。承認済みscriptを成果物へ反映。

Git fetch/pushやremote APIは呼びません。UNC等の指定先はfilesystem通信を生じ得るため、信頼できるローカルrootを指定します。書込は指定OutputPathだけ。入れ子repoは個別指定します。

02 · SNAPSHOT DIAGNOSTICS

DBの参照切れ・状態不整合を集計

整合したオフラインコピーを読取り、貸出、写真参照、同期キュー等の決められた項目だけを診断するPythonツールです。

3プロファイル・21合成テスト成功。画像参照6項目も追加し、独立250行の不正形224・欠落参照109件が別実装と一致。書込み拒否、秘密非出力、DB不変を確認。

この診断ツールは合成DBだけで検証。本番接続・D1接続機能・NAS原本照合は未導入です。

03 · PORTABLE HANDOFF CHECK

ZIPの展開先で成果物とリンクを照合

Python標準ライブラリだけで台帳のサイズ/SHA256、レポートのリンクとfragment、一般的なHTML/CSS資源参照を検査します。プロジェクトやブラウザーは実行しません。

作者8テスト・独立5テスト成功。独立レビューで見つけた3指摘を解消し、再検証済み。

作成者の真正性、HTML本文、任意のinline JavaScript、本番healthは保証しません。信頼できるローカル展開先専用です。

次に取り組む改善候補

ソースの根拠と解決手順を持つローカルIssue草案です。GitHubの類似実装とZenn・noteの著者実践から使える考え方を選び、今回の構成に合わせました。外部Issueは登録していません。HTMLは優先8件、台帳は未着手6件・一部実装6件。HTMLでは関連案を整理し、一部実装済み案の次段階も含めて表示しています。

候補 1 · PRACTICE-01ローカル草案

検証結果を共通manifestに記録し未実行を成功件数から分ける

illuminance-editor / tool-nfc-manager / office-server-monitor

照度エディターの既存43件は39成功・4skip。初回通常Nodeはspawn EPERM、in-processでは45成功、後に通常プロセスでも45成功を確認。この環境差と再検証の経緯は成功の一言では引き継げない。NFC/.NETとmonitorも別形式のログを持つ。

重要性 4 / 効果 5 / 実現性 5 各5点
解決方法・受入条件

解決方法

  • 各repoにscripts/verifyの単一入口を置き、既存の検証コマンドを呼ぶ薄いwrapperとする。新しいAIサービスは追加しない。
  • 結果JSONにrepo、base SHA、差分ハッシュ、実行日時、runtime、コマンド、終了値、pass/fail/skip、未実行理由、ログ相対パスを保存。機密値は記録しない。
  • 受入条件ごとにpassed/failed/blocked/not_runを区別。skipのあるsuiteを全件検証済みと集計しない。
  • 最初は照度の単体テスト+buildで試行し、NFCとmonitorは各既存runnerの結果形式へ対応。

受入条件

  • 新規fixture検証で意図的に失敗させるとwrapperも非0で終了する。
  • fixture欠落、環境で起動不可、明示skipが別状態になり、成功へ変換されない。
  • 古いログ・別SHA・別差分の結果を現在の合格証拠として受理しない。
  • 別ユーザーのcheckoutで絶対パスを変更せず実行できる。
  • 既存45件照度テスト、NFC smoke、monitorテストの各正式コマンド自体は維持する。

出典ID: S1。外部Issueは未登録。

候補 2 · PRACTICE-03ローカル草案

9リポジトリの正本と再開時点を1つの入口から確認できるようにする

illuminance-editor / zumen-rebuild / yusuke-dashboard / construction-method-statement / tool-nfc-manager / park-equipment-3d / park-repair / office-server-monitor / repair-order-manager

施工要領書は親に空git・子に実repoがあり、子checkoutもGitHubより古い。PC改善は初回commitなし。公園図面設計はREADMEの初期段階とCONTINUATION冒頭の後続実装が混在する。

重要性 4 / 効果 5 / 実現性 4 各5点
解決方法・受入条件

解決方法

  • 共通運用規約を短い正本1枚に置き、各ツール固有ファイルは参照と入口だけにする。既存AGENTS.mdの制約を上書きしない。
  • プロジェクトmanifestにrepo名・実root・default branch・テスト入口・deploy trigger・現在作業先・基準SHAを持つ。端末絶対パスはローカル専用ファイルに分ける。
  • 現在状態はstatus.mdに、古い経緯はdated historyに分け、設計・実装・ローカル検証・配備を別項目として記録する。
  • 再開時に実git状態をread-onlyで照合し、未commit・remote差・test入口欠落を警告する。候補一覧と現在状態を重複コピーしない。

受入条件

  • 施工要領書の親空gitをアプリ本体と誤認せず子repoを選ぶfixtureが通る。
  • 同一repoで基準SHAが異なる古い状態メモを現状として採用しない。
  • 履歴側だけ更新しても現在状態の正本が勝手に変わらない。
  • 第三者が入口だけから正しいrepo、実行コマンド、未完了、次の一手を5分以内に特定する。
  • manifestに認証情報・実データ・個人設定を含めない。

出典ID: S3。外部Issueは未登録。

候補 3 · GH-PATTERN-02一部実装・次段階

照度以外のCIと、SHAに紐づく検証台帳へ展開

illuminance-editor / zumen-rebuild / office-server-monitor / tool-nfc-manager

照度と図面リビルドは単体テストが存在する一方、今回確認したtreeにCIがない。今回作成した棚卸しツールはテスト入口の有無を読めるが、どのSHAで最後に成功したかは分からない。

重要性 4 / 効果 4 / 実現性 4 各5点

照度の最小CI案は今回実装済み。GitHub上の実行、他repo、結果集計は後続。

解決方法・受入条件

解決方法

  • 照度エディターに最小workflow案を追加。pull_requestと手動実行だけで、node --test tests/data.test.cjs tests/model.test.cjs と node build.cjsを実行する。依存のない現行構成を維持する。
  • permissionsはcontents: read、checkoutはpersist-credentials: false。採用時の公式ActionのコミットSHAと必要Runnerを確認し固定する。concurrencyで同じPRの古い検証だけを中止する。
  • office-server-monitorには既存Windows CIがあるため結果を再利用し新設しない。tool-nfc-managerは現行workflowを確認して既存fixtureを接続する。Qtのpytestは実際の依存とoffscreen対応を確認してから接続。開発用DB/台帳/画像はアップロードしない。
  • 各repoの結果をrepo・SHA・コマンド・OS・pass/fail/skip・確認日時の小さなJSONで残す。棚卸しとは別の集計器が明示指定された結果だけ読み、未実行/古いSHA/環境制約を成功と区別する。
  • 初版集計はローカルの既存結果JSONだけを使う。GitHubのCI状態取得は後続の任意read-only機能とし、書込みトークンや自動修復は加えない。

受入条件

  • 照度の45テストが別ユーザーのclean checkoutで成功し、SKIP0。build成功。fixture欠落は失敗になる。
  • workflowにdeploy/push/PR投稿/本番secret/書込み権限がない。既存mainデプロイworkflowには触れない。
  • 一覧に対象SHA・実行OS・日時を表示し、テスト設定の存在だけで健康と判定しない。未実行と環境エラーを別状態にする。
  • 初版は既存テストとNode/PowerShell/.NETだけで動作し、中央サービスや監視製品を新設しない。

出典ID: prometheus-readonly-ci, checkout-permissions。外部Issueは未登録。

候補 4 · RQ-03ローカル草案

原本保存と写真登録の中断を追跡する照合レポート

park-repair

原本保存と写真レコード登録は分離されており、通信中断や削除競合では参照されない原本が残り得る。

重要性 3 / 効果 3 / 実現性 3 各5点
解決方法・受入条件

解決方法

  • 削除を行わない読み取り専用照合ツールで、uploadId/原本IDと写真参照を突き合わせ、未参照候補と保存時刻を一覧化。実際のNAS構成を確認してから実装。

受入条件

  • 最新コードと匿名fixtureで再現・計測してから実装範囲を決める。

出典ID: 今回のソース点検・試作結果。外部Issueは未登録。

候補 5 · DB-01一部実装・次段階

ChatGPT / Dotから固定のDB診断結果を確認する

tool-nfc-manager / park-repair / repair-order-manager

診断試作はオフラインコピー向け。D1・NASへの本番接続とアプリ間の認可は未構築。

重要性 4 / 効果 5 / 実現性 3 各5点

今回のPython試作は3プロファイル・21合成テスト成功。本番診断は未実施。

解決方法・受入条件

解決方法

  • 匿名fixtureでschemaを合わせる。
  • 許可した診断IDだけを受け付ける認証付きMCP/Workerを別環境に実装する。
  • 閲覧者・対象DB・開示項目・接続範囲を固定し、既存権限内の1システムから検証する。

受入条件

  • 未許可project、書込み、任意SQLを拒否する。
  • 合成不整合を再現可能に検出し、秘密値を出力しない。
  • 古い結果、schema不足、タイムアウトを成功扱いしない。

出典ID: 今回のソース点検・試作結果。外部Issueは未登録。

候補 6 · NFC-CSVローカル草案

CSVをExcel等で開く際の数式解釈への対策

tool-nfc-manager

CSVの先頭記号が表計算ソフトで式として扱われるケースを、業務上の表示・再取込要件と併せて確認する必要がある。

重要性 4 / 効果 4 / 実現性 3 各5点
解決方法・受入条件

解決方法

  • 架空値でCSV/Excelの現行挙動を確認する。
  • 値の保存形式を変えず、出力先に適した無害化方式と再取込方針を定める。

受入条件

  • 通常氏名・工具名・先頭記号を含む値の表示と再取込が仕様どおりで、意図しない式を実行しない。

出典ID: 今回のソース点検・試作結果。外部Issueは未登録。

候補 7 · REPAIR-ASSET-RECONCILE-1ローカル草案

未参照候補objectの読取照合

park-repair

不確定な保存結果では未参照objectが残り得る。

重要性 3 / 効果 4 / 実現性 4 各5点
解決方法・受入条件

解決方法

  • INSERTエラー後に残るobjectを、削除せず保管時刻・ID・参照状態だけ記録する照合方式。照合直後の不存在や照合失敗を自動削除根拠にしない。

受入条件

  • 合成fixtureで参照あり・未参照候補・照合不能を区別し、既存ファイルやDBを変更せず結果を返す。
  • 遅延commit中や照合失敗を削除可能と扱わず、自動削除を実装しない。

出典ID: 今回のソース点検・試作結果。外部Issueは未登録。

候補 8 · REPAIR-PC-HASH-1ローカル草案

PC保存原本の同じサイズでの改変検出

park-repair

NASはverifiedReferenceでsize/hash両方を照合するがPC取得はstat.sizeのみ。

重要性 3 / 効果 4 / 実現性 4 各5点
解決方法・受入条件

解決方法

  • 実データを使わず同サイズ改変fixtureを作り、50MiB上限とメモリ負荷を考慮してPC読取にもdigestを照合する案を評価。

受入条件

  • 同サイズでも内容を変えた合成原本をhash不一致として拒否し、正常hashの原本取得は成功する。
  • 50MiB上限を維持し、読取・hash計算失敗で正常扱いせず、既存のエラー応答と原本bytesを保つ。
  • 最大サイズfixtureのメモリ使用と応答時間を記録し、既存NAS経路と保存形式を変更しない。

出典ID: 今回のソース点検・試作結果。外部Issueは未登録。

バックアップ復旧の調査案について

GitHubのresticとnoteの別環境復元事例を参考に、作成成功に加えて別DBで業務状態を照合する案を整理しました。実装された範囲は上のNFC成果・最新レポートで確認してください。manifest照合やD1/R2への展開は独立した追加範囲です。

9リポジトリの点検範囲

SHAは取得・比較の基準です。後日の再開では現在HEADとの差を確認してください。ローカルsnapshotのcommitはupstreamの履歴と区別します。

リポジトリ成果点検内容と残る範囲基準SHA
illuminance-editor ↗oryzia2latipes3件改善読込前の距離検証、同梱CSV回帰、CI定義と配布HTMLをprivate masterへ反映。45テスト成功。UI未検証、Actions未実行。f40909d66ff7
zumen-rebuild ↗oryzia2latipes3件改善属性・変換中編集保護に加え、保存ファイルの読込失敗時も現在の図面・Undo・未確定入力を保持。109成功・2skip、独立17ケース。配布元Git更新済み、未知の利用PCは未更新。61525a3587ae
yusuke-dashboard ↗oryzia2latipes調査のみAPI・認証・保存・UIのテストとGitHub CIが整備済み。10/14文書で提案されていたCron期限超過表示と初回アクセス補完はworker/backup-schedule.tsとDailyBackupSettings.tsxに実装済み。重複実装を回避。今回コード未変更。edf8e57f8d85
construction-method-statement ↗oryzia2latipes1件改善案件読込と起動時復元の非同期競合を修正。全96件・既存Actions成功、Workerと認証境界を確認。旧ローカルcheckoutは未変更。a1eb53cde14d
tool-nfc-manager ↗koumu-hokuetsu5件改善履歴・延長・復元テストに加え、watchdog排他とhealth待機も原本/既存運用/Gitへ反映。APIのPIDとhealthを維持。 追加のCSV/backup衝突保護はDesktop配布の個別状態を参照。API更新とは分けて確認。f6af379034da
office-server-monitor ↗koumu-hokuetsu2件改善認証情報のログ漏れと削除サービス操作を修正。原本review branchで全21テスト成功。反映・再起動の最新状態は配備表を参照。b57e08896967
park-repair ↗koumu-hokuetsu4件改善削除済み原本保存拒否に加え、中断した図面生成ジョブの完成画像復元を修正。関連22件、既存LANとGitへ反映。 添付・図面画像の不確定commit保護を追加。今回の2修正の反映状態は個別カードで確認。71199b7ab81d
repair-order-manager ↗koumu-hokuetsu4件改善履歴索引化、再読込の入力保護、消えた編集対象の誤登録防止を既存Workerへ反映。72 unit/Worker+24 browser成功。その後のテストcleanupはGitのみ更新し稼働版を維持。1bc36ae7f378
park-equipment-3d ↗koumu-hokuetsu1件改善エラー診断保存時の二次例外を修正。Python 3.5/3.13で各4件成功。実モデル描画なし。63b741fb6db1
ローカル配置で見つかった引継ぎ上の注意
  • 施工要領書は親が空git、アプリは子のconstruction-method-statement。旧ローカルcheckoutを保持し、最新mainの隔離cloneから既存Actionsへ反映済み。main pushは本番デプロイを起動する構成。
  • PC改善は初回commitなし、未追跡40件。実データや秘密を除外した開発用の正本整理が候補。
  • 公園図面エディター設計は初期READMEと後続CONTINUATIONで時点差あり。古い提案を実装済みと混同しない。
  • 在庫管理は空。要件不明の新規開発より既存ツールの改善を優先。
  • dashboardの過去提案にあった期限超過表示・アクセス時補完は現在コードに実装済み。重複実装を避けた。

検証結果と、まだ確認していないこと

対象確認できたこと残る確認
工具貸出最新原本10回帰+既存Smoke成功。6プロジェクトbuildで警告0・エラー0。独立5境界も成功、親PC配布物の3ファイルhash一致。NFC実機、Android、親PC GUI操作は未検証。API配備後のhealth・実DBの整合backup/quick_checkは確認済み。
サーバー監視通常Windowsと原本review branchで21件成功。sandboxだけの通信失敗を切り分け。更新後dashboardの画面テキストで3サービス・NAS正常を確認。スクリーンショットは取得制限があり未確認。
照度エディター通常Nodeでも45成功・0skip、HTML build成功。距離アンカーの負例を修正前に再現。ブラウザー上の初期描画・読込状態保持、GitHub CIの実実行。
公園修繕初期7件・復元関連22件に加え、添付/図面画像の統合37件と原本8件・型検査成功。独立の添付8ケース、図面36テストも成功。既存LANでhealth・認証境界を確認。実業務バックアップの復元やNAS原本の内容検査は未実施。同時削除の一般的な競合は対象外。
NFC起動監視PowerShell5.1で19件、独立実行・原本適用後とも成功。既存APIのPIDとhealth不変。API exeの直接起動や旧watchdogはmutexに参加しない。hung APIを自動停止しない。
施工手順書全96件、案件読込32件、独立再レビュー承認。既存Actionsと本番認証境界を確認。実ブラウザーで業務案件を編集する試験は未実施。既存MCPの実ツール接続は当sessionで未確認。
図面エディター属性・変換競合に加え読込失敗時のセッション保持を検証。109成功・2skip、独立17ケース承認。独立レビュー5指摘を解消し配布元Gitへ反映済み。未知の利用PCのコピーと実CAD/実スキャンOCRは未確認。
3D生成診断Python 3.13とBlender同梱3.5.3で4ケース成功。Blender本体の生成・描画・既存モデルの見た目。
受注管理履歴索引化・再読込保護・対象不在処理を反映。原本72 unit/Worker+24 browser成功。その後のテストcleanupはunit23+browser24成功。稼働版commit8f932c、テスト追加後のGitはde0c32a。実運用速度は未測定、実データ操作による回帰は行っていない。
DB診断試作3プロファイル、既存9+追加12=21件。画像参照6項目、独立250行照合も一致。本番D1・SQLite・NASの接続、実schema適合、MCP導入。
画面確認の制限: ローカルHTMLを開く操作はBrowser URL policyで拒否されました。迂回は行っていません。このレポートは構造・相対リンク・JavaScript構文を静的検証し、ブラウザーでの見た目は未検証として残します。

外部npm脆弱性監査は、依存情報の外部送信への明示承認不足として自動承認レビューが拒否し、利用者の承認待ちです。通信は未実施。ローカルpackage-lock 2repo・331項目のregistry/integrityメタデータは指摘なしですが、既知脆弱性監査とは異なります。pnpm-lockは今回のJSON scanner対象外です。

成功数は独立したsuiteごとに表示しています。同じテストの環境別再実行を合算して、検証件数を増やしていません。

ChatGPT・Dotで引き継ぐ / DBを確認する

今回用意したのは保存台帳、ローカル診断、展開先の成果物照合ツールです。別に施工手順書には、保存済み案件を検索・取得するread-only MCPが既存実装され、docsには接続登録済みと記載されています。当sessionに施工用search/fetchツールは公開されておらず、実接続は未検証です。Plugin検索0件は既存custom接続の不存在を意味しません。NFC配備時には実DBの整合backupとquick_checkを行いましたが、診断試作は合成データでの検証に限られます。別アプリへのファイル参照・アカウント権限が自動共有されるとは扱いません。接続範囲を確認し、必要な成果物を渡して再開できます。

1. 成果物と現在地を確認

verify-deliverables.pyで欠落・SHA・リンクを照合し、AGENT-CHECKLISTと個別reportを読む。

2. 基準を照合

現在HEADと基準SHA、既存変更、正本フォルダーを確認。

3. コピーで診断

承認済みの整合したオフラインDBコピーに固定プロファイルを実行。

4. 根拠を返す

件数・時点・状態のJSONを使う。未確認やschema不足を合格にしない。

DBへの入口: Python試作は mode=ro・query_only・許可テーブル制限。任意SQL入力口はなく、出力は集計のみ。稼働中DB用ではありません。

診断用MCPの追加案: 施工手順書の既存search/fetchとは別に、許可済みproject/check IDだけで固定診断を呼ぶ設計。認証・認可・時間/件数制限を用意してから、承認された対象へ導入します。

Cloudflare管理画面ではWorkerとDBの関連、D1の9テーブル・約385 kBを読取確認しました。現状は性能最適化より整合性点検を優先する判断です。既存4タブとログイン状態を維持し、設定やDB内容は変更していません。管理画面ログインはDot/ChatGPTへのDB権限付与を意味しません。

中断しても、この順序で再開

  1. 個別reportとHANDOFFを読む。 元の基準SHA、ローカルcommit、適用済みの場所、検証の限界を確認する。
  2. 現在の作業状態を確認する。 利用者の変更を保持し、古いpatchをそのまま重ねない。
  3. 未検証を埋める。 UI、実機、GitHub CIなど対象に必要な確認を隔離環境で行う。
  4. テストと独立レビュー後に反映する。 通常修正は既存手順で本番まで進め、healthと復旧方法を確認する。不可逆データ変更・重要仕様変更・追加費用だけは事前承認を得る。

リンクは同じoutputsフォルダーの相対パスです。HTMLと関連ファイルを同じフォルダーのまま移動すると参照を保てます。外部出典リンク以外にネットワーク依存はありません。

実際に確認した調査出典

著者の実践・公開コードから確認できたことと、今回の提案を分けています。コードは複写せず原理を参照し、記事のモデル評価や製品能力を一般化していません。

S1 [検証] TDD Guard:Claude CodeにTDDを強制するHooksツールの実力

Zenn / Sera ↗

Sera · 公開 2026-02-13・更新 2026-02-21 · 確認 2026-10-28

著者の実践: 著者がVitestの小規模プロジェクトでテスト結果JSONを確認。毎編集時のLLM判定には遅延と誤検知の懸念も記す。

今回の採用案: テスト結果を構造化して残す方法。TDD Guard自体の導入や全編集のブロックは採用しない。

著者の検証事例。現行製品仕様や他環境の性能を保証する根拠にはしない。

S2 仕様書からGitHub Issuesを切る:Claude Codeに受け入れ条件付きで分解させ、番号を付け替えて登録する

Zenn / AIしごと道具店 ↗

AIしごと道具店 · 公開 2026-10-19 · 確認 2026-10-28

著者の実践: 短い仕様を受入条件と依存関係付きタスクへ分解。表と本文の不一致、仮番号とGitHub番号の衝突を指摘し、登録処理を偽ghで検証した。

今回の採用案: 観測できる受入条件と依存関係、外部送信なしの登録テスト。記事の登録コードはコピーしない。

記事のコード検証は偽ghによるもの。実GitHub上の公開成功とは扱わない。

S3 Codex と Claude Code を同じリポジトリで回す — AGENTS.md / CLAUDE.md の 2 層規約

Zenn / mine_take ↗

mine_take · 公開 2026-04-25・更新 2026-10-01 · 確認 2026-10-28

著者の実践: 著者の運用で共通規約とツール固有索引を分離。コピーしたスキルが片側だけ更新され、内容やファイル増減の差分確認を設けた。

今回の採用案: 正本を1つにし参照で共有する構成。現在地と履歴の分離は今回のプロジェクト向け追加案。

記事のモデル別得意分野や自動読込仕様は採用・一般化しない。

S4 Claude Code の環境をまるごとバックアップして別マシンに復元してみた

note / ぽぽっちょ ↗

ぽぽっちょ · 公開 2026-02-18 · 確認 2026-10-28

著者の実践: 著者が2台間で復元し、認証情報・ブラウザープロファイルの除外、一覧と復元手順の同梱、絶対パス調整、既存設定との差分マージを行った。

今回の採用案: 対象manifestと別の場所への復元・比較。業務DBの内容照合へ応用する部分は当方案。

Claude設定の移行事例。SQLite/D1の復旧手順や互換性を裏付ける記事ではない。

restic-restore · restic/restic

cmd/restic/cmd_restore.go ↗ / internal/restorer/restorer_test.go ↗ / LICENSE ↗

復元処理後に別段階のVerifyFilesを実行し、検証エラーを成功として返さない。テストには一時領域への復元と不正サイズの検出がある。

確認 2026-10-28。LICENSEにBSD 2-Clause Licenseと記載。今回はコードをコピーせず原理のみ参照。

prometheus-readonly-ci · prometheus/client_golang

.github/workflows/test.yml ↗ / LICENSE ↗

テストworkflowはcontents: readを明示し、checkout資格情報の保持を無効化。既存make test等を呼び、同一変更への重複実行をconcurrencyで整理する。

確認 2026-10-28。LICENSEにApache License Version 2.0と記載。YAMLを複写せず構成原理を参照する。

checkout-permissions · actions/checkout

README.md ↗

checkoutの推奨権限はcontents: read。persist-credentials: falseによる資格情報保持の無効化が説明されている。

確認 2026-10-28。READMEはMIT Licenseへのリンクを示す。採用時に選択したバージョンのLICENSEと必要Runnerバージョンを再確認する。

codemirror-stale-result · codemirror/lint

src/lint.ts ↗ / LICENSE ↗

非同期lintの開始時stateを保持し、結果到着時に現在の文書と同一の場合だけ診断を適用する。

確認 2026-10-28。LICENSEにMIT Licenseと記載。今回はTypeScriptコードをコピーせずPython/Qtで小さく実装する案。