diff --git a/docs/plans/original-completion-2026-10-02/execution/owner_model_cli.py b/docs/plans/original-completion-2026-10-02/execution/owner_model_cli.py index 17975a4..2edac46 100644 --- a/docs/plans/original-completion-2026-10-02/execution/owner_model_cli.py +++ b/docs/plans/original-completion-2026-10-02/execution/owner_model_cli.py @@ -98,6 +98,25 @@ def packet_with_actual_evidence(self, task_id, role, sha=None): packet_core.git = actual_git else: packet = original_packet(self, task_id, role, sha) + if role == 'reviewer' and self.config['project'] == 'the-tree-p08-03-code' and task_id == 'P08-03': + import hashlib + frozen = Path(os.environ['OWNER_P08_PREPARED_REVIEW']) + prefix, data = packet.split('\nDATA:\n', 1) + body = json.loads(data) + context = frozen / '.owner-review-context' + context.mkdir(exist_ok=True) + manifest = {'candidate': sha, 'complete_sources': {}, 'validation_sources': {}} + for key in ('sources', 'validation_sources'): + for name in body[key]: + path = frozen / name + require(path.is_file() and not path.is_symlink(), 'committed reviewer source available') + raw = path.read_bytes() + manifest['complete_sources' if key == 'sources' else key][name] = {'path': name, 'bytes': len(raw), 'sha256': hashlib.sha256(raw).hexdigest()} + body[key] = {'complete_manifest': '.owner-review-context/source-manifest.json', 'section': 'complete_sources' if key == 'sources' else key, 'instruction': 'Read complete files directly from this frozen checkout; no source omitted or truncated.'} + (context / 'source-manifest.json').write_text(json.dumps(manifest, ensure_ascii=False, indent=2)) + (context / 'complete-diff.txt').write_text(body['diff']) + body['diff'] = {'path': '.owner-review-context/complete-diff.txt', 'instruction': 'Read complete candidate diff; all original content preserved.'} + packet = prefix + '\nDATA:\n' + json.dumps(body, ensure_ascii=False) extra = os.environ.get('OWNER_REVIEW_SUPPLEMENT') if role == 'reviewer' and extra: prefix, data = packet.split('\nDATA:\n', 1) diff --git a/docs/plans/original-completion-2026-10-02/execution/p08-03/REVIEW_BINARY_PREPARATION_RETRY.json b/docs/plans/original-completion-2026-10-02/execution/p08-03/REVIEW_BINARY_PREPARATION_RETRY.json index 9d9ac95..e2a3b14 100644 --- a/docs/plans/original-completion-2026-10-02/execution/p08-03/REVIEW_BINARY_PREPARATION_RETRY.json +++ b/docs/plans/original-completion-2026-10-02/execution/p08-03/REVIEW_BINARY_PREPARATION_RETRY.json @@ -8,5 +8,13 @@ "acceptance_changed": false, "final_full_regression": "pending; preflight issues require independent judgment before expensive regression", "text_compatibility": "preserves original Runner git stdout.strip normalization; registered spec SHA verified unchanged", - "spec_sha256": "7941da4edbd3c43a636a4a3d834d57c095b56da988fa3a056e55b22d3a5d50e9" + "spec_sha256": "7941da4edbd3c43a636a4a3d834d57c095b56da988fa3a056e55b22d3a5d50e9", + "provider_attempt_r02": { + "status": "failed_before_inference", + "reason": "Prompt is too long", + "input_tokens": 0, + "output_tokens": 0, + "run": "b36a14f2e2de4557b4e2a4fc8af0d342" + }, + "packet_delivery": "Complete source manifest and full diff file in same frozen checkout; no file or content omitted; reviewer Read/Grep/Glob enabled" }