53 lines
3.8 KiB
JSON
53 lines
3.8 KiB
JSON
{
|
|
"result": "no demonstrated defect",
|
|
"scope": "Current carried-document recovery, multiplayer shared identity/progression gates, consumption and cleanup; no optional-site audit repeated.",
|
|
"head": "9418b6950a12610361d96a99d058e9e10de03713",
|
|
"created_utc": "2026-11-05T10:54:22.330701+00:00",
|
|
"source_sha256": {
|
|
"AGENTS.md": "5f6b6364b02d9ba70664b78c1c28559e2071e3eee079d8db044a6df1e865448e",
|
|
"addons/core/Scripts/Game/ERR/00_Core/ERR_DocumentComponent.c": "885c8ab4fc9e64c3f8b40056536096c8c32b011cb340b25ca00353a96da15c69",
|
|
"addons/core/Scripts/Game/ERR/00_Core/ERR_DiscoveryService.c": "552d9e40f72a135f19d25a17fbecf475b8bba8d8b62ec6b6d055c65499a0b637",
|
|
"addons/core/Scripts/Game/ERR/00_Core/ERR_Location.c": "6323facd2d5b32382b466a2aa0140064632a8c1de0597e0738cb09a3fcfd7abb",
|
|
"addons/core/Scripts/Game/ERR/00_Core/ERR_SiteDiscoveryRules.c": "dcbce3b7aee89bfc47a50e9de89209758af1f1bb462b99af67a8ad7a26e9f229",
|
|
"addons/core/Scripts/Game/ERR/00_Core/ERR_SiteService.c": "2b283ad19b046fd6b33245d466b197bd05b4c472e128a747e6b1e725f4a34c2a",
|
|
"addons/core/Scripts/Game/ERR/00_Core/ERR_MissionRules.c": "17d1f48878b02a457eebbe5ff87c4267488d68d2a9b3121dda77a8bc8e69c8c6",
|
|
"addons/core/Scripts/Game/ERR/20_Intel/ERR_IntelService.c": "2911325c79a7a372628b18ffa0e110d11919ce2c2cd7b19277bfd608fdb03dfc",
|
|
"addons/core/Scripts/Game/ERR/20_Intel/ERR_IntelEvidence.c": "ff436bd3c7aa0fcd5c24e940430c1ffdda934889953f63e877ae418bc9557d26",
|
|
"addons/core/Scripts/Game/ERR/20_Intel/ERR_IntelDiscoveryFeedback.c": "741de1dbadfd46c154905a0918aad41386ddc139d843553db55d20d60700c020",
|
|
"docs/player-route.md": "979d47b33b085a87bd589b327f772dff5bd84ffe743e2e4643f62d2718741e80"
|
|
},
|
|
"findings": [],
|
|
"observations": [
|
|
"Recovery requires a current living friendly player body. A shared spent-entity ledger prevents one recovered document granting again after transfer or repeated scans.",
|
|
"Fixed objective radio documents remain unspent and are never queued for deletion while progression is locked; a later scan processes them after unlock.",
|
|
"The radio requirement counts distinct fully identified eligible location IDs across the team, excludes automatically revealed starting clues, and caps for sparse terrain only after active world preparation ends.",
|
|
"Ordinary folder cleanup follows current reciprocal player custody before submission; accepted operations are observed without duplicate submission, unknown completion remains quarantined, and terminal failure retry is bounded.",
|
|
"A rough clue is deliberately one consumed document; a different document or direct physical observation can identify the site. Reusing the same folder is intentionally ineffective."
|
|
],
|
|
"checks": [
|
|
{
|
|
"path": "tests/test_radio_intel.py",
|
|
"sha256": "e3cd012a7c3475c58e44f3940fc7b4798aed03e67e0b44b7df365705695b7012",
|
|
"exit_code": 0,
|
|
"log": "/tmp/erri-heartbeat-20261105-1052/test_radio_intel.py.log"
|
|
},
|
|
{
|
|
"path": "tests/test_intel_cleanup.py",
|
|
"sha256": "fbf347688344f154beae92ffd4d2a6e4087e9c41276024607034c77f29f17d80",
|
|
"exit_code": 0,
|
|
"log": "/tmp/erri-heartbeat-20261105-1052/test_intel_cleanup.py.log"
|
|
},
|
|
{
|
|
"path": "tests/test_intel_discovery_feedback.py",
|
|
"sha256": "ffdce25a6c753da12822bf3f1cc7a66d21207dadb0e024ba1f4035cb6971a74d",
|
|
"exit_code": 0,
|
|
"log": "/tmp/erri-heartbeat-20261105-1052/test_intel_discovery_feedback.py.log"
|
|
}
|
|
],
|
|
"limitations": [
|
|
"Tests extract actual methods into C++ with explicit native boundary doubles; they do not establish native inventory callback semantics or multiplayer RPC/replication behavior.",
|
|
"Read-only bounded audit; no gameplay source, original workspace, staging, publishing or native-engine changes."
|
|
],
|
|
"changes": "Only audit JSON and three focused test logs under /tmp/erri-heartbeat-20261105-1052."
|
|
}
|