chore: gitignore graphify-out/

This commit is contained in:
Emil
2026-06-21 10:04:37 +03:00
parent 285688bcad
commit 586c25f44c
68 changed files with 1 additions and 21095 deletions
+1
View File
@@ -1,2 +1,3 @@
/target
Cargo.lock
graphify-out/
-1
View File
@@ -1 +0,0 @@
{"0": "Vulkan Core Setup", "1": "Terminal Renderer & Game Loop", "2": "Graphics Vulkan Renderer", "3": "AI Pipe Protocol", "4": "AI Game Session", "5": "CLI Entry & GPU Mode", "6": "AI State Export", "7": "Terminal Input Handler", "8": "Entity System", "9": "Cellular Automaton", "10": "Replay System", "11": "Edge Case Tests", "12": "AI Actions & Grid", "13": "Material Physics Tests", "14": "Player Controller", "15": "Cell & Material Types", "16": "Material Interaction Tests", "17": "Player Control Tests", "18": "AI Agent Roadmap", "19": "Verlet Physics Solver", "20": "Render & Phase Roadmap", "21": "Collision Robustness Tests", "22": "Render Mode & UI Roadmap", "23": "Window Input (winit)", "24": "Determinism Tests", "25": "Ragdoll Death Tests", "26": "Grid Collision Resolver", "27": "Material Registry", "28": "Entity Types & Game Loop", "29": "Adaptive Viewport", "30": "Headless Dump & Combat Plan", "31": "Entity Damage Tests", "32": "Entity Movement Tests", "33": "Lava Physics Tests", "34": "Sand Physics Tests", "35": "Acid Physics Tests", "36": "Water Physics Tests", "37": "Ragdoll Physics Plan", "38": "Integration Tests", "39": "Per-Cell Color Plan", "40": "Game Run & Input", "41": "Slope Stepping", "42": "Renderer Trait", "43": "AI Module Root", "44": "Physics Module Root", "45": "Library Root", "46": "World Module Root"}
-1
View File
@@ -1 +0,0 @@
/home/emil/.local/share/uv/tools/graphifyy/bin/python
-1
View File
@@ -1 +0,0 @@
/home/emil/Desktop/Verbatim
-285
View File
@@ -1,285 +0,0 @@
# Graph Report - . (2026-06-21)
## Corpus Check
- Corpus is ~33,231 words - fits in a single context window. You may not need a graph.
## Summary
- 690 nodes · 1218 edges · 47 communities (44 shown, 3 thin omitted)
- Extraction: 97% EXTRACTED · 3% INFERRED · 0% AMBIGUOUS · INFERRED: 32 edges (avg confidence: 0.86)
- Token cost: 0 input · 0 output
## Community Hubs (Navigation)
- [[_COMMUNITY_Vulkan Core Setup|Vulkan Core Setup]]
- [[_COMMUNITY_Terminal Renderer & Game Loop|Terminal Renderer & Game Loop]]
- [[_COMMUNITY_Graphics Vulkan Renderer|Graphics Vulkan Renderer]]
- [[_COMMUNITY_AI Pipe Protocol|AI Pipe Protocol]]
- [[_COMMUNITY_AI Game Session|AI Game Session]]
- [[_COMMUNITY_CLI Entry & GPU Mode|CLI Entry & GPU Mode]]
- [[_COMMUNITY_AI State Export|AI State Export]]
- [[_COMMUNITY_Terminal Input Handler|Terminal Input Handler]]
- [[_COMMUNITY_Entity System|Entity System]]
- [[_COMMUNITY_Cellular Automaton|Cellular Automaton]]
- [[_COMMUNITY_Replay System|Replay System]]
- [[_COMMUNITY_Edge Case Tests|Edge Case Tests]]
- [[_COMMUNITY_AI Actions & Grid|AI Actions & Grid]]
- [[_COMMUNITY_Material Physics Tests|Material Physics Tests]]
- [[_COMMUNITY_Player Controller|Player Controller]]
- [[_COMMUNITY_Cell & Material Types|Cell & Material Types]]
- [[_COMMUNITY_Material Interaction Tests|Material Interaction Tests]]
- [[_COMMUNITY_Player Control Tests|Player Control Tests]]
- [[_COMMUNITY_AI Agent Roadmap|AI Agent Roadmap]]
- [[_COMMUNITY_Verlet Physics Solver|Verlet Physics Solver]]
- [[_COMMUNITY_Render & Phase Roadmap|Render & Phase Roadmap]]
- [[_COMMUNITY_Collision Robustness Tests|Collision Robustness Tests]]
- [[_COMMUNITY_Render Mode & UI Roadmap|Render Mode & UI Roadmap]]
- [[_COMMUNITY_Window Input (winit)|Window Input (winit)]]
- [[_COMMUNITY_Determinism Tests|Determinism Tests]]
- [[_COMMUNITY_Ragdoll Death Tests|Ragdoll Death Tests]]
- [[_COMMUNITY_Grid Collision Resolver|Grid Collision Resolver]]
- [[_COMMUNITY_Material Registry|Material Registry]]
- [[_COMMUNITY_Entity Types & Game Loop|Entity Types & Game Loop]]
- [[_COMMUNITY_Adaptive Viewport|Adaptive Viewport]]
- [[_COMMUNITY_Headless Dump & Combat Plan|Headless Dump & Combat Plan]]
- [[_COMMUNITY_Entity Damage Tests|Entity Damage Tests]]
- [[_COMMUNITY_Entity Movement Tests|Entity Movement Tests]]
- [[_COMMUNITY_Lava Physics Tests|Lava Physics Tests]]
- [[_COMMUNITY_Sand Physics Tests|Sand Physics Tests]]
- [[_COMMUNITY_Acid Physics Tests|Acid Physics Tests]]
- [[_COMMUNITY_Water Physics Tests|Water Physics Tests]]
- [[_COMMUNITY_Ragdoll Physics Plan|Ragdoll Physics Plan]]
- [[_COMMUNITY_Per-Cell Color Plan|Per-Cell Color Plan]]
- [[_COMMUNITY_Game Run & Input|Game Run & Input]]
- [[_COMMUNITY_Slope Stepping|Slope Stepping]]
- [[_COMMUNITY_Renderer Trait|Renderer Trait]]
## God Nodes (most connected - your core abstractions)
1. `VulkanRenderer` - 37 edges
2. `GraphicsRenderer` - 31 edges
3. `GameSession` - 26 edges
4. `Game` - 24 edges
5. `Entity` - 20 edges
6. `CellularAutomaton` - 19 edges
7. `InputHandler` - 18 edges
8. `Result` - 17 edges
9. `String` - 17 edges
10. `setup()` - 17 edges
## Surprising Connections (you probably didn't know these)
- `pipe render mode` --semantically_similar_to--> `AI pipe protocol (JSON stdin/stdout)` [INFERRED] [semantically similar]
AGENTS.md → PLAN.md
- `Game::fixed_update()` --semantically_similar_to--> `Fixed 60Hz timestep` [INFERRED] [semantically similar]
AGENTS.md → PLAN.md
- `Player` --semantically_similar_to--> `Player entity (headless dump)` [INFERRED] [semantically similar]
AGENTS.md → headless_dump.txt
- `rigid entity type` --semantically_similar_to--> `Rigid entities (AABB + slope stepping)` [INFERRED] [semantically similar]
AGENTS.md → PLAN.md
- `ragdoll entity type` --semantically_similar_to--> `Ragdoll corpses (Verlet)` [INFERRED] [semantically similar]
AGENTS.md → PLAN.md
## Import Cycles
- 1-file cycle: `src/ai/action.rs -> src/ai/action.rs`
- 1-file cycle: `src/world/grid.rs -> src/world/grid.rs`
- 1-file cycle: `src/ai/protocol.rs -> src/ai/protocol.rs`
- 1-file cycle: `src/ai/replay.rs -> src/ai/replay.rs`
- 1-file cycle: `src/ai/scenario.rs -> src/ai/scenario.rs`
- 1-file cycle: `src/ai/session.rs -> src/ai/session.rs`
- 1-file cycle: `src/ai/state.rs -> src/ai/state.rs`
- 1-file cycle: `src/game.rs -> src/game.rs`
- 1-file cycle: `src/entity/player.rs -> src/entity/player.rs`
- 1-file cycle: `src/render/terminal.rs -> src/render/terminal.rs`
- 1-file cycle: `src/input.rs -> src/input.rs`
- 1-file cycle: `src/main.rs -> src/main.rs`
- 1-file cycle: `src/physics/collision.rs -> src/physics/collision.rs`
- 1-file cycle: `src/physics/verlet.rs -> src/physics/verlet.rs`
- 1-file cycle: `src/render/graphics.rs -> src/render/graphics.rs`
- 1-file cycle: `src/render/vulkan.rs -> src/render/vulkan.rs`
- 1-file cycle: `src/render/window_input.rs -> src/render/window_input.rs`
- 1-file cycle: `src/world/cellular.rs -> src/world/cellular.rs`
- 1-file cycle: `src/world/material.rs -> src/world/material.rs`
- 1-file cycle: `tests/collision_robust.rs -> tests/collision_robust.rs`
## Hyperedges (group relationships)
- **Game loop fixed_update pipeline: CA step → rigid update → ragdoll update → damage** — [INFERRED]
- **Three render modes read the same Grid + EntityManager (single source of truth)** — [INFERRED]
- **GpuRenderer trait unifies VulkanRenderer + GraphicsRenderer behind run_gpu_mode<R>() with identical event loops** — [INFERRED]
## Communities (47 total, 3 thin omitted)
### Community 0 - "Vulkan Core Setup"
Cohesion: 0.10
Nodes (61): BufferUsageFlags, c_char, DescriptorPool, DescriptorSet, DescriptorSetLayout, Format, Image, MemoryPropertyFlags (+53 more)
### Community 1 - "Terminal Renderer & Game Loop"
Cohesion: 0.07
Nodes (19): CellularAutomaton, Duration, InputHandler, Player, R, TerminalRenderer, Renderer, Game (+11 more)
### Community 2 - "Graphics Vulkan Renderer"
Cohesion: 0.07
Nodes (31): ColorInstance, GraphicsRenderer, PushConstants, Arc, Buffer, CommandBuffer, CommandPool, Device (+23 more)
### Community 3 - "AI Pipe Protocol"
Cohesion: 0.12
Nodes (31): Command, handle_command(), Response, run_pipe_protocol(), Assertion, AssertionResult, check_assertion(), format_results() (+23 more)
### Community 4 - "AI Game Session"
Cohesion: 0.09
Nodes (13): GameSession, Default, ReplayRecorder, AiAction, CellInfo, EntityInfo, Game, GameState (+5 more)
### Community 5 - "CLI Entry & GPU Mode"
Cohesion: 0.15
Nodes (20): Cli, dump_view(), GpuRenderer, main(), player_info(), Arc, EntityManager, Game (+12 more)
### Community 6 - "AI State Export"
Cohesion: 0.13
Nodes (23): build_game_state(), CellInfo, entity_info(), entity_kind_name(), EntityInfo, GameState, material_from_name(), parse_entity_kind() (+15 more)
### Community 7 - "Terminal Input Handler"
Cohesion: 0.13
Nodes (15): Event, JoinHandle, Receiver, Action, HeldKey, HeldState, InputHandler, MaterialBrush (+7 more)
### Community 8 - "Entity System"
Cohesion: 0.15
Nodes (9): Constraint, Entity, EntityKind, EntityManager, EntityId, Option, Self, SubBody (+1 more)
### Community 9 - "Cellular Automaton"
Cohesion: 0.29
Nodes (4): Grid, MaterialId, Self, CellularAutomaton
### Community 10 - "Replay System"
Cohesion: 0.13
Nodes (11): ReplayEvent, ReplayPlayer, ReplayRecorder, ReplayRecording, ReplayEvent, AiAction, GameSession, Result (+3 more)
### Community 11 - "Edge Case Tests"
Cohesion: 0.16
Nodes (17): center_camera_on_player(), clear_region_removes_all_materials(), entity_at_right_boundary(), entity_at_world_boundary_stays_in_bounds(), fill_rect_creates_correct_material_count(), find_material_locates_existing(), find_material_returns_none_for_absent(), goblin_has_correct_max_health() (+9 more)
### Community 12 - "AI Actions & Grid"
Cohesion: 0.18
Nodes (7): AiAction, Cell, Game, MaterialId, Self, Vec, Grid
### Community 13 - "Material Physics Tests"
Cohesion: 0.22
Nodes (17): bone_is_static(), dirt_is_solid(), fire_dies_over_time(), fire_ignites_flesh(), fire_ignites_grass(), fire_ignites_wood(), grass_is_solid(), lava_initial_temp_is_high() (+9 more)
### Community 14 - "Player Controller"
Cohesion: 0.21
Nodes (6): Player, Entity, EntityId, EntityManager, Option, Self
### Community 15 - "Cell & Material Types"
Cohesion: 0.17
Nodes (4): Self, Cell, MaterialId, rand_u8()
### Community 16 - "Material Interaction Tests"
Cohesion: 0.26
Nodes (14): acid_dissolves_dirt(), acid_dissolves_grass(), acid_does_not_dissolve_empty(), fire_does_not_ignite_stone(), fire_does_not_ignite_water(), fire_spreads_through_wood_line(), lava_and_water_produce_both_steam_and_stone(), lava_cools_to_stone_eventually() (+6 more)
### Community 17 - "Player Control Tests"
Cohesion: 0.26
Nodes (14): continuous_movement_does_not_fall_through_floor(), jump_goes_up_then_falls_back(), jump_while_airborne_does_nothing(), move_left_changes_x_position(), move_left_then_right_cancels(), move_right_changes_x_position(), player_health_stays_full_without_damage(), player_not_on_ground_while_jumping() (+6 more)
### Community 18 - "AI Agent Roadmap"
Cohesion: 0.18
Nodes (14): AiAction, GameSession, pipe render mode, AI pipe protocol (JSON stdin/stdout), Seeded RNG determinism, LLM agent (Ollama/Llama/Qwen), Phase 7: AI Agent Integration, Phase 8: Web Arena & Training Pipeline (+6 more)
### Community 19 - "Verlet Physics Solver"
Cohesion: 0.22
Nodes (5): Constraint, SubBody, VerletSolver, MaterialId, Self
### Community 20 - "Render & Phase Roadmap"
Cohesion: 0.15
Nodes (11): Chunk system (64x64), Cross-platform support (Win/Linux/macOS), Multi-layer world architecture, Phase 2: World & Exploration, Phase 3: RPG Layer, Phase 4: Render Modes, Phase 4b: Graphics layers (lighting/particles/textures), Phase 5: Content & Polish (+3 more)
### Community 21 - "Collision Robustness Tests"
Cohesion: 0.27
Nodes (10): entity_collision_with_dirt_wall(), player_blocked_by_ceiling(), player_blocked_by_left_wall(), player_blocked_by_right_wall(), player_blocked_by_two_walls_both_sides(), player_does_not_stick_to_wall(), player_slides_along_wall(), player_squeezes_through_gap() (+2 more)
### Community 22 - "Render Mode & UI Roadmap"
Cohesion: 0.22
Nodes (11): EntityManager, Grid (250x250) source of truth, ascii render mode, graphics render mode, terminal render mode, ASCII renderer (Vulkan glyph atlas), Graphics renderer (Vulkan colored cells), Phase 1.5: UI Layer (+3 more)
### Community 23 - "Window Input (winit)"
Cohesion: 0.20
Nodes (7): ElementState, HashSet, PhysicalKey, WindowInput, KeyCode, Option, Self
### Community 24 - "Determinism Tests"
Cohesion: 0.22
Nodes (3): determinism_with_spawn_and_damage(), GameSession, setup()
### Community 25 - "Ragdoll Death Tests"
Cohesion: 0.38
Nodes (9): corpse_exists_in_world(), damage_reduces_health_progressively(), death_transitions_rigid_to_ragdoll(), player_death_becomes_corpse(), ragdoll_bodies_stay_near_each_other(), ragdoll_falls_after_death(), GameSession, setup() (+1 more)
### Community 26 - "Grid Collision Resolver"
Cohesion: 0.46
Nodes (6): apply_liquid_drag(), CollisionResult, resolve_grid_collision(), Grid, Self, SubBody
### Community 27 - "Material Registry"
Cohesion: 0.43
Nodes (4): MaterialId, Self, Material, MaterialRegistry
### Community 28 - "Entity Types & Game Loop"
Cohesion: 0.29
Nodes (7): cellular entity type, CellularAutomaton, Game::fixed_update(), rigid entity type, Fixed 60Hz timestep, 14 CA Materials, Rigid entities (AABB + slope stepping)
### Community 29 - "Adaptive Viewport"
Cohesion: 0.33
Nodes (7): check_resize(), GpuRenderer trait, GraphicsRenderer, run_gpu_mode<R>(), VulkanRenderer, WindowInput, Adaptive viewport
### Community 30 - "Headless Dump & Combat Plan"
Cohesion: 0.33
Nodes (6): Player, vector movement convention, Goblin entity (headless dump), Grid ASCII rendering (headless dump), Player entity (headless dump), Phase 1: Combat & Interaction
### Community 31 - "Entity Damage Tests"
Cohesion: 0.52
Nodes (6): entity_blocked_by_stone(), entity_dies_becomes_corpse(), entity_on_fire_takes_damage_over_time(), entity_takes_lava_damage(), GameSession, setup_empty()
### Community 32 - "Entity Movement Tests"
Cohesion: 0.48
Nodes (5): player_blocked_by_stone_wall(), player_can_move_right(), player_survives_fall(), GameSession, setup_empty()
### Community 33 - "Lava Physics Tests"
Cohesion: 0.52
Nodes (6): lava_flows_down(), lava_ignites_grass(), lava_ignites_wood(), lava_plus_water_makes_steam(), GameSession, setup_empty()
### Community 34 - "Sand Physics Tests"
Cohesion: 0.52
Nodes (6): GameSession, sand_displaces_water(), sand_does_not_fall_through_stone(), sand_falls_down(), sand_piles_on_stone(), setup_empty()
### Community 35 - "Acid Physics Tests"
Cohesion: 0.60
Nodes (5): acid_dissolves_wood(), acid_does_not_dissolve_stone(), acid_flows_down(), GameSession, setup_empty()
### Community 36 - "Water Physics Tests"
Cohesion: 0.60
Nodes (5): GameSession, setup_empty(), water_does_not_pass_through_stone_wall(), water_flows_down(), water_spreads_sideways()
### Community 37 - "Ragdoll Physics Plan"
Cohesion: 0.50
Nodes (5): Constraint, ragdoll entity type, SubBody, VerletSolver, Ragdoll corpses (Verlet)
### Community 39 - "Per-Cell Color Plan"
Cohesion: 0.67
Nodes (4): Cell struct, inline cell colors convention, MaterialRegistry, Per-cell color (reality layer)
## Knowledge Gaps
- **106 isolated node(s):** `String`, `CellInfo`, `Vec`, `EntityInfo`, `ScenarioResult` (+101 more)
These have ≤1 connection - possible missing edges or undocumented components.
- **3 thin communities (<3 nodes) omitted from report** — run `graphify query` to explore isolated nodes.
## Suggested Questions
_Questions this graph is uniquely positioned to answer:_
- **Why does `Cell` connect `AI Actions & Grid` to `Cellular Automaton`?**
_High betweenness centrality (0.011) - this node is a cross-community bridge._
- **Why does `GameSession` connect `AI Game Session` to `AI State Export`?**
_High betweenness centrality (0.011) - this node is a cross-community bridge._
- **What connects `String`, `CellInfo`, `Vec` to the rest of the system?**
_108 weakly-connected nodes found - possible documentation gaps or missing edges._
- **Should `Vulkan Core Setup` be split into smaller, more focused modules?**
_Cohesion score 0.09525899912203688 - nodes in this community are weakly interconnected._
- **Should `Terminal Renderer & Game Loop` be split into smaller, more focused modules?**
_Cohesion score 0.06956521739130435 - nodes in this community are weakly interconnected._
- **Should `Graphics Vulkan Renderer` be split into smaller, more focused modules?**
_Cohesion score 0.06543385490753911 - nodes in this community are weakly interconnected._
- **Should `AI Pipe Protocol` be split into smaller, more focused modules?**
_Cohesion score 0.12063492063492064 - nodes in this community are weakly interconnected._
File diff suppressed because one or more lines are too long
@@ -1 +0,0 @@
{"nodes": [], "edges": [], "skipped": "data json (not a config/manifest)"}
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1 +0,0 @@
{"nodes": [], "edges": [], "skipped": "data json (not a config/manifest)"}
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1 +0,0 @@
{"nodes": [], "edges": [], "skipped": "data json (not a config/manifest)"}
@@ -1 +0,0 @@
{"nodes": [{"id": "home_emil_desktop_verbatim_src_entity_mod_rs", "label": "mod.rs", "file_type": "code", "source_file": "src/entity/mod.rs", "source_location": "L1"}], "edges": [{"source": "home_emil_desktop_verbatim_src_entity_mod_rs", "target": "entity", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "src/entity/mod.rs", "source_location": "L4", "weight": 1.0, "context": "import"}, {"source": "home_emil_desktop_verbatim_src_entity_mod_rs", "target": "player", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "src/entity/mod.rs", "source_location": "L5", "weight": 1.0, "context": "import"}], "raw_calls": []}
File diff suppressed because one or more lines are too long
@@ -1 +0,0 @@
{"nodes": [{"id": "home_emil_desktop_verbatim_src_lib_rs", "label": "lib.rs", "file_type": "code", "source_file": "src/lib.rs", "source_location": "L1"}], "edges": [], "raw_calls": []}
@@ -1 +0,0 @@
{"nodes": [{"id": "home_emil_desktop_verbatim_src_physics_mod_rs", "label": "mod.rs", "file_type": "code", "source_file": "src/physics/mod.rs", "source_location": "L1"}], "edges": [], "raw_calls": []}
@@ -1 +0,0 @@
{"nodes": [], "edges": [], "skipped": "data json (not a config/manifest)"}
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1 +0,0 @@
{"nodes": [], "edges": [], "skipped": "data json (not a config/manifest)"}
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1 +0,0 @@
{"nodes": [], "edges": [], "skipped": "data json (not a config/manifest)"}
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1 +0,0 @@
{"nodes": [{"id": "home_emil_desktop_verbatim_src_world_material_rs", "label": "material.rs", "file_type": "code", "source_file": "src/world/material.rs", "source_location": "L1"}, {"id": "world_material_material", "label": "Material", "file_type": "code", "source_file": "src/world/material.rs", "source_location": "L4"}, {"id": "materialid", "label": "MaterialId", "file_type": "code", "source_file": "src/world/material.rs", "source_location": "L5"}, {"id": "world_material_materialregistry", "label": "MaterialRegistry", "file_type": "code", "source_file": "src/world/material.rs", "source_location": "L24"}, {"id": "world_material_materialregistry_new", "label": ".new()", "file_type": "code", "source_file": "src/world/material.rs", "source_location": "L29"}, {"id": "self", "label": "Self", "file_type": "code", "source_file": "src/world/material.rs", "source_location": "L29"}, {"id": "world_material_materialregistry_get", "label": ".get()", "file_type": "code", "source_file": "src/world/material.rs", "source_location": "L260"}, {"id": "world_material_materialregistry_instance", "label": ".instance()", "file_type": "code", "source_file": "src/world/material.rs", "source_location": "L264"}], "edges": [{"source": "home_emil_desktop_verbatim_src_world_material_rs", "target": "materialid", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "src/world/material.rs", "source_location": "L1", "weight": 1.0, "context": "import"}, {"source": "home_emil_desktop_verbatim_src_world_material_rs", "target": "world_material_material", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/world/material.rs", "source_location": "L4", "weight": 1.0}, {"source": "world_material_material", "target": "materialid", "relation": "references", "confidence": "EXTRACTED", "source_file": "src/world/material.rs", "source_location": "L5", "weight": 1.0, "context": "field"}, {"source": "home_emil_desktop_verbatim_src_world_material_rs", "target": "world_material_materialregistry", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/world/material.rs", "source_location": "L24", "weight": 1.0}, {"source": "world_material_materialregistry", "target": "world_material_material", "relation": "references", "confidence": "EXTRACTED", "source_file": "src/world/material.rs", "source_location": "L25", "weight": 1.0, "context": "field"}, {"source": "world_material_materialregistry", "target": "world_material_materialregistry_new", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/world/material.rs", "source_location": "L29", "weight": 1.0}, {"source": "world_material_materialregistry_new", "target": "self", "relation": "references", "confidence": "EXTRACTED", "source_file": "src/world/material.rs", "source_location": "L29", "weight": 1.0, "context": "return_type"}, {"source": "world_material_materialregistry", "target": "world_material_materialregistry_get", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/world/material.rs", "source_location": "L260", "weight": 1.0}, {"source": "world_material_materialregistry_get", "target": "materialid", "relation": "references", "confidence": "EXTRACTED", "source_file": "src/world/material.rs", "source_location": "L260", "weight": 1.0, "context": "parameter_type"}, {"source": "world_material_materialregistry_get", "target": "world_material_material", "relation": "references", "confidence": "EXTRACTED", "source_file": "src/world/material.rs", "source_location": "L260", "weight": 1.0, "context": "return_type"}, {"source": "world_material_materialregistry", "target": "world_material_materialregistry_instance", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/world/material.rs", "source_location": "L264", "weight": 1.0}, {"source": "world_material_materialregistry_instance", "target": "world_material_materialregistry", "relation": "references", "confidence": "EXTRACTED", "source_file": "src/world/material.rs", "source_location": "L264", "weight": 1.0, "context": "return_type"}, {"source": "world_material_materialregistry_instance", "target": "world_material_materialregistry_new", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/world/material.rs", "source_location": "L265", "weight": 1.0}], "raw_calls": [{"caller_nid": "world_material_materialregistry_instance", "callee": "get_or_init", "is_member_call": true, "source_file": "/home/emil/Desktop/Verbatim/src/world/material.rs", "source_location": "L266"}]}
File diff suppressed because one or more lines are too long
@@ -1 +0,0 @@
{"nodes": [], "edges": [], "skipped": "data json (not a config/manifest)"}
@@ -1 +0,0 @@
{"nodes": [], "edges": [], "skipped": "data json (not a config/manifest)"}
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1 +0,0 @@
{"nodes": [], "edges": [], "skipped": "data json (not a config/manifest)"}
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1 +0,0 @@
{"nodes": [{"id": "home_emil_desktop_verbatim_src_world_mod_rs", "label": "mod.rs", "file_type": "code", "source_file": "src/world/mod.rs", "source_location": "L1"}], "edges": [], "raw_calls": []}
File diff suppressed because one or more lines are too long
@@ -1 +0,0 @@
{"nodes": [], "edges": [], "skipped": "data json (not a config/manifest)"}
@@ -1 +0,0 @@
{"nodes": [{"id": "home_emil_desktop_verbatim_src_render_window_input_rs", "label": "window_input.rs", "file_type": "code", "source_file": "src/render/window_input.rs", "source_location": "L1"}, {"id": "render_window_input_windowinput", "label": "WindowInput", "file_type": "code", "source_file": "src/render/window_input.rs", "source_location": "L4"}, {"id": "option", "label": "Option", "file_type": "code", "source_file": "src/render/window_input.rs", "source_location": "L13"}, {"id": "hashset", "label": "HashSet", "file_type": "code", "source_file": "src/render/window_input.rs", "source_location": "L15"}, {"id": "keycode", "label": "KeyCode", "file_type": "code", "source_file": "src/render/window_input.rs", "source_location": "L15"}, {"id": "render_window_input_windowinput_new", "label": ".new()", "file_type": "code", "source_file": "src/render/window_input.rs", "source_location": "L19"}, {"id": "self", "label": "Self", "file_type": "code", "source_file": "src/render/window_input.rs", "source_location": "L19"}, {"id": "render_window_input_windowinput_on_key_event", "label": ".on_key_event()", "file_type": "code", "source_file": "src/render/window_input.rs", "source_location": "L29"}, {"id": "physicalkey", "label": "PhysicalKey", "file_type": "code", "source_file": "src/render/window_input.rs", "source_location": "L29"}, {"id": "elementstate", "label": "ElementState", "file_type": "code", "source_file": "src/render/window_input.rs", "source_location": "L29"}, {"id": "render_window_input_windowinput_update", "label": ".update()", "file_type": "code", "source_file": "src/render/window_input.rs", "source_location": "L45"}], "edges": [{"source": "home_emil_desktop_verbatim_src_render_window_input_rs", "target": "hashset", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "src/render/window_input.rs", "source_location": "L1", "weight": 1.0, "context": "import"}, {"source": "home_emil_desktop_verbatim_src_render_window_input_rs", "target": "keyboard", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "src/render/window_input.rs", "source_location": "L2", "weight": 1.0, "context": "import"}, {"source": "home_emil_desktop_verbatim_src_render_window_input_rs", "target": "render_window_input_windowinput", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/render/window_input.rs", "source_location": "L4", "weight": 1.0}, {"source": "render_window_input_windowinput", "target": "option", "relation": "references", "confidence": "EXTRACTED", "source_file": "src/render/window_input.rs", "source_location": "L13", "weight": 1.0, "context": "field"}, {"source": "render_window_input_windowinput", "target": "hashset", "relation": "references", "confidence": "EXTRACTED", "source_file": "src/render/window_input.rs", "source_location": "L15", "weight": 1.0, "context": "field"}, {"source": "render_window_input_windowinput", "target": "keycode", "relation": "references", "confidence": "EXTRACTED", "source_file": "src/render/window_input.rs", "source_location": "L15", "weight": 1.0, "context": "generic_arg"}, {"source": "render_window_input_windowinput", "target": "render_window_input_windowinput_new", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/render/window_input.rs", "source_location": "L19", "weight": 1.0}, {"source": "render_window_input_windowinput_new", "target": "self", "relation": "references", "confidence": "EXTRACTED", "source_file": "src/render/window_input.rs", "source_location": "L19", "weight": 1.0, "context": "return_type"}, {"source": "render_window_input_windowinput", "target": "render_window_input_windowinput_on_key_event", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/render/window_input.rs", "source_location": "L29", "weight": 1.0}, {"source": "render_window_input_windowinput_on_key_event", "target": "physicalkey", "relation": "references", "confidence": "EXTRACTED", "source_file": "src/render/window_input.rs", "source_location": "L29", "weight": 1.0, "context": "parameter_type"}, {"source": "render_window_input_windowinput_on_key_event", "target": "elementstate", "relation": "references", "confidence": "EXTRACTED", "source_file": "src/render/window_input.rs", "source_location": "L29", "weight": 1.0, "context": "parameter_type"}, {"source": "render_window_input_windowinput", "target": "render_window_input_windowinput_update", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/render/window_input.rs", "source_location": "L45", "weight": 1.0}], "raw_calls": []}
File diff suppressed because one or more lines are too long
@@ -1 +0,0 @@
{"nodes": [], "edges": [], "skipped": "data json (not a config/manifest)"}
File diff suppressed because one or more lines are too long
@@ -1 +0,0 @@
{"nodes": [], "edges": [], "skipped": "data json (not a config/manifest)"}
@@ -1 +0,0 @@
{"nodes": [], "edges": [], "skipped": "data json (not a config/manifest)"}
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1 +0,0 @@
{"nodes": [{"id": "home_emil_desktop_verbatim_src_render_mod_rs", "label": "mod.rs", "file_type": "code", "source_file": "src/render/mod.rs", "source_location": "L1"}, {"id": "render_mod_renderer", "label": "Renderer", "file_type": "code", "source_file": "src/render/mod.rs", "source_location": "L9"}], "edges": [{"source": "home_emil_desktop_verbatim_src_render_mod_rs", "target": "entitymanager", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "src/render/mod.rs", "source_location": "L6", "weight": 1.0, "context": "import"}, {"source": "home_emil_desktop_verbatim_src_render_mod_rs", "target": "grid", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "src/render/mod.rs", "source_location": "L7", "weight": 1.0, "context": "import"}, {"source": "home_emil_desktop_verbatim_src_render_mod_rs", "target": "render_mod_renderer", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/render/mod.rs", "source_location": "L9", "weight": 1.0}], "raw_calls": []}
File diff suppressed because one or more lines are too long
@@ -1 +0,0 @@
{"nodes": [{"id": "home_emil_desktop_verbatim_src_ai_mod_rs", "label": "mod.rs", "file_type": "code", "source_file": "src/ai/mod.rs", "source_location": "L1"}], "edges": [{"source": "home_emil_desktop_verbatim_src_ai_mod_rs", "target": "state", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "src/ai/mod.rs", "source_location": "L8", "weight": 1.0, "context": "import"}, {"source": "home_emil_desktop_verbatim_src_ai_mod_rs", "target": "aiaction", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "src/ai/mod.rs", "source_location": "L9", "weight": 1.0, "context": "import"}, {"source": "home_emil_desktop_verbatim_src_ai_mod_rs", "target": "gamesession", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "src/ai/mod.rs", "source_location": "L10", "weight": 1.0, "context": "import"}, {"source": "home_emil_desktop_verbatim_src_ai_mod_rs", "target": "replay", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "src/ai/mod.rs", "source_location": "L11", "weight": 1.0, "context": "import"}, {"source": "home_emil_desktop_verbatim_src_ai_mod_rs", "target": "scenario", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "src/ai/mod.rs", "source_location": "L12", "weight": 1.0, "context": "import"}, {"source": "home_emil_desktop_verbatim_src_ai_mod_rs", "target": "run_pipe_protocol", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "src/ai/mod.rs", "source_location": "L13", "weight": 1.0, "context": "import"}], "raw_calls": []}
@@ -1 +0,0 @@
{"nodes": [], "edges": [], "skipped": "data json (not a config/manifest)"}
@@ -1 +0,0 @@
{"nodes": [{"id": "headless_dump_headless_dump", "label": "headless_dump.txt", "file_type": "document", "source_file": "headless_dump.txt", "source_location": null, "source_url": null, "captured_at": null, "author": null, "contributor": null}, {"id": "headless_dump_player", "label": "Player entity (headless dump)", "file_type": "concept", "source_file": "headless_dump.txt", "source_location": "line 33", "source_url": null, "captured_at": null, "author": null, "contributor": null}, {"id": "headless_dump_goblin", "label": "Goblin entity (headless dump)", "file_type": "concept", "source_file": "headless_dump.txt", "source_location": "line 184", "source_url": null, "captured_at": null, "author": null, "contributor": null}, {"id": "headless_dump_grid_render", "label": "Grid ASCII rendering (headless dump)", "file_type": "concept", "source_file": "headless_dump.txt", "source_location": "line 7", "source_url": null, "captured_at": null, "author": null, "contributor": null}], "edges": [{"source": "headless_dump_headless_dump", "target": "headless_dump_player", "relation": "references", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "headless_dump.txt", "source_location": "line 33", "weight": 1.0}, {"source": "headless_dump_headless_dump", "target": "headless_dump_goblin", "relation": "references", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "headless_dump.txt", "source_location": "line 184", "weight": 1.0}, {"source": "headless_dump_headless_dump", "target": "headless_dump_grid_render", "relation": "references", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "headless_dump.txt", "source_location": "line 7", "weight": 1.0}, {"source": "headless_dump_player", "target": "headless_dump_goblin", "relation": "conceptually_related_to", "confidence": "INFERRED", "confidence_score": 0.85, "source_file": "headless_dump.txt", "source_location": "line 184", "weight": 1.0}, {"source": "headless_dump_grid_render", "target": "agents_render_terminal", "relation": "conceptually_related_to", "confidence": "INFERRED", "confidence_score": 0.85, "source_file": "headless_dump.txt", "source_location": "line 7", "weight": 1.0}, {"source": "headless_dump_goblin", "target": "plan_phase1_combat", "relation": "conceptually_related_to", "confidence": "INFERRED", "confidence_score": 0.75, "source_file": "headless_dump.txt", "source_location": "line 184", "weight": 1.0}], "hyperedges": []}
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
-12
View File
@@ -1,12 +0,0 @@
{
"runs": [
{
"date": "2026-06-21T06:52:56.684475+00:00",
"input_tokens": 0,
"output_tokens": 0,
"files": 58
}
],
"total_input_tokens": 0,
"total_output_tokens": 0
}
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large Load Diff
-292
View File
@@ -1,292 +0,0 @@
{
"/home/emil/Desktop/Verbatim/scenarios/acid_dissolves_wood.json": {
"mtime": 1781970764.6442819,
"ast_hash": "8d56cc1848be6548decbe1e329491b4e",
"semantic_hash": "8d56cc1848be6548decbe1e329491b4e"
},
"/home/emil/Desktop/Verbatim/scenarios/acid_eats_through_wall.json": {
"mtime": 1781984503.8460147,
"ast_hash": "2beb1ff35d7487a83fab52c75904d73e",
"semantic_hash": "2beb1ff35d7487a83fab52c75904d73e"
},
"/home/emil/Desktop/Verbatim/scenarios/entity_burns_in_lava.json": {
"mtime": 1781970726.5528774,
"ast_hash": "75f62c9cf20a5c144f6f389d7b1d5f5a",
"semantic_hash": "75f62c9cf20a5c144f6f389d7b1d5f5a"
},
"/home/emil/Desktop/Verbatim/scenarios/entity_survives_fall.json": {
"mtime": 1781983490.8671792,
"ast_hash": "4cc7a6f511896c0c5a1ab614d899fa2d",
"semantic_hash": "4cc7a6f511896c0c5a1ab614d899fa2d"
},
"/home/emil/Desktop/Verbatim/scenarios/fire_chain_wood.json": {
"mtime": 1781983468.9059443,
"ast_hash": "14b91384dff483d49dddc9d99b5041a4",
"semantic_hash": "14b91384dff483d49dddc9d99b5041a4"
},
"/home/emil/Desktop/Verbatim/scenarios/fire_spreads_through_grass.json": {
"mtime": 1781970725.561867,
"ast_hash": "a6f1b65d9a660266fd81ab4c0570fa15",
"semantic_hash": "a6f1b65d9a660266fd81ab4c0570fa15"
},
"/home/emil/Desktop/Verbatim/scenarios/lava_ignites_wood.json": {
"mtime": 1781970722.357833,
"ast_hash": "3c3975c955f54dc092000d2b8cbab980",
"semantic_hash": "3c3975c955f54dc092000d2b8cbab980"
},
"/home/emil/Desktop/Verbatim/scenarios/lava_plus_water_makes_steam.json": {
"mtime": 1781984425.8851807,
"ast_hash": "9deb9ec56c2d0f581874aa9d51be1438",
"semantic_hash": "9deb9ec56c2d0f581874aa9d51be1438"
},
"/home/emil/Desktop/Verbatim/scenarios/lava_pool_interaction.json": {
"mtime": 1781984476.6377237,
"ast_hash": "cab0da83d6903a07ae1054e710f9d108",
"semantic_hash": "cab0da83d6903a07ae1054e710f9d108"
},
"/home/emil/Desktop/Verbatim/scenarios/player_falls_and_lands.json": {
"mtime": 1781970725.561867,
"ast_hash": "c4264a79dea6301828ba05a892ea513e",
"semantic_hash": "c4264a79dea6301828ba05a892ea513e"
},
"/home/emil/Desktop/Verbatim/scenarios/sand_buries_wood.json": {
"mtime": 1781983484.682113,
"ast_hash": "1220b84d088ec7a35777416ffcb7ad16",
"semantic_hash": "1220b84d088ec7a35777416ffcb7ad16"
},
"/home/emil/Desktop/Verbatim/scenarios/sand_falls_down.json": {
"mtime": 1781970712.2597258,
"ast_hash": "30baf2c5ef87bc287a16e99eb6bad98f",
"semantic_hash": "30baf2c5ef87bc287a16e99eb6bad98f"
},
"/home/emil/Desktop/Verbatim/scenarios/steam_condenses.json": {
"mtime": 1781983498.8702648,
"ast_hash": "e59d6d0f5c9688bc0fcf88b63882d7f0",
"semantic_hash": "e59d6d0f5c9688bc0fcf88b63882d7f0"
},
"/home/emil/Desktop/Verbatim/scenarios/water_flows_sideways.json": {
"mtime": 1781970716.227768,
"ast_hash": "2aed38e5196f3331f69f7b2c8272fe9d",
"semantic_hash": "2aed38e5196f3331f69f7b2c8272fe9d"
},
"/home/emil/Desktop/Verbatim/src/ai/action.rs": {
"mtime": 1781982011.0213413,
"ast_hash": "c514af97d56e023db3e14776cebd742b",
"semantic_hash": "c514af97d56e023db3e14776cebd742b"
},
"/home/emil/Desktop/Verbatim/src/ai/mod.rs": {
"mtime": 1781970069.3378994,
"ast_hash": "37cfd173334195bb77ce77032e734475",
"semantic_hash": "37cfd173334195bb77ce77032e734475"
},
"/home/emil/Desktop/Verbatim/src/ai/protocol.rs": {
"mtime": 1781982011.0213413,
"ast_hash": "35c87a0bc8eea05d7973c0646723f26e",
"semantic_hash": "35c87a0bc8eea05d7973c0646723f26e"
},
"/home/emil/Desktop/Verbatim/src/ai/replay.rs": {
"mtime": 1781994698.517593,
"ast_hash": "bb610684494750685093b6745cbd3c95",
"semantic_hash": "bb610684494750685093b6745cbd3c95"
},
"/home/emil/Desktop/Verbatim/src/ai/scenario.rs": {
"mtime": 1781982011.0213413,
"ast_hash": "1ed4faf1ab6157642642e77372821df2",
"semantic_hash": "1ed4faf1ab6157642642e77372821df2"
},
"/home/emil/Desktop/Verbatim/src/ai/session.rs": {
"mtime": 1781994682.1954203,
"ast_hash": "299982f384ea4ee845e16462aa5c55ce",
"semantic_hash": "299982f384ea4ee845e16462aa5c55ce"
},
"/home/emil/Desktop/Verbatim/src/ai/state.rs": {
"mtime": 1781994883.4095483,
"ast_hash": "5b25a5fffc6be4182745780e04e40614",
"semantic_hash": "5b25a5fffc6be4182745780e04e40614"
},
"/home/emil/Desktop/Verbatim/src/entity/entity.rs": {
"mtime": 1781994535.1578653,
"ast_hash": "dc597c2796cd69c6703d50be701ce9f0",
"semantic_hash": "dc597c2796cd69c6703d50be701ce9f0"
},
"/home/emil/Desktop/Verbatim/src/entity/mod.rs": {
"mtime": 1781994733.5389633,
"ast_hash": "d720a8686f72b3f739a71acb1db16f18",
"semantic_hash": "d720a8686f72b3f739a71acb1db16f18"
},
"/home/emil/Desktop/Verbatim/src/entity/player.rs": {
"mtime": 1781994571.4262488,
"ast_hash": "ddfd3ca0846c649df864ae44ff1dc64c",
"semantic_hash": "ddfd3ca0846c649df864ae44ff1dc64c"
},
"/home/emil/Desktop/Verbatim/src/game.rs": {
"mtime": 1781994816.6048417,
"ast_hash": "7148e19d75808d22d6581639a8d5c311",
"semantic_hash": "7148e19d75808d22d6581639a8d5c311"
},
"/home/emil/Desktop/Verbatim/src/input.rs": {
"mtime": 1781994775.8534107,
"ast_hash": "70ec1ff16bf13b3649f27bea9a3891c8",
"semantic_hash": "70ec1ff16bf13b3649f27bea9a3891c8"
},
"/home/emil/Desktop/Verbatim/src/lib.rs": {
"mtime": 1781970270.862039,
"ast_hash": "abe33261862db85f4f4007a98efe1720",
"semantic_hash": "abe33261862db85f4f4007a98efe1720"
},
"/home/emil/Desktop/Verbatim/src/main.rs": {
"mtime": 1781994426.1417122,
"ast_hash": "f8186418f5cfccdc11af1976c10d994f",
"semantic_hash": "f8186418f5cfccdc11af1976c10d994f"
},
"/home/emil/Desktop/Verbatim/src/physics/collision.rs": {
"mtime": 1781969161.8692644,
"ast_hash": "bb0015e3335e47d8b25f3fa0a25a9afa",
"semantic_hash": "bb0015e3335e47d8b25f3fa0a25a9afa"
},
"/home/emil/Desktop/Verbatim/src/physics/mod.rs": {
"mtime": 1781994728.4279091,
"ast_hash": "b6cfc7b3d47ddf5dfe4b55385b1aeb0e",
"semantic_hash": "b6cfc7b3d47ddf5dfe4b55385b1aeb0e"
},
"/home/emil/Desktop/Verbatim/src/physics/verlet.rs": {
"mtime": 1781994612.3436816,
"ast_hash": "cdb55409206655f6826201b3a25d859f",
"semantic_hash": "cdb55409206655f6826201b3a25d859f"
},
"/home/emil/Desktop/Verbatim/src/render/graphics.rs": {
"mtime": 1781994837.8480663,
"ast_hash": "c0f8cc8af597d07af099e307622b4f2b",
"semantic_hash": "c0f8cc8af597d07af099e307622b4f2b"
},
"/home/emil/Desktop/Verbatim/src/render/mod.rs": {
"mtime": 1781992655.9960363,
"ast_hash": "1390b4f260548f51898abeaefa44c0d7",
"semantic_hash": "1390b4f260548f51898abeaefa44c0d7"
},
"/home/emil/Desktop/Verbatim/src/render/terminal.rs": {
"mtime": 1781994877.423485,
"ast_hash": "e9eb6b706e04619794e5567b7ae71425",
"semantic_hash": "e9eb6b706e04619794e5567b7ae71425"
},
"/home/emil/Desktop/Verbatim/src/render/vulkan.rs": {
"mtime": 1781994804.0007086,
"ast_hash": "d94730a5b91d78bb5271b7d18123fb5f",
"semantic_hash": "d94730a5b91d78bb5271b7d18123fb5f"
},
"/home/emil/Desktop/Verbatim/src/render/window_input.rs": {
"mtime": 1781994633.7179077,
"ast_hash": "e8d2a0128959ce134a3e440e7fdef8cf",
"semantic_hash": "e8d2a0128959ce134a3e440e7fdef8cf"
},
"/home/emil/Desktop/Verbatim/src/world/cell.rs": {
"mtime": 1781994439.0328486,
"ast_hash": "65f721a9878492ed06b059d605630c88",
"semantic_hash": "65f721a9878492ed06b059d605630c88"
},
"/home/emil/Desktop/Verbatim/src/world/cellular.rs": {
"mtime": 1781994620.518768,
"ast_hash": "4299c4f6dffd685c4cff62d6da00962f",
"semantic_hash": "4299c4f6dffd685c4cff62d6da00962f"
},
"/home/emil/Desktop/Verbatim/src/world/grid.rs": {
"mtime": 1781994901.0097344,
"ast_hash": "7e28468cb7d0e44dd95c663c45b523b3",
"semantic_hash": "7e28468cb7d0e44dd95c663c45b523b3"
},
"/home/emil/Desktop/Verbatim/src/world/material.rs": {
"mtime": 1781994717.9467983,
"ast_hash": "7f70daf6658c7240dc576ca875dbdad0",
"semantic_hash": "7f70daf6658c7240dc576ca875dbdad0"
},
"/home/emil/Desktop/Verbatim/src/world/mod.rs": {
"mtime": 1781994722.7638493,
"ast_hash": "72a8eea3bfe44a1ff11a4c69709d414e",
"semantic_hash": "72a8eea3bfe44a1ff11a4c69709d414e"
},
"/home/emil/Desktop/Verbatim/tests/collision_robust.rs": {
"mtime": 1781984005.8506877,
"ast_hash": "aa42931beb7fc8c329f8ac1041a3c6dd",
"semantic_hash": "aa42931beb7fc8c329f8ac1041a3c6dd"
},
"/home/emil/Desktop/Verbatim/tests/determinism.rs": {
"mtime": 1781983582.462159,
"ast_hash": "22197294f9d488ea47da4c528d2748f5",
"semantic_hash": "22197294f9d488ea47da4c528d2748f5"
},
"/home/emil/Desktop/Verbatim/tests/edge_cases.rs": {
"mtime": 1781994760.8232517,
"ast_hash": "161c3c3c243335166e3bbb568b2c74a4",
"semantic_hash": "161c3c3c243335166e3bbb568b2c74a4"
},
"/home/emil/Desktop/Verbatim/tests/entity_damage.rs": {
"mtime": 1781980721.7435043,
"ast_hash": "2deee58dcc1b6b44e8d25a48c0fc5897",
"semantic_hash": "2deee58dcc1b6b44e8d25a48c0fc5897"
},
"/home/emil/Desktop/Verbatim/tests/entity_movement.rs": {
"mtime": 1781981346.368212,
"ast_hash": "049056e445056bf6c4b0e2a70c187fb1",
"semantic_hash": "049056e445056bf6c4b0e2a70c187fb1"
},
"/home/emil/Desktop/Verbatim/tests/integration.rs": {
"mtime": 1781983295.271087,
"ast_hash": "8db0aae4fbd95fb1effd18bb8560f953",
"semantic_hash": "8db0aae4fbd95fb1effd18bb8560f953"
},
"/home/emil/Desktop/Verbatim/tests/physics_acid.rs": {
"mtime": 1781970221.685517,
"ast_hash": "e6034490a9607deeadce03505cadf731",
"semantic_hash": "e6034490a9607deeadce03505cadf731"
},
"/home/emil/Desktop/Verbatim/tests/physics_interactions.rs": {
"mtime": 1781983882.030363,
"ast_hash": "38b73ebc6c62cfefb20506db6dd1072d",
"semantic_hash": "38b73ebc6c62cfefb20506db6dd1072d"
},
"/home/emil/Desktop/Verbatim/tests/physics_lava.rs": {
"mtime": 1781980754.4328554,
"ast_hash": "c31c44a9f63bf8b6f1df51737f1a2de9",
"semantic_hash": "c31c44a9f63bf8b6f1df51737f1a2de9"
},
"/home/emil/Desktop/Verbatim/tests/physics_materials.rs": {
"mtime": 1781983693.2113435,
"ast_hash": "ef6d9d77564f4c02745639ec5807d7db",
"semantic_hash": "ef6d9d77564f4c02745639ec5807d7db"
},
"/home/emil/Desktop/Verbatim/tests/physics_sand.rs": {
"mtime": 1781983289.756028,
"ast_hash": "4b799fe61ebaa00d14c570d9284a37ec",
"semantic_hash": "4b799fe61ebaa00d14c570d9284a37ec"
},
"/home/emil/Desktop/Verbatim/tests/physics_water.rs": {
"mtime": 1781970629.040842,
"ast_hash": "a7141937d2e90d6cc16a6afef026bb1e",
"semantic_hash": "a7141937d2e90d6cc16a6afef026bb1e"
},
"/home/emil/Desktop/Verbatim/tests/player_controls.rs": {
"mtime": 1781984330.918165,
"ast_hash": "da75dda146361ea0e23ebd11f554fdba",
"semantic_hash": "da75dda146361ea0e23ebd11f554fdba"
},
"/home/emil/Desktop/Verbatim/tests/ragdoll_death.rs": {
"mtime": 1781994739.1590228,
"ast_hash": "c4dfb537ecc663fbb2444de321e05385",
"semantic_hash": "c4dfb537ecc663fbb2444de321e05385"
},
"/home/emil/Desktop/Verbatim/AGENTS.md": {
"mtime": 1781995334.9053233,
"ast_hash": "c301fc82f1fa9473c0354454b9b5ad55",
"semantic_hash": "c301fc82f1fa9473c0354454b9b5ad55"
},
"/home/emil/Desktop/Verbatim/PLAN.md": {
"mtime": 1781995156.2924342,
"ast_hash": "cb55659d25cbbb523394cc0c383bff5a",
"semantic_hash": "cb55659d25cbbb523394cc0c383bff5a"
},
"/home/emil/Desktop/Verbatim/headless_dump.txt": {
"mtime": 1781989911.9880815,
"ast_hash": "1ab2647a155a1eed5d05b7292a29b63e",
"semantic_hash": "1ab2647a155a1eed5d05b7292a29b63e"
}
}