docs: audit P24 packet proposal against exact blobs and malformed inputs
This commit is contained in:
+4
@@ -16,3 +16,7 @@ P13支援RP13-01は最終1398aa2dでも配置依存と負例fixture不良が残
|
||||
## 完了手順
|
||||
|
||||
承認済み範囲の実装者1名、関連変更をまとめて局所/影響試験、正確な最終版の必須Runner試験、独立レビュー。P24 exact packet容量を再確認し、同4cefcffの正式独立レビューと統合候補検証へ進む。統合で証拠適用性が変わる場合だけ影響検証を追加する。全条件/独立review/統合証拠が揃うまでP24-03を完了にしない。Windows最終配布版の受入は別途未達。
|
||||
|
||||
## 実装前の有限再監査
|
||||
|
||||
prospective-guards-audit.jsonで、保存済みcontext14フィールドを正確なbase/candidateのGit bytesから再計算して全一致、172行の不変rawと受入focus4行を確認。追加の2不正入力では、prototypeが未知schema_version=999とNaNを受理した。現ゲーム候補に不正があったという証拠ではなく、未設置prototypeの検証不足である。既存の『未知形式・不一致は失敗』を満たすため、本番実装はbase/candidateのschema_versionが厳密な整数1であることと、JSONのNaN/Infinity/-Infinity拒否を先に検査する。対応する正例・負例を同一最終版で検証する。原7条件・30/88・500000上限・情報保持要件は変更しない。
|
||||
|
||||
+4
@@ -11,3 +11,7 @@ prototypeの8局所検証は通過しました。実候補に対するcontext例
|
||||
提案する追加範囲はRunnerのrunner/core.pyのpacket生成とtests/test_runner.pyの対応検証です。ゲームタスクのallowed_pathsには含まれません。AGENTS.mdの「タスク契約の allowed_paths 外を変更しない。追加変更は提案として返す。」に従い、本体変更は承認まで行いません。状態DB/ポリシー/承認の直接編集、上限/予算/権限拡大、重複ゲーム実装はありません。
|
||||
|
||||
正式validate通過後の全packet事前測定を追加しました。contract/allocation/validation_sources/実passed validation receipt1件を含む現方式600,714bytesに対し、この候補contextへ置き換えた案は430,008bytes、従来500,000bytes上限の余裕69,992bytesです。exact-review-packet-preflight.jsonに記録しています。Runner関数/DBを書き換えず、readonlyデータから現在のpacketフィールドを再構成して測定したものです。実装・正式review・受入が通過したという結果ではありません。
|
||||
|
||||
## 実装前の有限再監査
|
||||
|
||||
prospective-guards-audit.jsonで、保存済みcontext14フィールドを正確なbase/candidateのGit bytesから再計算して全一致、172行の不変rawと受入focus4行を確認。追加の2不正入力では、prototypeが未知schema_version=999とNaNを受理した。現ゲーム候補に不正があったという証拠ではなく、未設置prototypeの検証不足である。既存の『未知形式・不一致は失敗』を満たすため、本番実装はbase/candidateのschema_versionが厳密な整数1であることと、JSONのNaN/Infinity/-Infinity拒否を先に検査する。対応する正例・負例を同一最終版で検証する。原7条件・30/88・500000上限・情報保持要件は変更しない。
|
||||
|
||||
+34
@@ -0,0 +1,34 @@
|
||||
{
|
||||
"scope": "Read-only pre-implementation review; no Runner installation or formal acceptance",
|
||||
"prototype_raw_sha256": "f436dd4004641ba1bf1338c23f97fc95b5b0e9e5776373b0d9162352d43e6f13",
|
||||
"saved_context_exact_git_recomputation_matches": true,
|
||||
"compared_context_fields": 14,
|
||||
"actual_base_raw_sha256": "5cebdfdffeca26c7778c8be916877b06ae6e42999272d73d01ea66e644a9d648",
|
||||
"actual_candidate_raw_sha256": "3c72cad4dded0619d0cf1c9691b590258ea657d79e482910bde8b0bbeed73e03",
|
||||
"focused_rows": [
|
||||
"tests/ui/test_actor_selection.gd",
|
||||
"tests/ui/test_selection_autosave.gd",
|
||||
"tests/ui/test_selection_departure.gd",
|
||||
"tests/ui/test_selection_lifecycle.gd"
|
||||
],
|
||||
"unchanged_raw_rows": 172,
|
||||
"probes": [
|
||||
{
|
||||
"case": "unsupported_candidate_schema_version",
|
||||
"prototype_rejected": false,
|
||||
"installed_runner_mutated": false,
|
||||
"interpretation": "Prospective fail-closed guard must be implemented and tested before adoption; this is not a game candidate defect."
|
||||
},
|
||||
{
|
||||
"case": "nonfinite_candidate_metadata",
|
||||
"prototype_rejected": false,
|
||||
"installed_runner_mutated": false,
|
||||
"interpretation": "Prospective fail-closed guard must be implemented and tested before adoption; this is not a game candidate defect."
|
||||
}
|
||||
],
|
||||
"required_before_live_implementation": [
|
||||
"Require the exact supported marker schema version 1 before omitting any row; unsupported/missing version fails closed.",
|
||||
"Reject nonfinite JSON values (NaN, Infinity, -Infinity) in base and candidate before constructing authenticated context.",
|
||||
"Keep all prior raw-row/base/candidate/metadata/diff/code/validation preservation conditions."
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user