{
  "scope": "Local source-extraction and documentation UI tests; no Minecraft game execution.",
  "results": [
    {
      "test": "test_bestiary_links.cjs",
      "exit_code": 0,
      "seconds": 0.218,
      "output": "PASS Nethengeic Pit source selector and exact guide on the Beast card; no fabricated dimension or extra fetch\nPASS four Ancient Cavern shrine-route cards, guide links and one release fetch; natural spawn fields unchanged\nPASS: exact creature permalinks across releases, Shadow does not match Shadowlord, exactly one release-specific startup fetch\n"
    },
    {
      "test": "test_drop_finder.cjs",
      "exit_code": 0,
      "seconds": 0.084,
      "output": "PASS drop search, exact creature links, lazy association lists, per-release request caching, version-preserving recipe links\n"
    },
    {
      "test": "test_filters.cjs",
      "exit_code": 0,
      "seconds": 0.342,
      "output": "PASS: legacy dimension filter, all3modernrosters, Barathos filtering, return to525legacyentities, lazy loot retained\n"
    },
    {
      "test": "test_historical_comparisons.cjs",
      "exit_code": 0,
      "seconds": 0.122,
      "output": "PASS 178 separate historical comparisons; no current portrait substitution; no image before expand; no duplicate builds or extra release fetch\n"
    },
    {
      "test": "test_inventory_explorer.cjs",
      "exit_code": 0,
      "seconds": 0.28,
      "output": "PASS all10133cards, one selected-release startup fetch, 40-card lazy pages, exact IDs, search/kind/status filters, cache, retry, no stale response overwrite, invalid version rejected\n"
    },
    {
      "test": "test_loot.cjs",
      "exit_code": 0,
      "seconds": 0.197,
      "output": "PASS: lazy fetch, shared cache across525entities, all517tables render, exact conditions/functions, failure retry, no startup loot scan\n"
    },
    {
      "test": "test_loot_guide_media_121.py",
      "exit_code": 0,
      "seconds": 0.058,
      "output": "PASS all four guide image URLs resolve to inspected source-derived assets with verified hashes\n"
    },
    {
      "test": "test_loot_reference_121.py",
      "exit_code": 0,
      "seconds": 0.176,
      "output": "PASS 1,315 normalized table item-multisets and hashes, 25 modifiers, 1,472 icons, nested refs, world gates and vanilla Wither override\n"
    },
    {
      "test": "test_loot_reference_ui.cjs",
      "exit_code": 0,
      "seconds": 0.325,
      "output": "PASS 1,340 fact panels, index-only startup, no initial images, lazy category/icon caches, exact deep links, modifier/override search, retries and unsupported-version refusal\n"
    },
    {
      "test": "test_loot_variants.cjs",
      "exit_code": 0,
      "seconds": 0.105,
      "output": "PASS: nested multi-entry armour rendered; random fish variants stay a labeled pool, four exact model references, stable lazy expansion, exact data1 Salmon, unknown metadata remains unknown\n"
    },
    {
      "test": "test_modern_loot.cjs",
      "exit_code": 0,
      "seconds": 0.336,
      "output": "PASS: 787 modern source roster panels, 792 entity/nested tables, one loot fetch per release, no panel load failures\n"
    },
    {
      "test": "test_modern_trader_locations_121.py",
      "exit_code": 0,
      "seconds": 0.031,
      "output": "PASS2 roaming definitions,6 hovel variants,entity flags,10000 arithmetic cases,83 retained turntables and2 NPC guide links\n"
    },
    {
      "test": "test_multistate_coverage.py",
      "exit_code": 0,
      "seconds": 0.528,
      "output": "PASS 141 explicit states, 42 transparent and 99 visible; all source selections/hashes; all 149 initial inventory exceptions accounted for\n"
    },
    {
      "test": "test_portrait_coverage_120.py",
      "exit_code": 0,
      "seconds": 0.326,
      "output": "PASS all 285 classified, 107 references, 178 explicit gaps; exact released resource hashes; complete selected variant galleries; nine atlas comparisons; no missing referenced images\n"
    },
    {
      "test": "test_realmstone_progression_116.py",
      "exit_code": 0,
      "seconds": 0.106,
      "output": "PASS 22 routes, 22 GUI nodes, two recipe hashes, 20 source/class hash checks, recorded method bytes, Nowhere discrepancy, important numeric conditions and image references\n"
    },
    {
      "test": "test_recipe_cache.cjs",
      "exit_code": 0,
      "seconds": 0.209,
      "output": "PASS: release/search deep link, three Lapis recipes, one fetch per cached release, failed fetch evicted and retried, unsupported version rejected\n"
    },
    {
      "test": "test_recipe_components.cjs",
      "exit_code": 0,
      "seconds": 0.092,
      "output": "PASS three visible output damage values, strict Bone Horn input identity/components, valid icon search target, immutable component alternatives\n"
    },
    {
      "test": "test_recipe_explorer.cjs",
      "exit_code": 0,
      "seconds": 0.283,
      "output": "1.21.1 1532 cards rendered without exception\n1.20.1 1781 cards rendered without exception\n1.16.5 2296 cards rendered without exception\n1.12.2 1172 cards rendered without exception\n6781 passed\n"
    },
    {
      "test": "test_roster_cache.cjs",
      "exit_code": 0,
      "seconds": 0.171,
      "output": "PASS one selected-release startup request, no legacy preload, per-release caching, failed fetch eviction/retry, no stale error cards, invalid release rejected\n"
    },
    {
      "test": "test_stat_readers.py",
      "exit_code": 0,
      "seconds": 0.122,
      "output": "PASS 787 artifact builder records, joins, known values, no duplicate blocks, unsupported paths rejected\n"
    },
    {
      "test": "test_trade_catalog_116.py",
      "exit_code": 0,
      "seconds": 0.047,
      "output": "PASS207 definitions,44 vendor choices,194 icon hashes,21 shared pools,22 distinct Herald predicates and explicit locked trade\n"
    },
    {
      "test": "test_trade_catalog_121.py",
      "exit_code": 0,
      "seconds": 0.029,
      "output": "PASS: 55 offers, seven groups, 22 dimension predicates, 60 icon hashes, 111 illustrated cells\n"
    },
    {
      "test": "test_trade_explorer.cjs",
      "exit_code": 0,
      "seconds": 0.241,
      "output": "PASS262 offer cards, release-only cached loading, 24-card paging, alias pools, filters, special labels, failed fetch retry and stale-request guard\n"
    },
    {
      "test": "test_trader_locations_116.py",
      "exit_code": 0,
      "seconds": 0.04,
      "output": "PASS43/44 acquisition candidates;29 special-spawner chains;258 templates;35 structure/crate identities;419-entry roster preserved\n"
    },
    {
      "test": "test_turntable_ui.cjs",
      "exit_code": 0,
      "seconds": 0.148,
      "output": "PASS stale-selection guard, bounded four-image LRU, deep links, one index/selected image load, lazy model cache, frame wrap/reset, no autoplay, visibility pause, failed-image eviction and retry\n"
    },
    {
      "test": "test_tutorial_hub.cjs",
      "exit_code": 0,
      "seconds": 0.084,
      "output": "PASS 139 guide cards; six-card pagination; release and goal filters; exact search links; unsupported-release refusal; lazy images and readable image-failure fallback.\n"
    },
    {
      "test": "test_farming_guide_121.py",
      "exit_code": 0,
      "seconds": 0.035,
      "output": "PASS17crop records/13ordinary;16loot tables;4guideimages;specialplacement,replant,soiltransition,Yfloorandruntimecaveats\n"
    },
    {
      "test": "test_infusion_guide_121.py",
      "exit_code": 0,
      "seconds": 0.028,
      "output": "PASS62infusiondefinitions;exactBoltRiflebaseand7ingrediententries;stationpattern;2images;consumption/preservationcaveats\n"
    },
    {
      "test": "test_imbuing_guide_121.py",
      "exit_code": 0,
      "seconds": 0.033,
      "output": "PASS135recipes;6exactexampletiers;12focusdurabilities;stationpattern;2images;immediatecommit/stack-use/book/skillcaveats\n"
    },
    {
      "test": "test_repo_link_normalizer.py",
      "exit_code": 0,
      "seconds": 0.028,
      "output": "PASS canonical wiki targets; release/anchor preservation; code fences, inline code, images, real files and external links unchanged; idempotent\n"
    },
    {
      "test": "test_pixon_guide_121.py",
      "exit_code": 0,
      "seconds": 0.034,
      "output": "PASS six spawn definitions; eight weighted stone tables and XP pairs; T0 Radiant exclusion; two illustrations; scope and finite-harvest warnings\n"
    },
    {
      "test": "test_fishing_cage_121.py",
      "exit_code": 0,
      "seconds": 0.025,
      "output": "PASS two recipes;18illustrated catches;four skill gates;15durability and partial-load wear;owner/randomness/runtime limits\n"
    },
    {
      "test": "test_reward_boxes_121.py",
      "exit_code": 0,
      "seconds": 0.034,
      "output": "PASS53entries/five reward tables;56uniqueillustrateditems;sixselectioncases;6panels;consumption,roll/count and level-threshold caveats\n"
    },
    {
      "test": "test_hauling_rods_121.py",
      "exit_code": 0,
      "seconds": 0.029,
      "output": "PASS6pools66entries;4durabilities/equipmentgates;GoldenRod1/157basepool;4trapdispatchmodels;2images;cagelevel31crosscheck\n"
    },
    {
      "test": "test_mending_table_121.py",
      "exit_code": 0,
      "seconds": 0.033,
      "output": "PASS4recipes;8repair cases;Mending97exactfoci;stale-preview/timing/repairability caveats;2source illustrations\n"
    },
    {
      "test": "test_inventory_guide_links.cjs",
      "exit_code": 0,
      "seconds": 0.155,
      "output": "PASS 569 exact release/item how-to links across 528 cards; 42 published routes; under 12KB inline index; one initial fetch; no modern-guide leakage onto older items\n"
    },
    {
      "test": "test_recipe_guide_links.cjs",
      "exit_code": 0,
      "seconds": 0.442,
      "output": "PASS 6837 cards; 947 covered recipe cards; all targets published; under 9KB inline index; type/output deduplication; no modern instructions on historical imbuing\n"
    },
    {
      "test": "test_fluid_surface_studies.py",
      "exit_code": 0,
      "seconds": 0.116,
      "output": "PASS24fluidrecords/27images;releaseexactlinks;15conditionalintegrations;nonempty256pxstudies;alphabounds;125otherledgerrecordsunchanged;explicitgeometrylimits\n"
    },
    {
      "test": "test_inventory_permalinks.cjs",
      "exit_code": 0,
      "seconds": 0.192,
      "output": "PASS inventory filter URL round-trips, exact-ID precedence, reset, compatible outcomes, unsupported release refusal/recovery, bounded inputs, restricted history fallback, no extra fetches, no stale-response URL overwrite\n"
    },
    {
      "test": "test_rune_production_121.py",
      "exit_code": 0,
      "seconds": 0.036,
      "output": "PASS 2 recipes;14 posts;22 conditional entries;7 batch/6 equipment cases;20 illustrated models;acquisition and runtime limits;2 image hashes\n"
    },
    {
      "test": "test_ashfern_cooking_121.py",
      "exit_code": 0,
      "seconds": 0.03,
      "output": "PASS25explicit routes/6outputs;20fish;32model images;Hydrone excluded;Parapiranha exception;dynamic output/recipe scope and source limits\n"
    },
    {
      "test": "test_tea_sink_121.py",
      "exit_code": 0,
      "seconds": 0.037,
      "output": "PASS sink/cup recipes;8selection cases;14model references;melon-output/Creative caveats;2image hashes;probability and inventory guidance\n"
    },
    {
      "test": "test_recipe_permalinks.cjs",
      "exit_code": 0,
      "seconds": 0.401,
      "output": "PASS recipe search/type/release URL round-trip;reset;compatible type preservation;unsupported release zero-fetch refusal/recovery;invalid type cleared;bounded query;restricted history fallback;cached requests;stale response cannot change URL\n"
    },
    {
      "test": "test_infused_press_121.py",
      "exit_code": 0,
      "seconds": 0.031,
      "output": "PASS2custom recipes;8quantity cases;low-tier conservation;positive overflow beyond codec bound;2diagrams;station acquisition and piston/runtime limitations\n"
    },
    {
      "test": "test_upgrade_kits_121.py",
      "exit_code": 0,
      "seconds": 0.055,
      "output": "PASS36upgrade routes;18ingredients;89source-model references;6gallery hashes;recipe-ID links;slot order,acquisition and component/event boundaries\n"
    },
    {
      "test": "test_trophies_121.py",
      "exit_code": 0,
      "seconds": 0.054,
      "output": "PASS8loot pools;5elite substitutions;8independent recipe cases;3pedestals+8portraits;originality,first-data and acquisition limits;2image hashes\n"
    },
    {
      "test": "test_trophy_card_links.cjs",
      "exit_code": 0,
      "seconds": 0.136,
      "output": "PASS8modern boss trophy links;all83cards checked;no older-release leakage;one startup fetch;existing card rendering intact\n"
    },
    {
      "test": "test_publication_snapshot.py",
      "exit_code": 0,
      "seconds": 0.165,
      "output": "PASS one explicit refresh serves repeated offline audits;no read fetch;cooldown blocks requests before reset;403 cooldown persisted;bad/truncated/wrong-repository trees rejected\n"
    },
    {
      "test": "test_creature_essence.py",
      "exit_code": 0,
      "seconds": 0.061,
      "output": "PASS three release-exact separate-layer references; matching sprite hashes; unresolved runtime status retained; stored-entity method version distinction\n"
    },
    {
      "test": "test_inventory_data_revisions.py",
      "exit_code": 0,
      "seconds": 0.04,
      "output": "PASS release-specific content hashes invalidate changed JSON only; single fetch path and in-page release cache retained\n"
    },
    {
      "test": "test_explorer_data_revisions.py",
      "exit_code": 0,
      "seconds": 0.055,
      "output": "PASS five explorers use exact published-data hashes; 31 independently versioned resources; existing fetch counts retained; no manifest request or runtime hashing\n"
    },
    {
      "test": "test_king_bambambam_121.py",
      "exit_code": 0,
      "seconds": 0.036,
      "output": "PASS normal-only King guide, 9 released class records, 7 gold branches, exact-release link, portrait provenance and tutorial hash\n"
    },
    {
      "test": "test_nethengeic_wither_121.py",
      "exit_code": 0,
      "seconds": 0.035,
      "output": "PASS normal-only Wither guide; 3 released classes; aura priority and conditional half-health cases; damage tag IDs; portrait provenance; exact-release link\n"
    },
    {
      "test": "test_tyrosaur_121.py",
      "exit_code": 0,
      "seconds": 0.036,
      "output": "PASS normal-only Tyrosaur guide; five released classes; nine armour cases; twelve roar cases; no false 17-block immunity; exact-release link and portrait provenance\n"
    },
    {
      "test": "test_boss_arena_locations.cjs",
      "exit_code": 0,
      "seconds": 0.124,
      "output": "PASS ten arena-route results; distinct natural-spawn fields; no wounded/older-release leakage; no extra fetch on filtering or sorting\n"
    },
    {
      "test": "test_bestiary_filter_links.cjs",
      "exit_code": 0,
      "seconds": 0.215,
      "output": "PASS bestiary dimension/biome/family/sort URLs, ten-boss arena roundtrip, reset, exact-ID precedence, unsupported-release refusal and recovery, bounded search, restricted-history fallback and stale-response protection\n"
    },
    {
      "test": "test_dryad_sprite_121.py",
      "exit_code": 0,
      "seconds": 0.037,
      "output": "PASS five released classes, six exact hoes, Farming 44, five interaction cases, conditional rare reward and exact-release guide/image provenance\n"
    },
    {
      "test": "test_gun_statistics.cjs",
      "exit_code": 0,
      "seconds": 0.195,
      "output": "PASS 172 lazy exact-release stat panels; Minigun defaults, seed-tag limits, ammo links, single build per expansion, malformed-record fallback and no extra fetches\n"
    },
    {
      "test": "test_historical_gun_panels.cjs",
      "exit_code": 0,
      "seconds": 0.221,
      "output": "PASS 156 historical lazy panels, separate modern schema, exact-release evidence links, constructor/getter distinction, two-version guide routing and no extra fetches\n"
    },
    {
      "test": "test_wrapped_gun_statistics.py",
      "exit_code": 0,
      "seconds": 0.113,
      "output": "PASS 94 released wrapper joins, class hashes, family counts, ammunition overrides, shotgun division evidence and complete linked guide\n"
    },
    {
      "test": "test_archery_statistics.py",
      "exit_code": 0,
      "seconds": 0.144,
      "output": "PASS 42 archery joins; 33 bows / 9 crossbows; released class hashes, multiply/truncate/hook ordering and reload-plus-three duration evidence\n"
    },
    {
      "test": "test_archery_statistics.cjs",
      "exit_code": 0,
      "seconds": 0.178,
      "output": "PASS 42 lazy release-specific archery panels, draw/charge warnings, single expansion, malformed-data fallback and no extra fetches\n"
    },
    {
      "test": "test_staff_statistics.py",
      "exit_code": 0,
      "seconds": 0.14,
      "output": "PASS 57 staff joins, 14 populated rune icons, released zero-damage default, payment-call order, exact input counts and complete guide\n"
    },
    {
      "test": "test_staff_statistics.cjs",
      "exit_code": 0,
      "seconds": 0.177,
      "output": "PASS 57 lazy staff panels; 228 quantity plans, exact rune links/icons, invalid quantity/data fallback, historical guard and no extra data fetches\n"
    },
    {
      "test": "test_blaster_statistics.py",
      "exit_code": 0,
      "seconds": 0.136,
      "output": "PASS 56 blaster joins, class/resource hashes, released regeneration arithmetic order, three stock health examples and complete guide\n"
    },
    {
      "test": "test_blaster_statistics.cjs",
      "exit_code": 0,
      "seconds": 0.151,
      "output": "PASS 56 lazy blaster panels, four explicit beam inputs, distinct cost/charge/interval fields, malformed fallback, historical guard and one data fetch\n"
    },
    {
      "test": "test_vulcane_rage_121.py",
      "exit_code": 0,
      "seconds": 0.127,
      "output": "PASS 8 Vulcane joins; 14 class hashes; all-Rage call; seven effect paths; three attack-input examples; bounded dirty-flag and near-zero drain models, not runtime reproduction\n"
    },
    {
      "test": "test_vulcane_statistics.cjs",
      "exit_code": 0,
      "seconds": 0.143,
      "output": "PASS 8 lazy Vulcane panels; threshold versus full payment warning, exemptions, malformed fallback, historical guard and one data fetch\n"
    },
    {
      "test": "test_throwable_evidence_121.py",
      "exit_code": 0,
      "seconds": 0.147,
      "output": "PASS 8 throwable joins, class hashes, 64-stack inputs, consume-before-create order, bounded spawn outcomes, separate dispenser context and two explosion segments\n"
    },
    {
      "test": "test_throwable_statistics.cjs",
      "exit_code": 0,
      "seconds": 0.151,
      "output": "PASS 8 lazy throwable panels, stack-versus-durability and explosion cautions, malformed fallback, historical guard and one data fetch\n"
    },
    {
      "test": "test_melee_property_evidence_121.py",
      "exit_code": 0,
      "seconds": 0.141,
      "output": "PASS 68 released melee joins and helper hashes; five Maul routing traces, inherited Scythe helper, eight repair tags, explicit overrides and exact 411-registration panel census\n"
    },
    {
      "test": "test_melee_properties.cjs",
      "exit_code": 0,
      "seconds": 0.158,
      "output": "PASS 68 lazy melee panels; eight repair tags, eight routing warnings, negative/positive arguments preserved, malformed fallback, historical guard and one data fetch\n"
    },
    {
      "test": "test_equipment_family_filter.cjs",
      "exit_code": 0,
      "seconds": 0.316,
      "output": "PASS 411 modern weapon references in 13 families; 78 historical gun inputs per older release; exact-ID intersection, URL round trips, unavailable-family refusal, reset, cached requests, stale-response and failure recovery, malformed/prototype-key rejection\n"
    },
    {
      "test": "test_armour_materials_121.py",
      "exit_code": 0,
      "seconds": 0.247,
      "output": "PASS 204 released armor registrations, 55 materials, 48 four-piece sets, 95 method hashes/bytes, 11 universal headpieces, six unbreakable/max-damage overrides, vanilla-formula durability, 16 illustrated source models\n"
    },
    {
      "test": "test_armour_properties.cjs",
      "exit_code": 0,
      "seconds": 0.195,
      "output": "PASS 204 lazy armor panels, six unbreakable overrides, 192 matching-set link groups, malformed fallback, historical guard and no extra fetches\n"
    },
    {
      "test": "test_static_switch_decoder.py",
      "exit_code": 0,
      "seconds": 0.016,
      "output": "PASS bounded tableswitch/lookupswitch, signed keys, padding, truncated payload, sorted keys, instruction-boundary targets and wide rejection\n"
    },
    {
      "test": "test_worn_armour_mesh_121.py",
      "exit_code": 0,
      "seconds": 0.224,
      "output": "PASS official 1.21.1 mesh hashes/instructions, 10 visibility-selected parts, inner/outer UV separation, armor-specific leg deformation, 48 rendered sets and 96 exact texture hashes\n"
    },
    {
      "test": "test_armour_gallery.cjs",
      "exit_code": 0,
      "seconds": 0.189,
      "output": "PASS 48 embedded armor studies, 12-card pagination, exact-set/search URL round trips, safe sorting, lazy images, error fallback, unsupported-release refusal and reset recovery; no data fetch or background scan\nPASS 100 expandable tooltip lines, all48 effect anchors, oxygen search, source mismatch notice and no added fetch\nPASS five bounded source-review notices stay with their exact set cards\nPASS all48 acquisition links and bounded route/visibility notices; no extra data request\n"
    },
    {
      "test": "test_special_armour_121.py",
      "exit_code": 0,
      "seconds": 0.17,
      "output": "PASS 12 exact registered skill/model/layer routes, six standalone armor studies, class/method/geometry/texture/image hashes, 41 fullbright cube flags, balanced 0.5 callback inputs and bounded cosmetic-selection evidence\n"
    },
    {
      "test": "test_special_armour_links.cjs",
      "exit_code": 0,
      "seconds": 0.157,
      "output": "PASS all 12 standalone armor cards link to their model studies with exact skill-helmet anchors; 192 set cards keep their separate gallery and no additional data fetches\n"
    },
    {
      "test": "test_frame_bench_121.py",
      "exit_code": 0,
      "seconds": 0.323,
      "output": "PASS ten released frame choices/client buttons, 19 method hashes/bytes, one-unit output callback evidence, 32 unique recipe links, eight exact full-set ingredient totals and two source-model workflow diagrams\n"
    },
    {
      "test": "test_skill_master_acquisition_121.py",
      "exit_code": 0,
      "seconds": 0.113,
      "output": "PASS ten offers, exact costs/stock, five course records, six tier tables, eight boss-table references, 334-template scope, released hashes and illustrated guide\n"
    },
    {
      "test": "test_armour_effects_121.py",
      "exit_code": 0,
      "seconds": 0.181,
      "output": "PASS 48 sets, 100 exact localized claims, 194 released methods, 24 shared routes, all gallery associations and bounded Alacrity mismatch\nPASS 48 set reviews, 14 exact attribute modifiers and three cross-class effect routes\n"
    },
    {
      "test": "test_armour_route_boundaries_121.py",
      "exit_code": 0,
      "seconds": 0.045,
      "output": "PASS Ghastly branch target, Biogenic negative-air literal, Purity split gates, ranged exclusions, bounded summon gaps, Nightmare clamp and Hydrangic damage input; symbolic checks only\n"
    },
    {
      "test": "test_petal_crafting.py",
      "exit_code": 0,
      "seconds": 0.327,
      "output": "PASS three released interactions, two exact recipes, 6/5/0 loot refs, three template positions, legacy legs ID, modern drop fallback and 11 version-correct icon hashes\n"
    },
    {
      "test": "test_guide_route_encoding.py",
      "exit_code": 0,
      "seconds": 0.2,
      "output": "PASS compact route tuples preserve labels/URLs in both browser indexes and reject foreign destinations, malformed slugs and script terminators\n"
    },
    {
      "test": "test_progress_overview.py",
      "exit_code": 0,
      "seconds": 0.069,
      "output": "PASS current overview counts, exact owner runtime receipt hash, retained historical content and synchronized repository source\n"
    },
    {
      "test": "test_armour_acquisition_121.py",
      "exit_code": 0,
      "seconds": 0.114,
      "output": "204 unique armor records; 63 selected routes; 141 explicit unresolved records; all 44 retained resource hashes verified; modifier registrations and Old Boot/Petal boundaries checked.\n"
    },
    {
      "test": "test_armor_loot_routes_121.py",
      "exit_code": 0,
      "seconds": 0.24,
      "output": "PASS13 released/vanilla method selections,11 exact JSON hashes,2 pit templates; multi-entry full-set versus single-piece rewards and bounded default-loot/structure/Hauling routes.\n"
    },
    {
      "test": "test_armor_version_routes.py",
      "exit_code": 0,
      "seconds": 0.453,
      "output": "PASS204 target identities;124/128/99 historical coverage of modern gaps; all retained resource hashes and exact inventory links;92 upstream classifications,13 unresolved identities,48 illustrated comparisons.\nPASS pinned legacy localization-link proof and all92 current-set instruction segments match retained sources.\n"
    },
    {
      "test": "test_dimension_resource_atlas.py",
      "exit_code": 0,
      "seconds": 0.412,
      "output": "PASS22 code-era declarations,21/7/10 dimension resources,24 comparison IDs,all direct hashes/fields,custom-generator caveats and only evidenced bestiary filter links.\n"
    },
    {
      "test": "test_ancient_cavern_112.py",
      "exit_code": 0,
      "seconds": 0.312,
      "output": "PASS25 released method selections,all source/table/art hashes,four shrine/tribute/spawner routes,one-stack constructor,config getters,signed Holy Sword deltas,600/601 boundaries and source-joined summon creature links.\nPASS four released SpawnerBlock constructor argument bindings match the room field names and tribute creature identities.\n"
    },
    {
      "test": "test_immortallis_112.py",
      "exit_code": 0,
      "seconds": 0.114,
      "output": "Immortallis: 27 released-method hashes/bytes, 4 loot resources, 9 stages, 13 creature references and recovery caveats checked. No game tests run.\n"
    },
    {
      "test": "test_immortallis_combat_112.py",
      "exit_code": 0,
      "seconds": 0.119,
      "output": "PASS26 released combat methods, four base-stat sets, pull/classifier toy branches and random-timing caveats; no Minecraft runtime claims.\n"
    },
    {
      "test": "test_ancient_cavern_combat_112.py",
      "exit_code": 0,
      "seconds": 0.111,
      "output": "PASS35 released methods, eight summon alternatives, potion/timing constants, three forced-resource inputs and empty block-impact callback; no game execution.\n"
    },
    {
      "test": "test_four_guardians_112.py",
      "exit_code": 0,
      "seconds": 0.12,
      "output": "PASS37 released methods,7 loot resources,4 last-color rare tables,6 exact creature links,wire traversal and X/Z gate boundaries,authentic art hashes.\n"
    },
    {
      "test": "test_crystal_extension.py",
      "exit_code": 0,
      "seconds": 0.377,
      "output": "PASS four released class hashes and12 methods,exact resources,2048 partition cases,seven hidden-item tags and15 source-image inputs; no game execution.\n"
    },
    {
      "test": "test_primordial_five_112.py",
      "exit_code": 0,
      "seconds": 0.119,
      "output": "PASS43 released methods,5 phases,8 lamp expressions joined to generated structure offsets,6 loot resources,5 portraits and80/81-update boundary model; no game tests.\n"
    },
    {
      "test": "test_historical_altars_112.py",
      "exit_code": 0,
      "seconds": 0.165,
      "output": "PASS23 concrete classes,102 released methods,19 item keys,shared/override payment distinctions,delayed-path references,art hashes and exact card links; no game execution.\n"
    },
    {
      "test": "test_skeletal_army_112.py",
      "exit_code": 0,
      "seconds": 0.114,
      "output": "PASS20 released methods,39 wave arms,281 constructions,11 illustrated identities,loot resource and wave-zero persistence boundary; no game tests.\n"
    },
    {
      "test": "test_extraction_device_112.py",
      "exit_code": 0,
      "seconds": 0.152,
      "output": "PASS19 released methods,2 bowl bindings,4 resources,23 loot entries,26 image crops and10000 gate-roll comparisons; no game tests.\n"
    },
    {
      "test": "test_anima_training_112.py",
      "exit_code": 0,
      "seconds": 0.112,
      "output": "PASS16 released methods,17 fragment recipe resources,100 float32 XP comparisons and exact historical image provenance; no game tests.\n"
    },
    {
      "test": "test_soul_tablets_112.py",
      "exit_code": 0,
      "seconds": 0.383,
      "output": "PASS89 released methods,17 exact constructor/item/entity/recipe joins,17 image studies and owner read/write model; no game tests.\n"
    },
    {
      "test": "test_foraging_logging_112.py",
      "exit_code": 0,
      "seconds": 0.126,
      "output": "PASS16 AoA methods,6 vanilla context methods,21 illustrated reward entries and100 gate/threshold rows; no game tests.\n"
    },
    {
      "test": "test_augury_retained_112.py",
      "exit_code": 0,
      "seconds": 0.22,
      "output": "PASS16 released methods,10 essence bindings,inactive shrine,200-return helpers,3451-class scan and11 separately labelled1.7 source routes; no game tests.\n"
    },
    {
      "test": "test_hauling_fishing_112.py",
      "exit_code": 0,
      "seconds": 0.129,
      "output": "PASS18 AoA methods,2 vanilla loot-function methods,62 rewards,rod recipe,100box-call rows,Forge reference and68 image crops; no game tests.\n"
    },
    {
      "test": "test_legacy_boxes_crystals_112.py",
      "exit_code": 0,
      "seconds": 0.162,
      "output": "PASS16 released methods,77 reward entries,4 crystal bindings,15-skill order,5 selector models and77 image crops; no game tests.\n"
    },
    {
      "test": "test_skill_crystal_planner.cjs",
      "exit_code": 0,
      "seconds": 0.119,
      "output": "PASS crystal planner: 3940 level/size calculations, released selection examples, invalid inputs, disabled-skills warning and no external requests.\n"
    },
    {
      "test": "test_infusion_harvesting_112.py",
      "exit_code": 0,
      "seconds": 0.407,
      "output": "PASS41 released methods,10 item bindings,8 spawn windows,16 harvest entries,264 health steps,8 renderer factories,64 sprite cells and44 item/recipe crops; no game tests.\n"
    },
    {
      "test": "test_pixon_cards_112.cjs",
      "exit_code": 0,
      "seconds": 0.232,
      "output": "PASS eight exact Pixon card routes, lazy particle references, labeled limits, harvest thresholds, unchanged Shadow fallback and eight versioned skill routes; one roster request per selection.\n"
    },
    {
      "test": "test_infusion_crafting_112.py",
      "exit_code": 0,
      "seconds": 0.166,
      "output": "PASS21 released methods,all386 recipes,135 enchantment recipes across37IDs,3 slot examples and12 source item crops; no game tests.\n"
    },
    {
      "test": "test_infusion_recipe_cards_112.cjs",
      "exit_code": 0,
      "seconds": 0.121,
      "output": "PASS135 historical enchantment outputs and251 transformation gates visible; repeated-slot guidance; modern release unchanged; no new requests\n"
    },
    {
      "test": "test_recipe_exact_links.cjs",
      "exit_code": 0,
      "seconds": 0.754,
      "output": "PASS6837 exact recipe links; SharpnessII excludesIII; readable title; exact/query precedence, input/icon/reset recovery, malformed and missing IDs, unsupported release, restricted history, release cache reuse and separated action links.\n"
    },
    {
      "test": "test_runation_shrines_112.py",
      "exit_code": 0,
      "seconds": 0.808,
      "output": "PASS31 released methods,14posts16runes30bindings,2input recipes,4offsets128stack models and39image crops; no game tests.\n"
    },
    {
      "test": "test_pixon_harvest_panels.cjs",
      "exit_code": 0,
      "seconds": 0.201,
      "output": "PASS8 lazy harvest panels,16 item icons and XP labels, Radiant60/700 distinction, unchanged death associations, one shared loot fetch, reopen cache reuse and failed-load recovery;607 mapping bytes.\n"
    },
    {
      "test": "test_combat_skills_112.py",
      "exit_code": 0,
      "seconds": 0.13,
      "output": "PASS35 released methods,100 level rows,201 Rage cases,4display-level boundaries and2source-model portraits; no game tests.\n"
    },
    {
      "test": "test_hunter_defaults_112.cjs",
      "exit_code": 0,
      "seconds": 0.629,
      "output": "PASS 71 exact Hunter default bindings and illustrated routes; card values, ascending level/descending XP sorting, URL state, modern reset and roster cache reuse.\n"
    },
    {
      "test": "test_expedition_training_112.py",
      "exit_code": 0,
      "seconds": 0.105,
      "output": "PASS18 released methods,20 literal denominator tiers,100 float-level models,8toggle states and5GUI crops; sprint/fall/bonus limits retained, no game execution.\n"
    },
    {
      "test": "test_creation_minions_112.py",
      "exit_code": 0,
      "seconds": 0.107,
      "output": "PASS90 released methods,22exact slab/minion bindings,21slab recipes,forge recipe,spawn-return/payment ordering,Corby loot andarmorXP mismatch;10source-icon crops; no game execution.\n"
    },
    {
      "test": "test_creation_cards_112.cjs",
      "exit_code": 0,
      "seconds": 0.262,
      "output": "PASS22minion card routes, exact slab recipes, separated summon/sacrifice values, Corby exception, unchanged non-minion cards and one cached roster request.\n"
    },
    {
      "test": "test_minion_abilities_112.py",
      "exit_code": 0,
      "seconds": 0.125,
      "output": "PASS106released methods,22class inventories/base stat sets,20combat and2utility modes,4exact potion requests and22card summaries; no game execution.\n"
    },
    {
      "test": "test_minion_ability_cards_112.cjs",
      "exit_code": 0,
      "seconds": 0.255,
      "output": "PASS22exact minion ability cards and guide links; no extra data requests; non-minion fallback and separated direct-link layout.\n"
    },
    {
      "test": "test_skill_availability_112.py",
      "exit_code": 0,
      "seconds": 0.288,
      "output": "PASS3451-class audit boundary,7direct-reference classes/10methods,15versioned skill routes,15sourceGUIcrops andexplicit generic-XP/registration limitations; no game execution.\n"
    },
    {
      "test": "test_realmstone_routes_112.py",
      "exit_code": 0,
      "seconds": 0.143,
      "output": "PASS75released methods,23registration windows/routes/icons,2recipes,3cumulative Gravitator models,24image outputs andexplicit trigger/consumption distinctions; no game execution.\n"
    },
    {
      "test": "test_inventory_navigation_expansion.py",
      "exit_code": 0,
      "seconds": 0.033,
      "output": "PASS399baseline and567previous-publication associations preserved;two portable-artifice routes added;11980inline bytes,7312bytes smaller than equivalent plain lookup; no new fetch route.\n"
    },
    {
      "test": "test_exp_flask_112.py",
      "exit_code": 0,
      "seconds": 0.12,
      "output": "PASS23released methods,63withdrawal and18deposit float32models,2appearance textures,orb-removal ordering andexplicit acquisition/save-safety limits; no game execution.\n"
    },
    {
      "test": "test_starter_learning_path_112.py",
      "exit_code": 0,
      "seconds": 0.028,
      "output": "PASS historical starter: five learning steps, four readiness gates, five next-session goals, five recovery checks and eight valid same-edition guide links; no gameplay execution.\n"
    },
    {
      "test": "test_compressed_item_model_121.py",
      "exit_code": 0,
      "seconds": 0.098,
      "output": "PASS eight released methods, registered client model callback, guarded stored-stack delegation, two source-model crops and honest inventory reference; final runtime rendering not certified.\n"
    },
    {
      "test": "test_gun_inputs_112.py",
      "exit_code": 0,
      "seconds": 0.117,
      "output": "PASS 78 released registration windows, exact identity joins, five BaseGun methods, recoil field routing, four source-model crops and 78 exact item links.\n"
    },
    {
      "test": "test_gun_panels_112.cjs",
      "exit_code": 0,
      "seconds": 0.154,
      "output": "PASS 78 lazy historical panels, version isolation, repeated-open stability, invalid-data fallback, family filter and no additional stat requests.\n"
    },
    {
      "test": "test_gun_firing_112.py",
      "exit_code": 0,
      "seconds": 0.127,
      "output": "PASS40releasedmethods,78ammo-ownerresolutions,201inventorymodelswithseparateunique-slotpaymentoracle,16bulletrecipe,spawn-resultdiscardandconsole-callchecks; no game execution.\n"
    },
    {
      "test": "test_shotgun_inputs_112.py",
      "exit_code": 0,
      "seconds": 0.1,
      "output": "PASS17shotgunconstructorwindows,6basemethods,8subclassmethods,16inheritedammoowners,5Spreadshotrecipe,pre-server-checkammocallandcharged-volleyordering;nogameexecution.\n"
    },
    {
      "test": "test_shotgun_panels_112.cjs",
      "exit_code": 0,
      "seconds": 0.149,
      "output": "PASS 17 lazy historical shotgun panels, version isolation, repeated-open stability, invalid-data fallback, family filter and no additional stat requests.\n"
    },
    {
      "test": "test_sniper_inputs_112.py",
      "exit_code": 0,
      "seconds": 0.119,
      "output": "PASS27sniperconstructorwindows,6basemethods,32scope/ammo/clientrecords,13exactscopegettersymbols/textures,8slugrecipe,andFOVeventvalue;nogameexecution.\n"
    },
    {
      "test": "test_sniper_panels_112.cjs",
      "exit_code": 0,
      "seconds": 0.151,
      "output": "PASS 27 lazy historical sniper panels, version isolation, repeated-open stability, invalid-data fallback, family filter and no additional stat requests.\n"
    },
    {
      "test": "test_cannon_inputs_112.py",
      "exit_code": 0,
      "seconds": 0.138,
      "output": "PASS50cannonconstructorwindows,3basemethods,49ammo-ownerrecords,sixammunitioncategories,12Cannonballrecipeandarmor-factorconstants;no final damage or runtime claim.\n"
    },
    {
      "test": "test_cannon_panels_112.cjs",
      "exit_code": 0,
      "seconds": 0.147,
      "output": "PASS 50 lazy historical cannon panels, version isolation, repeated-open stability, invalid-data fallback, family filter and no additional stat requests.\n"
    },
    {
      "test": "test_bow_inputs_112.py",
      "exit_code": 0,
      "seconds": 0.128,
      "output": "PASS33bowconstructorwindows,8basemethods,15subclass/resource methods,4arrowclassrelationships,671float32drawmodelsand4HollyArrowrecipe;no live timing claim.\n"
    },
    {
      "test": "test_bow_panels_112.cjs",
      "exit_code": 0,
      "seconds": 0.144,
      "output": "PASS 33 lazy historical bow panels, version isolation, repeated-open stability, invalid-data fallback, family filter and no additional stat requests.\n"
    },
    {
      "test": "test_bow_draw_states_112.py",
      "exit_code": 0,
      "seconds": 0.311,
      "output": "PASS33bowstatesheets,132exactmodel/texturehashes,pixel-exactcheckerboardcomposites,tworeleasedpropertymethods,and33balancedgalleryentries;no runtime animation claim.\n"
    },
    {
      "test": "test_bow_draw_panels_112.cjs",
      "exit_code": 0,
      "seconds": 0.106,
      "output": "PASS33opt-inlazyimages,exactlinks,stableaspectratio,errorfallbackonce,repeated-openreuse,pathvalidation,andoneexistingdatarequest.\n"
    },
    {
      "test": "test_ranged_draw_states.py",
      "exit_code": 0,
      "seconds": 1.307,
      "output": "PASS126release-records558statehashes56pixel-exactsheets,28sharedand14differingidentities,version-safejoinsand42galleryentries;no gameplay-parity claim.\n"
    },
    {
      "test": "test_ranged_draw_panels.cjs",
      "exit_code": 0,
      "seconds": 0.251,
      "output": "PASS126opt-instatepanels,versionisolation,33bow/9crossbowfilters,onecachedrequestperrelease,lazyimages,repeat/errorguardsandinvalid-pathrefusal.\n"
    },
    {
      "test": "test_archergun_inputs_112.py",
      "exit_code": 0,
      "seconds": 0.117,
      "output": "PASS9archergunconstructors,3basemethods,20behaviorrecords,ammoowners,trajectoryconstants,effectorder,multiplieromission,blockrecoveryguardsand4HollyArrowrecipe;no runtime certification.\n"
    },
    {
      "test": "test_archergun_panels_112.cjs",
      "exit_code": 0,
      "seconds": 0.236,
      "output": "PASS 9 lazy historical archergun panels, version isolation, repeated-open stability, invalid-data fallback, family filter and no additional stat requests.\n"
    },
    {
      "test": "test_staff_inputs_112.py",
      "exit_code": 0,
      "seconds": 0.383,
      "output": "PASS57staffregistrations,134runecosts,57identity/rune/damagemethods,5base/helperrecords,800costmodels,exactswappedhandmarkers,payment/cooldown/wear/castorderand57portraitlinks;not runtime tests.\n"
    },
    {
      "test": "test_staff_panels_112.cjs",
      "exit_code": 0,
      "seconds": 0.161,
      "output": "PASS57lazystaffpanels134exactrunelinks,zero-getterwarning,versionisolation,repeat-openstability,invaliddatafallbackandnoadditionalrequests.\n"
    },
    {
      "test": "test_staff_preconditions_112.py",
      "exit_code": 0,
      "seconds": 0.142,
      "output": "PASS29customgates41releasedmethods9sharedaimingroutes7hostileboxgates,rayflags,water/ground/effecthelpers,57entryhintsand29portraitlinks;no cast-effect/runtime claim.\n"
    },
    {
      "test": "test_historical_weapon_thumbnails_112.py",
      "exit_code": 0,
      "seconds": 1.519,
      "output": "PASS412pixel-exact190pxsource-atlasportraits,13guidejoins,72pxinlinepresentation,source/outputhashesandfamilycounts;no invented geometry.\n"
    },
    {
      "test": "test_blaster_inputs_112.py",
      "exit_code": 0,
      "seconds": 0.159,
      "output": "PASS56blasterconstructors10basemethods8Sparkmethods1resourceconsumer,4144floatcostcases3618timingcases,overrideisolation,payment/wearorderingand56portraitlinks;no runtime/DPS claim.\n"
    },
    {
      "test": "test_blaster_panels_112.cjs",
      "exit_code": 0,
      "seconds": 0.154,
      "output": "PASS 56 lazy historical blaster panels, version isolation, repeated-open stability, invalid-data fallback, family filter and no additional stat requests.\n"
    },
    {
      "test": "test_vulcane_inputs_112.py",
      "exit_code": 0,
      "seconds": 0.114,
      "output": "PASS8vulcanes4basemethods16effect/revenge-methods,1-in-15trigger,400timer,serverENDguards,success-onlywear/clear,Hunter/invulnerabilitychecksand7effects;no runtime claim.\n"
    },
    {
      "test": "test_vulcane_panels_112.cjs",
      "exit_code": 0,
      "seconds": 0.149,
      "output": "PASS 8 lazy historical vulcane panels, version isolation, repeated-open stability, invalid-data fallback, family filter and no additional stat requests.\n"
    },
    {
      "test": "test_thrown_inputs_112.py",
      "exit_code": 0,
      "seconds": 0.116,
      "output": "PASS7throwableidentities/self-ammo,67releasedmethods,64stack/unenchantablebase,impactrouting,RunicBomb30tickamplifier100shieldpath,Hellfire20targethook,2Grenaderecipesand7portraits;not runtime certification.\n"
    },
    {
      "test": "test_thrown_panels_112.cjs",
      "exit_code": 0,
      "seconds": 0.154,
      "output": "PASS 7 lazy historical throwable panels, version isolation, repeated-open stability, invalid-data fallback, family filter and no additional stat requests.\n"
    },
    {
      "test": "test_melee_inputs_112.py",
      "exit_code": 0,
      "seconds": 0.139,
      "output": "PASS70meleeidentities/materialjoins,3registration/initializerrecords52behaviormethods,speeddefaults,hardcore/reachinputs,parameter-vs-fieldrandomdamagebranches,70portraitlinks;no final damage/DPS claim.\n"
    },
    {
      "test": "test_melee_panels_112.cjs",
      "exit_code": 0,
      "seconds": 0.146,
      "output": "PASS70lazymeleepanels,36/29/5familyrouting,412verifiedhistoricalentries,distinctmaterialdamage/knockbacklabels,versionisolation,repeat-openstabilityandnoadditionalrequests.\n"
    },
    {
      "test": "test_weapon_census_112.py",
      "exit_code": 0,
      "seconds": 0.126,
      "output": "PASS412distinctdirectreleasedweaponregistrations,13familycounts,exactinventoryandportraitcoverage;not addon/runtime registry census or full effect certification.\n"
    },
    {
      "test": "test_weapon_recipe_guides.cjs",
      "exit_code": 0,
      "seconds": 0.141,
      "output": "PASS all 6837 recipe rows, 256 weapon recipe cards, 255 outputs, 13 families; release/path guards, baseline preservation proof, compact lookup and no extra fetch\n"
    },
    {
      "test": "test_weapon_trades_112.py",
      "exit_code": 0,
      "seconds": 0.121,
      "output": "PASS 64 literal trader methods/342 offers, 29 weapon purchases, 25 outputs, 15 vendors, 18 new index routes; quantities, dual costs, upgrade chain, fixed lists, source hashes and selection bounds\n"
    },
    {
      "test": "test_weapon_acquisition_112.py",
      "exit_code": 0,
      "seconds": 0.16,
      "output": "PASS412 acquisition joins,255recipe/128loot/25trader sets,87 exact archived tables and JSON pointers,13 explicitly unresolved records,release isolation\n"
    },
    {
      "test": "test_acquisition_panels_112.cjs",
      "exit_code": 0,
      "seconds": 0.163,
      "output": "PASS412 lazy acquisition panels, exact recipe permalinks,13 non-obtainability cautions,version isolation,reopen stability and no extra fetch\n"
    },
    {
      "test": "test_declogging_112.py",
      "exit_code": 0,
      "seconds": 0.105,
      "output": "PASS5 exact conversion indices,server-hand payment order,no NBT copy,null default,structure placement,6 method hashes and mismatched config guard/bound\n"
    },
    {
      "test": "test_tribute_rewards_112.py",
      "exit_code": 0,
      "seconds": 0.098,
      "output": "PASS9 released event/helper methods,nightfall/reset cases,7 predicate boundaries,signed tribute model,Gardener gate and existing guide targets\n"
    },
    {
      "test": "test_experiment_sequence_112.py",
      "exit_code": 0,
      "seconds": 0.446,
      "output": "PASS21 released methods,8 reserved registrations,validity truth table,Arcworm boundaries,absent Soulbone branch and8pixel-exact portraits\n"
    },
    {
      "test": "test_trade_catalog_112.py",
      "exit_code": 0,
      "seconds": 0.131,
      "output": "PASS363 offers/59vendors,368source-aligned candidates,5banker placeholders excluded,17standaloneimages,275atlas refs,metadatafish distinction,special factories and explicit use limits\n"
    },
    {
      "test": "test_trade_explorer_112.cjs",
      "exit_code": 0,
      "seconds": 0.109,
      "output": "PASS363legacy cards,24-card paging,one-release cache,localized item links,atlas accessibility,59vendors,distinct Lottoman currency and no invented profession XP\n"
    },
    {
      "test": "test_registered_trade_blocks_112.py",
      "exit_code": 0,
      "seconds": 0.245,
      "output": "PASS6 exact registration/model joins,2522 legacy entries,10133 overall candidates,190px atlas regions and bidirectional trade links\n"
    },
    {
      "test": "test_trade_lookup_map.cjs",
      "exit_code": 0,
      "seconds": 0.095,
      "output": "PASS337 trade semantics preserved,46141 fewer raw payload bytes,shared policy retained and O(1) vendor lookups without repeated array scans\n"
    },
    {
      "test": "test_registered_inventory_112.py",
      "exit_code": 0,
      "seconds": 5.057,
      "output": "PASS40 exact declaration/model joins;34new entries;6 preserved-ID crystal repairs;16 crops explicitly deferred;24 released helper/constructor methods\nPASS2466 untouched records and all pixels outside six corrected gallery regions preserved\n"
    },
    {
      "test": "test_crop_study_112.py",
      "exit_code": 0,
      "seconds": 0.541,
      "output": "PASS16itemless crop registrations,128states,36method receipts,14seed+2edible planting links,4/7local seed-attempt boundary and2522legacy records\n"
    },
    {
      "test": "test_crop_panels_112.cjs",
      "exit_code": 0,
      "seconds": 0.216,
      "output": "PASS16lazy crop panels,128state illustration routes,version isolation,reopen stability,malformed data guard and no extra JSON fetch\n"
    },
    {
      "test": "test_seed_routes_112.py",
      "exit_code": 0,
      "seconds": 1.035,
      "output": "PASS16seedroutes:2recipes,13lootentries/11fulltables,3exacttrades,16methods,6castlepositions,16pixel-exactportraits and explicitThornySeedgap\n"
    },
    {
      "test": "test_herald_evidence_112.py",
      "exit_code": 0,
      "seconds": 1.772,
      "output": "PASS22conditional+4common offers,25enum arms,null/default4list,22mapped5lists,source method hashes,fixed flag and72000tick eligibility boundary\nPASS26pixel-exact banner references\nPASSbase and Herald integration reruns preserve current UI exactly\n"
    },
    {
      "test": "test_herald_context_112.cjs",
      "exit_code": 0,
      "seconds": 0.085,
      "output": "PASS26Herald contexts:22five-offer/4four-offer source lists,4common offers,exact URL state,invalid contexts,paging,version isolation and cache\n"
    },
    {
      "test": "test_banker_exchange_112.py",
      "exit_code": 0,
      "seconds": 0.16,
      "output": "PASS5bankers,6conversionlanes,30methods+2GUIbranches,252bounded models/54partial-risk cases,end-exclusive slot47/38 gaps,source diagram and exact Grenade price comparison\n"
    },
    {
      "test": "test_lotto_totem_112.py",
      "exit_code": 0,
      "seconds": 0.157,
      "output": "PASS: 24 bytecode methods, callback mappings, five placements, 13 rewards, 22 sellers, scoped probability and persistence models, 14 verified illustrations\n"
    },
    {
      "test": "test_lotto_links_112.cjs",
      "exit_code": 0,
      "seconds": 0.162,
      "output": "PASS: two exact inventory guide links, one legacy creature link, release isolation and no additional fetches\n"
    },
    {
      "test": "test_healing_fish_112.py",
      "exit_code": 0,
      "seconds": 0.216,
      "output": "PASS: 32 released declarations,16 furnace windows,10 method receipts,336 pre-meal healing cases and16 illustrated cooking pairs\n"
    },
    {
      "test": "test_healing_fish_planner.cjs",
      "exit_code": 0,
      "seconds": 0.269,
      "output": "PASS:113 release-specific foods,357 exact healing cases,26103 saturation cases,release/item rejection,permalink roundtrip,version switching,and no per-input rebuild or data fetch\n"
    },
    {
      "test": "test_furnace_recipes_112.py",
      "exit_code": 0,
      "seconds": 4.503,
      "output": "PASS: all56 smelts,107 registry-literal receipts,1172 unchanged prior recipes/2553 unchanged icons,6 exact ore icons and9 illustrated sheets\n"
    },
    {
      "test": "test_furnace_cards_112.cjs",
      "exit_code": 0,
      "seconds": 0.105,
      "output": "PASS56 furnace cards with112 item pictures, explicit documentation IDs/XP, no invented timing and release isolation\n"
    },
    {
      "test": "test_tea_sink_112.py",
      "exit_code": 0,
      "seconds": 0.586,
      "output": "PASS:27 methods,6 effect requests,64 selection cases,Creative first-branch behavior,2 recipes,plankWood declaration and3 source diagrams\n"
    },
    {
      "test": "test_ore_dictionary_cards_112.cjs",
      "exit_code": 0,
      "seconds": 0.099,
      "output": "PASS 34 Ore Dictionary occurrences, clear symbolic labels, no invented member images, search action and Tea Sink plankWood recipe\n"
    },
    {
      "test": "test_atlas_alpha_compositing.py",
      "exit_code": 0,
      "seconds": 0.13,
      "output": "PASS: transparent RGB is ignored, opaque art is preserved, and the real legacy Iron Ingot crop composites cleanly\n"
    },
    {
      "test": "test_rosidons_escape_112.py",
      "exit_code": 0,
      "seconds": 0.146,
      "output": "PASS: four released methods, vanilla sizing comparison,72 bounded column cases/12 overlap candidates,12 coordinate cases and a verified source diagram\n"
    },
    {
      "test": "test_rosidons_links_112.cjs",
      "exit_code": 0,
      "seconds": 0.185,
      "output": "PASS: three exact inventory guide links, release isolation and no additional fetches\n"
    },
    {
      "test": "test_special_foods_112.py",
      "exit_code": 0,
      "seconds": 0.186,
      "output": "PASS:19 foods,18 identity-mapped potion requests,52 released methods,19 portraits,exact acquisition references and scoped resource/consumption caveats\n"
    },
    {
      "test": "test_special_food_links_112.cjs",
      "exit_code": 0,
      "seconds": 0.164,
      "output": "PASS: nineteen exact inventory guide links, release isolation and no additional fetches\n"
    },
    {
      "test": "test_modern_fish_food_121.py",
      "exit_code": 0,
      "seconds": 0.258,
      "output": "PASS:27 registration/effect lambda joins,3 effect suppliers,11 helper methods,63 existing recipes,21 bounded healing cases and27 portraits\n"
    },
    {
      "test": "test_modern_fish_links_121.cjs",
      "exit_code": 0,
      "seconds": 0.24,
      "output": "PASS63 exact cooking-to-food guide links without changing existing recipe how-to associations\nPASS: twenty-seven exact modern inventory links, release isolation and no additional fetches\n"
    },
    {
      "test": "test_fish_planner_versions.py",
      "exit_code": 0,
      "seconds": 0.168,
      "output": "PASS:113 inline food records,under18KB data,4 vanilla modern saturation methods and exact source/page hashes\n"
    },
    {
      "test": "test_intermediate_fish_food.py",
      "exit_code": 0,
      "seconds": 0.42,
      "output": "PASS:54 food factories,126 cooking resources,6 effect suppliers,source-label receipts and 87 released methods; no game execution\nPASS:54 release-specific image source receipts,2 sheets,and126 recipe destinations exist\n"
    },
    {
      "test": "test_void_utilities_121.py",
      "exit_code": 0,
      "seconds": 0.129,
      "output": "PASS: 34 released methods,4 registrations,4 resources,180 artifact gates,24 conversion cases,8 downward scans and2 source-art diagrams\n"
    },
    {
      "test": "test_void_utility_links_121.cjs",
      "exit_code": 0,
      "seconds": 0.323,
      "output": "PASS: one exact artifact-recipe guide link with no extra fetch\nPASS: four exact utility links, release isolation and no additional fetches\n"
    },
    {
      "test": "test_books_121.py",
      "exit_code": 0,
      "seconds": 0.327,
      "output": "PASS:7 book declarations,53 English entries/190 page definitions,localized resource counts, 38 released callbacks,8 gates,7 fallback locales,and source art\n"
    },
    {
      "test": "test_book_links_121.cjs",
      "exit_code": 0,
      "seconds": 0.185,
      "output": "PASS: four exact book/starter links, release isolation and no additional fetches\n"
    },
    {
      "test": "test_client_settings_121.py",
      "exit_code": 0,
      "seconds": 0.11,
      "output": "PASS:15 exact setting defaults,4 key registrations,4 enum sets,14 released methods,source-key symbols and diagram hash\n"
    },
    {
      "test": "test_historical_client_settings.py",
      "exit_code": 0,
      "seconds": 0.214,
      "output": "PASS:41 scoped older settings,12 key registrations,exact enum changes, 22 released methods,modern evidence hash and comparison diagram\n"
    },
    {
      "test": "test_boss_reward_distribution_121.py",
      "exit_code": 0,
      "seconds": 0.306,
      "output": "PASS:19 released methods,2 config windows,2 vanilla inventory methods,800 scoped transfer cases,32 health cases,84 quotas,and diagram hash\n"
    },
    {
      "test": "test_performance_tradeoffs_121.py",
      "exit_code": 0,
      "seconds": 0.102,
      "output": "PASS:2 exact gameplay switch defaults,5 released consumer methods,26 conditional skill-map cases,9 labeled geometry cases,and diagram hash\nPASS:both true-flag branches bypass the documented work in released instructions\n"
    },
    {
      "test": "test_tutorial_reading_routes.cjs",
      "exit_code": 0,
      "seconds": 0.127,
      "output": "PASS:24 release-correct route links,local persistence,release isolation,current-only clear,malformed/blocked storage,unsupported release refusal,and no repeated route rebuild or fetch\n"
    },
    {
      "test": "test_tutorial_reading_evidence.py",
      "exit_code": 0,
      "seconds": 0.032,
      "output": "PASS:four routes,24 exact release-matched guide references,under6KB inline implementation,filters before checklist,and no extra requests\n"
    },
    {
      "test": "test_workstation_3d.cjs",
      "exit_code": 0,
      "seconds": 0.1,
      "output": "PASS: seven model fallback routes, one fetch, unsupported release refusal, unknown IDs, bounded camera, mesh validation and load recovery\n"
    },
    {
      "test": "test_workstation_geometry.py",
      "exit_code": 0,
      "seconds": 0.421,
      "output": "PASS: seven meshes,240 quads,14 original textures and all archive-resource receipts\n"
    },
    {
      "test": "test_block_model_evidence.py",
      "exit_code": 0,
      "seconds": 0.721,
      "output": "PASS:1026 source-matched block references,17537 quads,33 hash-pinned chunks,all archive/texture/mesh receipts and183 explicit exclusions\n"
    },
    {
      "test": "test_block_model_browser.cjs",
      "exit_code": 0,
      "seconds": 0.132,
      "output": "PASS:1026-reference index,two initial requests,no query fetches,100-choice incremental listing,current selection,tint warnings,three-chunk cache,unsupported release and model refusal\n"
    },
    {
      "test": "test_block_model_links.cjs",
      "exit_code": 0,
      "seconds": 0.172,
      "output": "PASS:1026 exact block-model links and no cross-release substitution\n"
    },
    {
      "test": "test_frontpage_navigation.py",
      "exit_code": 0,
      "seconds": 0.075,
      "output": "PASS:four release routes,current coverage,model discoverability,accurate asset attribution and preserved owner runtime/vision/weapon statements\n"
    },
    {
      "test": "test_crop_state_browser.cjs",
      "exit_code": 0,
      "seconds": 0.196,
      "output": "PASS:179 exact state selections,14 explicit transparent cases,one fetch,fixed plant selection,invalid-state refusal,recovery and source-sheet fallback\n"
    },
    {
      "test": "test_crop_state_evidence.py",
      "exit_code": 0,
      "seconds": 0.272,
      "output": "PASS:18plants/179exact states,14transparent states,1588quads,fixed per-plant bounds,all texture/source/mesh hashes and31 block-only classifications\n"
    },
    {
      "test": "test_crop_state_links.cjs",
      "exit_code": 0,
      "seconds": 0.154,
      "output": "PASS:18 exact plant-state links and no cross-release substitution\n"
    },
    {
      "test": "test_renderer_core.cjs",
      "exit_code": 0,
      "seconds": 0.081,
      "output": "PASS:cached geometry across100 draws,zero repeated decodes,128-entry true LRU,stale-failure isolation and canvas-state restoration\n"
    },
    {
      "test": "test_renderer_core_sync.py",
      "exit_code": 0,
      "seconds": 0.176,
      "output": "PASS:three byte-identical original renderer cores,one canonical source,no extra script fetch and explicit cache/canvas limits\nPASS:portable docs-root option and idempotent synchronization in an isolated folder\nPASS:CRLF source bytes are preserved exactly and repeated sync remains idempotent\n"
    },
    {
      "test": "test_renderer_projection_equivalence.cjs",
      "exit_code": 0,
      "seconds": 3.431,
      "output": "PASS:1212 source-model cases \u00d74 views =4848 identical canvas-command traces; not GPU/pixel/gameplay certification\n"
    },
    {
      "test": "test_viewer_draw_failure.cjs",
      "exit_code": 0,
      "seconds": 0.118,
      "output": "PASS:all three viewers catch injected draw failures,show labeled static references,disable broken controls and provide real reload recovery without refetch loops\n"
    },
    {
      "test": "test_observatory_async.cjs",
      "exit_code": 0,
      "seconds": 0.08,
      "output": "PASS:latest request wins;stale failures isolated;keyboard and pause controls;download cancellation hook;empty archives clear old identity;PNG exports keep captured names and latest request\n"
    },
    {
      "test": "test_observatory_zip.cjs",
      "exit_code": 0,
      "seconds": 1.217,
      "output": "PASS:stored/deflated entries,early cancellation,size/encryption/compression guards,and all130 finite official geometry buffers from20552-entry archive\n"
    },
    {
      "test": "test_observatory_zip_receipts.py",
      "exit_code": 0,
      "seconds": 0.106,
      "output": "PASS:all130 browser-reader geometry receipts match independent Python ZIP reads;official SHA512 and explicit local-preview boundaries retained\nPASS:geometry conversion and drawing algorithms unchanged apart from the readiness gate\n"
    },
    {
      "test": "test_overworld_day_hazards_121.py",
      "exit_code": 0,
      "seconds": 0.121,
      "output": "PASS6 released class selections;4 archive resources;54 predicate cases;11 illustrated loot entries;configuration/runtime boundaries\n"
    },
    {
      "test": "test_overworld_spawn_evidence_121.py",
      "exit_code": 0,
      "seconds": 0.127,
      "output": "PASS18 class and source receipts;all existing row fields unchanged;15day/1day-night/2monster-light profiles;18illustrated guide rows\n"
    },
    {
      "test": "test_overworld_spawn_panels.cjs",
      "exit_code": 0,
      "seconds": 0.195,
      "output": "PASS18 exact spawn panels;2 historical releases and unrelated boss excluded;one roster fetch, no added requests on redisplay\n"
    },
    {
      "test": "test_precasia_habitat_121.py",
      "exit_code": 0,
      "seconds": 0.128,
      "output": "PASS7 class selections;10 biome resources;348 custom-predicate cases with float32 probes;7 credited portraits\n"
    },
    {
      "test": "test_precasia_habitat_panels.cjs",
      "exit_code": 0,
      "seconds": 0.167,
      "output": "PASS7 Precasia panels,custom branch wording,dimension-specific bounds,older-release isolation and no extra requests\n"
    },
    {
      "test": "test_special_pickaxes_121.py",
      "exit_code": 0,
      "seconds": 0.155,
      "output": "PASS14 AoA plus2 bundled helper classes;4 recipes;574 bounded cases;26neighbor offsets;8icons and4 tag-aware recipe patterns\n"
    },
    {
      "test": "test_portable_artifice_121.py",
      "exit_code": 0,
      "seconds": 0.358,
      "output": "PASS5 AoA class selections;2 vanilla helper methods;48 branch cases;3929 data JSON scan;2 enchantment exclusions and credited utility art\n"
    },
    {
      "test": "test_owner_playtest_status.py",
      "exit_code": 0,
      "seconds": 0.038,
      "output": "PASS pinned owner report,current artifact,explicit non-independent runtime scope and verbatim historical foundation preservation\n"
    },
    {
      "test": "test_goofy_chainsaw_121.py",
      "exit_code": 0,
      "seconds": 0.197,
      "output": "PASS: six AoA class selections, two tier assignments, bundled effect helper, vanilla callback, 384 repair-policy cases and seven resource references\n"
    }
  ]
}
