chore: checkpoint web Blender migration source, tools and docs
Accumulated uncommitted work: GHOST Web backend, WebGL/GPU web layer, web workflow engine and protocol, tooling, docs and task records. Large generated evidence, user-testing archives, build snapshots and imported test assets remain untracked. Co-Authored-By: Claude Code <noreply@anthropic.com>
This commit is contained in:
45
tools/web/build-runtime-evidence-plan.py
Executable file
45
tools/web/build-runtime-evidence-plan.py
Executable file
@@ -0,0 +1,45 @@
|
||||
#!/usr/bin/env python3
|
||||
"""Produce the bounded evidence capture plan for WBV2-P1424-001.
|
||||
|
||||
This planner is intentionally side-effect free: implementation phase records the
|
||||
exact Chromium/native workflows to run later, without claiming they passed.
|
||||
"""
|
||||
import json
|
||||
from pathlib import Path
|
||||
|
||||
TASK = "WBV2-P1424-001"
|
||||
CONTRACTS = Path("tests/golden") / TASK / "behavior-contracts.json"
|
||||
OUT = Path("tests/golden") / TASK / "runtime-evidence-plan.json"
|
||||
|
||||
def main():
|
||||
data = json.loads(CONTRACTS.read_text())
|
||||
plan = {
|
||||
"schemaVersion": 1,
|
||||
"task": TASK,
|
||||
"status": "PENDING_USER_RUNTIME_VALIDATION",
|
||||
"runner": "Chromium only",
|
||||
"sourceContracts": str(CONTRACTS),
|
||||
"steps": [],
|
||||
}
|
||||
for contract in data["contracts"]:
|
||||
module = contract["module"]
|
||||
plan["steps"].append({
|
||||
"module": module,
|
||||
"positive": contract["positive"],
|
||||
"negative": contract["negative"],
|
||||
"recovery": contract["recovery"],
|
||||
"requiredArtifacts": [
|
||||
f"{module.lower()}-before.blend",
|
||||
f"{module.lower()}-after.blend",
|
||||
f"{module.lower()}-negative.blend",
|
||||
f"{module.lower()}-undo.blend",
|
||||
f"{module.lower()}-redo.blend",
|
||||
f"{module.lower()}-reopened.blend",
|
||||
f"{module.lower()}-chromium.json",
|
||||
],
|
||||
"result": "NOT_RUN",
|
||||
})
|
||||
OUT.write_text(json.dumps(plan, indent=2, ensure_ascii=False) + "\n")
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
Reference in New Issue
Block a user