docs(reports): single coherent audit report (AUDIT_REPORT.md)

The audit output is a database dump (49 files, 3 redundant formats
each). The user wanted ONE thing they can read. This is the
narrative version: 1 file that opens with the verdict, walks
through findings by severity, gives the Metadata deep dive, and
ends with prioritized restructuring routes.

Original 49 files (10 top-level rollups + 13 aggregates x 3 formats)
preserved as supporting detail. See Section 10 'See Also' for
the full artifact inventory.
This commit is contained in:
ed
2026-06-22 11:58:41 -04:00
parent 628841d083
commit 713c034937
13 changed files with 920 additions and 552 deletions
@@ -10,17 +10,17 @@
\ === producers (0 items) ===
\ === consumers (3 items) ===
"src.ai_client._build_file_diff_text" "src\ai_client.py" 0 "consumer" fn-ref
"src.ai_client._build_file_context_text" "src\ai_client.py" 0 "consumer" fn-ref
"src.ai_client._reread_file_items_result" "src\ai_client.py" 0 "consumer" fn-ref
"src.ai_client._build_file_diff_text" "src\ai_client.py" 0 "consumer" fn-ref
\ === access_pattern ===
"whole_struct" access-pattern
\ === access_pattern_evidence (3 items) ===
"src.ai_client._build_file_diff_text" "whole_struct" 0 "low" ap-evidence
"src.ai_client._build_file_context_text" "whole_struct" 0 "low" ap-evidence
"src.ai_client._reread_file_items_result" "whole_struct" 0 "low" ap-evidence
"src.ai_client._build_file_diff_text" "whole_struct" 0 "low" ap-evidence
\ === frequency ===
"per_turn" frequency
@@ -23,9 +23,9 @@ _(none)_
### `src\ai_client.py` (3 consumers)
- `src.ai_client._build_file_diff_text` (line 0)
- `src.ai_client._build_file_context_text` (line 0)
- `src.ai_client._reread_file_items_result` (line 0)
- `src.ai_client._build_file_diff_text` (line 0)
## Field access matrix
@@ -44,9 +44,9 @@ _(no field accesses detected)_
```
[Q:FileItems entry-point] -> [Q:PCG lookup]
-> [1: _build_file_context_text] [B:check] (branches=3)
-> [2: _reread_file_items_result] [B:is None?] (branches=5) [N:safe]
-> [3: _build_file_diff_text] [B:check] (branches=6)
-> [1: _build_file_diff_text] [B:check] (branches=6)
-> [2: _build_file_context_text] [B:check] (branches=3)
-> [3: _reread_file_items_result] [B:is None?] (branches=5) [N:safe]
-> [T:done]
```
@@ -120,6 +120,6 @@ FileItems: access_pattern=whole_struct, frequency=per_turn, struct_field_count=5
| function | pattern | field_accesses | confidence |
|---|---|---|---|
| `src.ai_client._build_file_diff_text` | `whole_struct` | | low |
| `src.ai_client._build_file_context_text` | `whole_struct` | | low |
| `src.ai_client._reread_file_items_result` | `whole_struct` | | low |
| `src.ai_client._build_file_diff_text` | `whole_struct` | | low |
@@ -3,9 +3,9 @@ Metadata: FileItems
|- memory_dim: curation
|- producers: [0]
|- consumers: [3]
| |- src.ai_client._build_file_diff_text (consumer)
| |- src.ai_client._build_file_context_text (consumer)
| |- src.ai_client._reread_file_items_result (consumer)
| |- src.ai_client._build_file_diff_text (consumer)
|- access_pattern: whole_struct
|- frequency: per_turn
|- result_coverage: 0 producers, 3 consumers
@@ -10,15 +10,15 @@
\ === producers (0 items) ===
\ === consumers (2 items) ===
"src.provider_state.append" "src\provider_state.py" 0 "consumer" fn-ref
"src.provider_state.replace_all" "src\provider_state.py" 0 "consumer" fn-ref
"src.provider_state.append" "src\provider_state.py" 0 "consumer" fn-ref
\ === access_pattern ===
"mixed" access-pattern
\ === access_pattern_evidence (2 items) ===
"src.provider_state.append" "mixed" 2 "high" ap-evidence
"src.provider_state.replace_all" "mixed" 2 "high" ap-evidence
"src.provider_state.append" "mixed" 2 "high" ap-evidence
\ === frequency ===
"per_turn" frequency
@@ -23,15 +23,15 @@ _(none)_
### `src\provider_state.py` (2 consumers)
- `src.provider_state.append` (line 0)
- `src.provider_state.replace_all` (line 0)
- `src.provider_state.append` (line 0)
## Field access matrix
| consumer | lock | messages |
|---|---|---|
| `append` | 1 | 1 |
| `replace_all` | 1 | 1 |
| `append` | 1 | 1 |
## Access pattern
@@ -46,8 +46,8 @@ _(none)_
```
[Q:HistoryMessage entry-point] -> [Q:PCG lookup]
-> [1: append] [B:check] (branches=1)
-> [2: replace_all] [B:check] (branches=1)
-> [1: replace_all] [B:check] (branches=1)
-> [2: append] [B:check] (branches=1)
-> [T:done]
```
@@ -119,5 +119,5 @@ HistoryMessage: access_pattern=mixed, frequency=per_turn, struct_field_count=5,
| function | pattern | field_accesses | confidence |
|---|---|---|---|
| `src.provider_state.append` | `mixed` | `lock`=1, `messages`=1 | high |
| `src.provider_state.replace_all` | `mixed` | `lock`=1, `messages`=1 | high |
| `src.provider_state.append` | `mixed` | `lock`=1, `messages`=1 | high |
@@ -3,8 +3,8 @@ Metadata: HistoryMessage
|- memory_dim: discussion
|- producers: [0]
|- consumers: [2]
| |- src.provider_state.append (consumer)
| |- src.provider_state.replace_all (consumer)
| |- src.provider_state.append (consumer)
|- access_pattern: mixed
|- frequency: per_turn
|- result_coverage: 0 producers, 2 consumers
@@ -8,170 +8,170 @@
"discussion" mem-dim
\ === producers (77 items) ===
"src.project_manager.load_history" "src\project_manager.py" 0 "producer" fn-ref
"src.ai_client.get_gemini_cache_stats" "src\ai_client.py" 0 "producer" fn-ref
"src.app_controller._api_get_mma_status" "src\app_controller.py" 0 "producer" fn-ref
"src.api_hook_client.get_status" "src\api_hook_client.py" 0 "producer" fn-ref
"src.api_hook_client.get_gui_state" "src\api_hook_client.py" 0 "producer" fn-ref
"src.api_hook_client.apply_patch" "src\api_hook_client.py" 0 "producer" fn-ref
"src.api_hook_client.post_project" "src\api_hook_client.py" 0 "producer" fn-ref
"src.app_controller.get_mma_status" "src\app_controller.py" 0 "producer" fn-ref
"src.app_controller.get_session" "src\app_controller.py" 0 "producer" fn-ref
"src.api_hook_client.get_project_switch_status" "src\api_hook_client.py" 0 "producer" fn-ref
"src.api_hook_client.get_project" "src\api_hook_client.py" 0 "producer" fn-ref
"src.app_controller.status" "src\app_controller.py" 0 "producer" fn-ref
"src.app_controller._api_get_api_session" "src\app_controller.py" 0 "producer" fn-ref
"src.api_hook_client.push_event" "src\api_hook_client.py" 0 "producer" fn-ref
"src.api_hook_client.drag" "src\api_hook_client.py" 0 "producer" fn-ref
"src.app_controller.load_config" "src\app_controller.py" 0 "producer" fn-ref
"src.ai_client._send_cli_round_result" "src\ai_client.py" 0 "producer" fn-ref
"src.api_hook_client.select_tab" "src\api_hook_client.py" 0 "producer" fn-ref
"src.ai_client._dashscope_call" "src\ai_client.py" 0 "producer" fn-ref
"src.api_hook_client.trigger_patch" "src\api_hook_client.py" 0 "producer" fn-ref
"src.app_controller._api_get_api_project" "src\app_controller.py" 0 "producer" fn-ref
"src.ai_client._parse_tool_args_result" "src\ai_client.py" 0 "producer" fn-ref
"src.app_controller._api_status" "src\app_controller.py" 0 "producer" fn-ref
"src.api_hook_client.get_mma_workers" "src\api_hook_client.py" 0 "producer" fn-ref
"src.app_controller._api_get_gui_state" "src\app_controller.py" 0 "producer" fn-ref
"src.ai_client.get_token_stats" "src\ai_client.py" 0 "producer" fn-ref
"src.ai_client._add_bleed_derived" "src\ai_client.py" 0 "producer" fn-ref
"src.app_controller.get_diagnostics" "src\app_controller.py" 0 "producer" fn-ref
"src.api_hook_client.get_performance" "src\api_hook_client.py" 0 "producer" fn-ref
"src.app_controller._api_get_session" "src\app_controller.py" 0 "producer" fn-ref
"src.app_controller.wait" "src\app_controller.py" 0 "producer" fn-ref
"src.app_controller.get_performance" "src\app_controller.py" 0 "producer" fn-ref
"src.api_hook_client.wait_for_project_switch" "src\api_hook_client.py" 0 "producer" fn-ref
"src.api_hook_client.reject_patch" "src\api_hook_client.py" 0 "producer" fn-ref
"src.api_hook_client.get_mma_status" "src\api_hook_client.py" 0 "producer" fn-ref
"src.models._load_config_from_disk" "src\models.py" 0 "producer" fn-ref
"src.app_controller.get_session_insights" "src\app_controller.py" 0 "producer" fn-ref
"src.api_hook_client.get_gui_diagnostics" "src\api_hook_client.py" 0 "producer" fn-ref
"src.api_hook_client.get_session" "src\api_hook_client.py" 0 "producer" fn-ref
"src.app_controller._api_get_diagnostics" "src\app_controller.py" 0 "producer" fn-ref
"src.api_hook_client.get_startup_timeline" "src\api_hook_client.py" 0 "producer" fn-ref
"src.api_hook_client.select_list_item" "src\api_hook_client.py" 0 "producer" fn-ref
"src.ai_client._send_cli_round_result" "src\ai_client.py" 0 "producer" fn-ref
"src.api_hook_client.post_session" "src\api_hook_client.py" 0 "producer" fn-ref
"src.ai_client._content_block_to_dict" "src\ai_client.py" 0 "producer" fn-ref
"src.project_manager.default_discussion" "src\project_manager.py" 0 "producer" fn-ref
"src.app_controller.wait" "src\app_controller.py" 0 "producer" fn-ref
"src.app_controller.get_diagnostics" "src\app_controller.py" 0 "producer" fn-ref
"src.models._load_config_from_disk" "src\models.py" 0 "producer" fn-ref
"src.app_controller.get_gui_state" "src\app_controller.py" 0 "producer" fn-ref
"src.app_controller._api_status" "src\app_controller.py" 0 "producer" fn-ref
"src.app_controller._api_token_stats" "src\app_controller.py" 0 "producer" fn-ref
"src.ai_client.ollama_chat" "src\ai_client.py" 0 "producer" fn-ref
"src.api_hook_client.get_context_state" "src\api_hook_client.py" 0 "producer" fn-ref
"src.app_controller._api_generate" "src\app_controller.py" 0 "producer" fn-ref
"src.models.to_dict" "src\models.py" 0 "producer" fn-ref
"src.project_manager.load_project" "src\project_manager.py" 0 "producer" fn-ref
"src.app_controller._offload_entry_payload" "src\app_controller.py" 0 "producer" fn-ref
"src.api_hook_client.get_warmup_status" "src\api_hook_client.py" 0 "producer" fn-ref
"src.app_controller.get_context" "src\app_controller.py" 0 "producer" fn-ref
"src.api_hook_client.get_financial_metrics" "src\api_hook_client.py" 0 "producer" fn-ref
"src.api_hook_client.get_status" "src\api_hook_client.py" 0 "producer" fn-ref
"src.app_controller._api_get_api_session" "src\app_controller.py" 0 "producer" fn-ref
"src.app_controller._api_get_context" "src\app_controller.py" 0 "producer" fn-ref
"src.app_controller.get_api_project" "src\app_controller.py" 0 "producer" fn-ref
"src.app_controller._api_get_performance" "src\app_controller.py" 0 "producer" fn-ref
"src.app_controller.get_api_session" "src\app_controller.py" 0 "producer" fn-ref
"src.api_hook_client.right_click" "src\api_hook_client.py" 0 "producer" fn-ref
"src.app_controller.status" "src\app_controller.py" 0 "producer" fn-ref
"src.ai_client._add_bleed_derived" "src\ai_client.py" 0 "producer" fn-ref
"src.api_hook_client.get_context_state" "src\api_hook_client.py" 0 "producer" fn-ref
"src.api_hook_client.get_gui_health" "src\api_hook_client.py" 0 "producer" fn-ref
"src.api_hook_client.post_project" "src\api_hook_client.py" 0 "producer" fn-ref
"src.api_hook_client.select_list_item" "src\api_hook_client.py" 0 "producer" fn-ref
"src.api_hook_client.get_io_pool_status" "src\api_hook_client.py" 0 "producer" fn-ref
"src.api_hook_client.reject_patch" "src\api_hook_client.py" 0 "producer" fn-ref
"src.api_hook_client.get_system_telemetry" "src\api_hook_client.py" 0 "producer" fn-ref
"src.project_manager.default_project" "src\project_manager.py" 0 "producer" fn-ref
"src.api_hook_client.get_warmup_wait" "src\api_hook_client.py" 0 "producer" fn-ref
"src.api_hook_client.get_node_status" "src\api_hook_client.py" 0 "producer" fn-ref
"src.app_controller._api_token_stats" "src\app_controller.py" 0 "producer" fn-ref
"src.app_controller._api_get_gui_state" "src\app_controller.py" 0 "producer" fn-ref
"src.app_controller._api_get_session" "src\app_controller.py" 0 "producer" fn-ref
"src.project_manager.load_history" "src\project_manager.py" 0 "producer" fn-ref
"src.app_controller.load_config" "src\app_controller.py" 0 "producer" fn-ref
"src.app_controller._api_get_mma_status" "src\app_controller.py" 0 "producer" fn-ref
"src.app_controller.token_stats" "src\app_controller.py" 0 "producer" fn-ref
"src.project_manager.flat_config" "src\project_manager.py" 0 "producer" fn-ref
"src.project_manager.migrate_from_legacy_config" "src\project_manager.py" 0 "producer" fn-ref
"src.api_hook_client.get_gui_health" "src\api_hook_client.py" 0 "producer" fn-ref
"src.api_hook_client.get_patch_status" "src\api_hook_client.py" 0 "producer" fn-ref
"src.api_hook_client.get_io_pool_status" "src\api_hook_client.py" 0 "producer" fn-ref
"src.app_controller.generate" "src\app_controller.py" 0 "producer" fn-ref
"src.api_hook_client.post_gui" "src\api_hook_client.py" 0 "producer" fn-ref
"src.api_hook_client.get_financial_metrics" "src\api_hook_client.py" 0 "producer" fn-ref
"src.api_hook_client.click" "src\api_hook_client.py" 0 "producer" fn-ref
"src.project_manager.default_discussion" "src\project_manager.py" 0 "producer" fn-ref
"src.app_controller.get_mma_status" "src\app_controller.py" 0 "producer" fn-ref
"src.app_controller.get_session_insights" "src\app_controller.py" 0 "producer" fn-ref
"src.models.to_dict" "src\models.py" 0 "producer" fn-ref
"src.ai_client._parse_tool_args_result" "src\ai_client.py" 0 "producer" fn-ref
"src.api_hook_client.push_event" "src\api_hook_client.py" 0 "producer" fn-ref
"src.api_hook_client.get_project_switch_status" "src\api_hook_client.py" 0 "producer" fn-ref
"src.project_manager.str_to_entry" "src\project_manager.py" 0 "producer" fn-ref
"src.app_controller._api_get_context" "src\app_controller.py" 0 "producer" fn-ref
"src.api_hook_client.set_value" "src\api_hook_client.py" 0 "producer" fn-ref
"src.api_hook_client.select_tab" "src\api_hook_client.py" 0 "producer" fn-ref
"src.api_hook_client.post_gui" "src\api_hook_client.py" 0 "producer" fn-ref
"src.app_controller._api_get_api_project" "src\app_controller.py" 0 "producer" fn-ref
"src.app_controller._api_generate" "src\app_controller.py" 0 "producer" fn-ref
"src.api_hook_client.get_warmup_status" "src\api_hook_client.py" 0 "producer" fn-ref
"src.api_hook_client.get_warmup_wait" "src\api_hook_client.py" 0 "producer" fn-ref
"src.api_hook_client.wait_for_project_switch" "src\api_hook_client.py" 0 "producer" fn-ref
"src.app_controller.get_context" "src\app_controller.py" 0 "producer" fn-ref
"src.ai_client._load_credentials" "src\ai_client.py" 0 "producer" fn-ref
"src.app_controller._api_get_diagnostics" "src\app_controller.py" 0 "producer" fn-ref
"src.api_hook_client.get_session" "src\api_hook_client.py" 0 "producer" fn-ref
"src.app_controller._offload_entry_payload" "src\app_controller.py" 0 "producer" fn-ref
"src.api_hook_client.get_startup_timeline" "src\api_hook_client.py" 0 "producer" fn-ref
"src.project_manager.migrate_from_legacy_config" "src\project_manager.py" 0 "producer" fn-ref
"src.api_hook_client.get_mma_workers" "src\api_hook_client.py" 0 "producer" fn-ref
"src.api_hook_client.drag" "src\api_hook_client.py" 0 "producer" fn-ref
"src.ai_client.get_token_stats" "src\ai_client.py" 0 "producer" fn-ref
"src.api_hook_client.get_node_status" "src\api_hook_client.py" 0 "producer" fn-ref
"src.api_hook_client.apply_patch" "src\api_hook_client.py" 0 "producer" fn-ref
"src.api_hook_client.set_value" "src\api_hook_client.py" 0 "producer" fn-ref
"src.app_controller.get_session" "src\app_controller.py" 0 "producer" fn-ref
"src.app_controller.get_api_session" "src\app_controller.py" 0 "producer" fn-ref
"src.api_hook_client.get_mma_status" "src\api_hook_client.py" 0 "producer" fn-ref
"src.api_hook_client.get_gui_state" "src\api_hook_client.py" 0 "producer" fn-ref
"src.api_hook_client.right_click" "src\api_hook_client.py" 0 "producer" fn-ref
"src.project_manager.default_project" "src\project_manager.py" 0 "producer" fn-ref
"src.api_hook_client.get_patch_status" "src\api_hook_client.py" 0 "producer" fn-ref
"src.project_manager.load_project" "src\project_manager.py" 0 "producer" fn-ref
"src.api_hook_client.trigger_patch" "src\api_hook_client.py" 0 "producer" fn-ref
"src.ai_client._dashscope_call" "src\ai_client.py" 0 "producer" fn-ref
"src.api_hook_client.get_project" "src\api_hook_client.py" 0 "producer" fn-ref
"src.app_controller.generate" "src\app_controller.py" 0 "producer" fn-ref
"src.ai_client._content_block_to_dict" "src\ai_client.py" 0 "producer" fn-ref
"src.api_hook_client.get_gui_diagnostics" "src\api_hook_client.py" 0 "producer" fn-ref
"src.ai_client.get_gemini_cache_stats" "src\ai_client.py" 0 "producer" fn-ref
"src.api_hook_client.click" "src\api_hook_client.py" 0 "producer" fn-ref
\ === consumers (35 items) ===
"src.aggregate.run" "src\aggregate.py" 0 "consumer" fn-ref
"src.project_manager.format_discussion" "src\project_manager.py" 0 "consumer" fn-ref
"src.aggregate.build_markdown_no_history" "src\aggregate.py" 0 "consumer" fn-ref
"src.app_controller._start_track_logic" "src\app_controller.py" 0 "consumer" fn-ref
"src.project_manager.entry_to_str" "src\project_manager.py" 0 "consumer" fn-ref
"src.app_controller._on_comms_entry" "src\app_controller.py" 0 "consumer" fn-ref
"src.project_manager.flat_config" "src\project_manager.py" 0 "consumer" fn-ref
"src.project_manager.migrate_from_legacy_config" "src\project_manager.py" 0 "consumer" fn-ref
"src.ai_client._strip_stale_file_refreshes" "src\ai_client.py" 0 "consumer" fn-ref
"src.ai_client._append_comms" "src\ai_client.py" 0 "consumer" fn-ref
"src.ai_client._add_history_cache_breakpoint" "src\ai_client.py" 0 "consumer" fn-ref
"src.app_controller._refresh_api_metrics" "src\app_controller.py" 0 "consumer" fn-ref
"src.ai_client._estimate_message_tokens" "src\ai_client.py" 0 "consumer" fn-ref
"src.ai_client._repair_deepseek_history" "src\ai_client.py" 0 "consumer" fn-ref
"src.ai_client._invalidate_token_estimate" "src\ai_client.py" 0 "consumer" fn-ref
"src.ai_client._execute_single_tool_call_async" "src\ai_client.py" 0 "consumer" fn-ref
"src.models._save_config_to_disk" "src\models.py" 0 "consumer" fn-ref
"src.ai_client._repair_minimax_history" "src\ai_client.py" 0 "consumer" fn-ref
"src.ai_client._add_bleed_derived" "src\ai_client.py" 0 "consumer" fn-ref
"src.ai_client.ollama_chat" "src\ai_client.py" 0 "consumer" fn-ref
"src.ai_client._trim_anthropic_history" "src\ai_client.py" 0 "consumer" fn-ref
"src.aggregate.build_markdown_from_items" "src\aggregate.py" 0 "consumer" fn-ref
"src.project_manager.save_project" "src\project_manager.py" 0 "consumer" fn-ref
"src.models.from_dict" "src\models.py" 0 "consumer" fn-ref
"src.ai_client._strip_cache_controls" "src\ai_client.py" 0 "consumer" fn-ref
"src.ai_client._pre_dispatch" "src\ai_client.py" 0 "consumer" fn-ref
"src.aggregate.build_tier3_context" "src\aggregate.py" 0 "consumer" fn-ref
"src.app_controller._start_track_logic_result" "src\app_controller.py" 0 "consumer" fn-ref
"src.app_controller._offload_entry_payload" "src\app_controller.py" 0 "consumer" fn-ref
"src.ai_client._strip_private_keys" "src\ai_client.py" 0 "consumer" fn-ref
"src.ai_client._trim_minimax_history" "src\ai_client.py" 0 "consumer" fn-ref
"src.ai_client._repair_anthropic_history" "src\ai_client.py" 0 "consumer" fn-ref
"src.ai_client._dashscope_call" "src\ai_client.py" 0 "consumer" fn-ref
"src.ai_client._estimate_prompt_tokens" "src\ai_client.py" 0 "consumer" fn-ref
"src.project_manager.format_discussion" "src\project_manager.py" 0 "consumer" fn-ref
"src.aggregate._build_files_section_from_items" "src\aggregate.py" 0 "consumer" fn-ref
"src.ai_client._append_comms" "src\ai_client.py" 0 "consumer" fn-ref
"src.ai_client._trim_anthropic_history" "src\ai_client.py" 0 "consumer" fn-ref
"src.models._save_config_to_disk" "src\models.py" 0 "consumer" fn-ref
"src.app_controller._on_comms_entry" "src\app_controller.py" 0 "consumer" fn-ref
"src.ai_client._execute_single_tool_call_async" "src\ai_client.py" 0 "consumer" fn-ref
"src.ai_client._dashscope_call" "src\ai_client.py" 0 "consumer" fn-ref
"src.ai_client.ollama_chat" "src\ai_client.py" 0 "consumer" fn-ref
"src.ai_client._pre_dispatch" "src\ai_client.py" 0 "consumer" fn-ref
"src.ai_client._strip_cache_controls" "src\ai_client.py" 0 "consumer" fn-ref
"src.ai_client._estimate_prompt_tokens" "src\ai_client.py" 0 "consumer" fn-ref
"src.ai_client._add_history_cache_breakpoint" "src\ai_client.py" 0 "consumer" fn-ref
"src.project_manager.flat_config" "src\project_manager.py" 0 "consumer" fn-ref
"src.app_controller._offload_entry_payload" "src\app_controller.py" 0 "consumer" fn-ref
"src.ai_client._repair_minimax_history" "src\ai_client.py" 0 "consumer" fn-ref
"src.ai_client._strip_private_keys" "src\ai_client.py" 0 "consumer" fn-ref
"src.ai_client._repair_deepseek_history" "src\ai_client.py" 0 "consumer" fn-ref
"src.project_manager.entry_to_str" "src\project_manager.py" 0 "consumer" fn-ref
"src.aggregate.build_tier3_context" "src\aggregate.py" 0 "consumer" fn-ref
"src.ai_client._estimate_message_tokens" "src\ai_client.py" 0 "consumer" fn-ref
"src.project_manager.migrate_from_legacy_config" "src\project_manager.py" 0 "consumer" fn-ref
"src.aggregate.run" "src\aggregate.py" 0 "consumer" fn-ref
"src.models.from_dict" "src\models.py" 0 "consumer" fn-ref
"src.project_manager.save_project" "src\project_manager.py" 0 "consumer" fn-ref
"src.aggregate.build_markdown_from_items" "src\aggregate.py" 0 "consumer" fn-ref
"src.app_controller._start_track_logic" "src\app_controller.py" 0 "consumer" fn-ref
"src.app_controller._refresh_api_metrics" "src\app_controller.py" 0 "consumer" fn-ref
"src.app_controller._start_track_logic_result" "src\app_controller.py" 0 "consumer" fn-ref
"src.ai_client._add_bleed_derived" "src\ai_client.py" 0 "consumer" fn-ref
"src.aggregate.build_markdown_no_history" "src\aggregate.py" 0 "consumer" fn-ref
"src.ai_client._invalidate_token_estimate" "src\ai_client.py" 0 "consumer" fn-ref
"src.ai_client._repair_anthropic_history" "src\ai_client.py" 0 "consumer" fn-ref
"src.ai_client._trim_minimax_history" "src\ai_client.py" 0 "consumer" fn-ref
\ === access_pattern ===
"whole_struct" access-pattern
\ === access_pattern_evidence (35 items) ===
"src.aggregate.run" "field_by_field" 3 "high" ap-evidence
"src.project_manager.format_discussion" "whole_struct" 0 "low" ap-evidence
"src.aggregate.build_markdown_no_history" "whole_struct" 0 "low" ap-evidence
"src.app_controller._start_track_logic" "mixed" 2 "high" ap-evidence
"src.project_manager.entry_to_str" "whole_struct" 1 "high" ap-evidence
"src.app_controller._on_comms_entry" "field_by_field" 10 "high" ap-evidence
"src.project_manager.flat_config" "whole_struct" 1 "high" ap-evidence
"src.project_manager.migrate_from_legacy_config" "whole_struct" 1 "high" ap-evidence
"src.ai_client._strip_stale_file_refreshes" "whole_struct" 0 "low" ap-evidence
"src.ai_client._append_comms" "whole_struct" 0 "low" ap-evidence
"src.ai_client._add_history_cache_breakpoint" "whole_struct" 0 "low" ap-evidence
"src.app_controller._refresh_api_metrics" "field_by_field" 11 "high" ap-evidence
"src.ai_client._estimate_message_tokens" "mixed" 2 "high" ap-evidence
"src.ai_client._repair_deepseek_history" "whole_struct" 1 "high" ap-evidence
"src.ai_client._invalidate_token_estimate" "whole_struct" 1 "high" ap-evidence
"src.ai_client._execute_single_tool_call_async" "mixed" 2 "high" ap-evidence
"src.models._save_config_to_disk" "whole_struct" 0 "low" ap-evidence
"src.ai_client._repair_minimax_history" "whole_struct" 1 "high" ap-evidence
"src.ai_client._add_bleed_derived" "field_by_field" 9 "high" ap-evidence
"src.ai_client.ollama_chat" "whole_struct" 0 "low" ap-evidence
"src.ai_client._trim_anthropic_history" "whole_struct" 1 "high" ap-evidence
"src.aggregate.build_markdown_from_items" "whole_struct" 0 "low" ap-evidence
"src.project_manager.save_project" "mixed" 2 "high" ap-evidence
"src.models.from_dict" "mixed" 2 "high" ap-evidence
"src.ai_client._strip_cache_controls" "whole_struct" 0 "low" ap-evidence
"src.ai_client._pre_dispatch" "whole_struct" 0 "low" ap-evidence
"src.aggregate.build_tier3_context" "whole_struct" 0 "low" ap-evidence
"src.app_controller._start_track_logic_result" "field_by_field" 17 "high" ap-evidence
"src.app_controller._offload_entry_payload" "whole_struct" 0 "low" ap-evidence
"src.ai_client._strip_private_keys" "whole_struct" 0 "low" ap-evidence
"src.ai_client._trim_minimax_history" "whole_struct" 1 "high" ap-evidence
"src.ai_client._repair_anthropic_history" "whole_struct" 1 "high" ap-evidence
"src.ai_client._dashscope_call" "whole_struct" 0 "low" ap-evidence
"src.ai_client._estimate_prompt_tokens" "whole_struct" 0 "low" ap-evidence
"src.project_manager.format_discussion" "whole_struct" 0 "low" ap-evidence
"src.aggregate._build_files_section_from_items" "whole_struct" 0 "low" ap-evidence
"src.ai_client._append_comms" "whole_struct" 0 "low" ap-evidence
"src.ai_client._trim_anthropic_history" "whole_struct" 1 "high" ap-evidence
"src.models._save_config_to_disk" "whole_struct" 0 "low" ap-evidence
"src.app_controller._on_comms_entry" "field_by_field" 10 "high" ap-evidence
"src.ai_client._execute_single_tool_call_async" "mixed" 2 "high" ap-evidence
"src.ai_client._dashscope_call" "whole_struct" 0 "low" ap-evidence
"src.ai_client.ollama_chat" "whole_struct" 0 "low" ap-evidence
"src.ai_client._pre_dispatch" "whole_struct" 0 "low" ap-evidence
"src.ai_client._strip_cache_controls" "whole_struct" 0 "low" ap-evidence
"src.ai_client._estimate_prompt_tokens" "whole_struct" 0 "low" ap-evidence
"src.ai_client._add_history_cache_breakpoint" "whole_struct" 0 "low" ap-evidence
"src.project_manager.flat_config" "whole_struct" 1 "high" ap-evidence
"src.app_controller._offload_entry_payload" "whole_struct" 0 "low" ap-evidence
"src.ai_client._repair_minimax_history" "whole_struct" 1 "high" ap-evidence
"src.ai_client._strip_private_keys" "whole_struct" 0 "low" ap-evidence
"src.ai_client._repair_deepseek_history" "whole_struct" 1 "high" ap-evidence
"src.project_manager.entry_to_str" "whole_struct" 1 "high" ap-evidence
"src.aggregate.build_tier3_context" "whole_struct" 0 "low" ap-evidence
"src.ai_client._estimate_message_tokens" "mixed" 2 "high" ap-evidence
"src.project_manager.migrate_from_legacy_config" "whole_struct" 1 "high" ap-evidence
"src.aggregate.run" "field_by_field" 3 "high" ap-evidence
"src.models.from_dict" "mixed" 2 "high" ap-evidence
"src.project_manager.save_project" "mixed" 2 "high" ap-evidence
"src.aggregate.build_markdown_from_items" "whole_struct" 0 "low" ap-evidence
"src.app_controller._start_track_logic" "mixed" 2 "high" ap-evidence
"src.app_controller._refresh_api_metrics" "field_by_field" 11 "high" ap-evidence
"src.app_controller._start_track_logic_result" "field_by_field" 17 "high" ap-evidence
"src.ai_client._add_bleed_derived" "field_by_field" 9 "high" ap-evidence
"src.aggregate.build_markdown_no_history" "whole_struct" 0 "low" ap-evidence
"src.ai_client._invalidate_token_estimate" "whole_struct" 1 "high" ap-evidence
"src.ai_client._repair_anthropic_history" "whole_struct" 1 "high" ap-evidence
"src.ai_client._trim_minimax_history" "whole_struct" 1 "high" ap-evidence
\ === frequency ===
"per_turn" frequency
\ === frequency_evidence (5 items) ===
"src.project_manager.load_history" "per_turn" "static_analysis" "producer from src\project_manager.py" freq-evidence
"src.ai_client.get_gemini_cache_stats" "per_turn" "static_analysis" "producer from src\ai_client.py" freq-evidence
"src.app_controller._api_get_mma_status" "per_turn" "static_analysis" "producer from src\app_controller.py" freq-evidence
"src.api_hook_client.get_status" "per_turn" "static_analysis" "producer from src\api_hook_client.py" freq-evidence
"src.api_hook_client.get_gui_state" "per_turn" "static_analysis" "producer from src\api_hook_client.py" freq-evidence
"src.api_hook_client.get_performance" "per_turn" "static_analysis" "producer from src\api_hook_client.py" freq-evidence
"src.app_controller.get_performance" "per_turn" "static_analysis" "producer from src\app_controller.py" freq-evidence
"src.ai_client._send_cli_round_result" "per_turn" "static_analysis" "producer from src\ai_client.py" freq-evidence
"src.api_hook_client.post_session" "per_turn" "static_analysis" "producer from src\api_hook_client.py" freq-evidence
"src.app_controller.wait" "per_turn" "static_analysis" "producer from src\app_controller.py" freq-evidence
\ === result_coverage ===
77 77 35 0 result-coverage
@@ -19,80 +19,80 @@
### `src\ai_client.py` (9 producers)
- `src.ai_client.get_gemini_cache_stats` (line 0)
- `src.ai_client._send_cli_round_result` (line 0)
- `src.ai_client._dashscope_call` (line 0)
- `src.ai_client._parse_tool_args_result` (line 0)
- `src.ai_client.get_token_stats` (line 0)
- `src.ai_client._add_bleed_derived` (line 0)
- `src.ai_client._content_block_to_dict` (line 0)
- `src.ai_client.ollama_chat` (line 0)
- `src.ai_client._add_bleed_derived` (line 0)
- `src.ai_client._parse_tool_args_result` (line 0)
- `src.ai_client._load_credentials` (line 0)
- `src.ai_client.get_token_stats` (line 0)
- `src.ai_client._dashscope_call` (line 0)
- `src.ai_client._content_block_to_dict` (line 0)
- `src.ai_client.get_gemini_cache_stats` (line 0)
### `src\api_hook_client.py` (33 producers)
- `src.api_hook_client.get_status` (line 0)
- `src.api_hook_client.get_gui_state` (line 0)
- `src.api_hook_client.apply_patch` (line 0)
- `src.api_hook_client.post_project` (line 0)
- `src.api_hook_client.get_project_switch_status` (line 0)
- `src.api_hook_client.get_project` (line 0)
- `src.api_hook_client.push_event` (line 0)
- `src.api_hook_client.drag` (line 0)
- `src.api_hook_client.select_tab` (line 0)
- `src.api_hook_client.trigger_patch` (line 0)
- `src.api_hook_client.get_mma_workers` (line 0)
- `src.api_hook_client.get_performance` (line 0)
- `src.api_hook_client.wait_for_project_switch` (line 0)
- `src.api_hook_client.post_session` (line 0)
- `src.api_hook_client.get_financial_metrics` (line 0)
- `src.api_hook_client.get_status` (line 0)
- `src.api_hook_client.get_context_state` (line 0)
- `src.api_hook_client.get_gui_health` (line 0)
- `src.api_hook_client.post_project` (line 0)
- `src.api_hook_client.select_list_item` (line 0)
- `src.api_hook_client.get_io_pool_status` (line 0)
- `src.api_hook_client.reject_patch` (line 0)
- `src.api_hook_client.get_mma_status` (line 0)
- `src.api_hook_client.get_gui_diagnostics` (line 0)
- `src.api_hook_client.get_system_telemetry` (line 0)
- `src.api_hook_client.push_event` (line 0)
- `src.api_hook_client.get_project_switch_status` (line 0)
- `src.api_hook_client.select_tab` (line 0)
- `src.api_hook_client.post_gui` (line 0)
- `src.api_hook_client.get_warmup_status` (line 0)
- `src.api_hook_client.get_warmup_wait` (line 0)
- `src.api_hook_client.wait_for_project_switch` (line 0)
- `src.api_hook_client.get_session` (line 0)
- `src.api_hook_client.get_startup_timeline` (line 0)
- `src.api_hook_client.select_list_item` (line 0)
- `src.api_hook_client.post_session` (line 0)
- `src.api_hook_client.get_context_state` (line 0)
- `src.api_hook_client.get_warmup_status` (line 0)
- `src.api_hook_client.right_click` (line 0)
- `src.api_hook_client.get_system_telemetry` (line 0)
- `src.api_hook_client.get_warmup_wait` (line 0)
- `src.api_hook_client.get_mma_workers` (line 0)
- `src.api_hook_client.drag` (line 0)
- `src.api_hook_client.get_node_status` (line 0)
- `src.api_hook_client.get_gui_health` (line 0)
- `src.api_hook_client.get_patch_status` (line 0)
- `src.api_hook_client.get_io_pool_status` (line 0)
- `src.api_hook_client.post_gui` (line 0)
- `src.api_hook_client.get_financial_metrics` (line 0)
- `src.api_hook_client.click` (line 0)
- `src.api_hook_client.apply_patch` (line 0)
- `src.api_hook_client.set_value` (line 0)
- `src.api_hook_client.get_mma_status` (line 0)
- `src.api_hook_client.get_gui_state` (line 0)
- `src.api_hook_client.right_click` (line 0)
- `src.api_hook_client.get_patch_status` (line 0)
- `src.api_hook_client.trigger_patch` (line 0)
- `src.api_hook_client.get_project` (line 0)
- `src.api_hook_client.get_gui_diagnostics` (line 0)
- `src.api_hook_client.click` (line 0)
### `src\app_controller.py` (26 producers)
- `src.app_controller._api_get_mma_status` (line 0)
- `src.app_controller.get_mma_status` (line 0)
- `src.app_controller.get_session` (line 0)
- `src.app_controller.status` (line 0)
- `src.app_controller._api_get_api_session` (line 0)
- `src.app_controller.load_config` (line 0)
- `src.app_controller._api_get_api_project` (line 0)
- `src.app_controller._api_status` (line 0)
- `src.app_controller._api_get_gui_state` (line 0)
- `src.app_controller.get_diagnostics` (line 0)
- `src.app_controller._api_get_session` (line 0)
- `src.app_controller.wait` (line 0)
- `src.app_controller.get_performance` (line 0)
- `src.app_controller.get_session_insights` (line 0)
- `src.app_controller._api_get_diagnostics` (line 0)
- `src.app_controller.wait` (line 0)
- `src.app_controller.get_diagnostics` (line 0)
- `src.app_controller.get_gui_state` (line 0)
- `src.app_controller._api_generate` (line 0)
- `src.app_controller._offload_entry_payload` (line 0)
- `src.app_controller.get_context` (line 0)
- `src.app_controller._api_status` (line 0)
- `src.app_controller._api_token_stats` (line 0)
- `src.app_controller._api_get_api_session` (line 0)
- `src.app_controller._api_get_context` (line 0)
- `src.app_controller.get_api_project` (line 0)
- `src.app_controller._api_get_performance` (line 0)
- `src.app_controller.get_api_session` (line 0)
- `src.app_controller._api_token_stats` (line 0)
- `src.app_controller.status` (line 0)
- `src.app_controller._api_get_gui_state` (line 0)
- `src.app_controller._api_get_session` (line 0)
- `src.app_controller.load_config` (line 0)
- `src.app_controller._api_get_mma_status` (line 0)
- `src.app_controller.token_stats` (line 0)
- `src.app_controller.get_mma_status` (line 0)
- `src.app_controller.get_session_insights` (line 0)
- `src.app_controller._api_get_api_project` (line 0)
- `src.app_controller._api_generate` (line 0)
- `src.app_controller.get_context` (line 0)
- `src.app_controller._api_get_diagnostics` (line 0)
- `src.app_controller._offload_entry_payload` (line 0)
- `src.app_controller.get_session` (line 0)
- `src.app_controller.get_api_session` (line 0)
- `src.app_controller.generate` (line 0)
- `src.app_controller._api_get_context` (line 0)
### `src\models.py` (2 producers)
@@ -102,51 +102,51 @@
### `src\project_manager.py` (7 producers)
- `src.project_manager.load_history` (line 0)
- `src.project_manager.default_discussion` (line 0)
- `src.project_manager.load_project` (line 0)
- `src.project_manager.default_project` (line 0)
- `src.project_manager.flat_config` (line 0)
- `src.project_manager.migrate_from_legacy_config` (line 0)
- `src.project_manager.default_discussion` (line 0)
- `src.project_manager.str_to_entry` (line 0)
- `src.project_manager.migrate_from_legacy_config` (line 0)
- `src.project_manager.default_project` (line 0)
- `src.project_manager.load_project` (line 0)
## Consumers (35)
### `src\aggregate.py` (5 consumers)
- `src.aggregate.run` (line 0)
- `src.aggregate.build_markdown_no_history` (line 0)
- `src.aggregate.build_markdown_from_items` (line 0)
- `src.aggregate.build_tier3_context` (line 0)
- `src.aggregate._build_files_section_from_items` (line 0)
- `src.aggregate.build_tier3_context` (line 0)
- `src.aggregate.run` (line 0)
- `src.aggregate.build_markdown_from_items` (line 0)
- `src.aggregate.build_markdown_no_history` (line 0)
### `src\ai_client.py` (18 consumers)
- `src.ai_client._strip_stale_file_refreshes` (line 0)
- `src.ai_client._append_comms` (line 0)
- `src.ai_client._add_history_cache_breakpoint` (line 0)
- `src.ai_client._estimate_message_tokens` (line 0)
- `src.ai_client._repair_deepseek_history` (line 0)
- `src.ai_client._invalidate_token_estimate` (line 0)
- `src.ai_client._execute_single_tool_call_async` (line 0)
- `src.ai_client._repair_minimax_history` (line 0)
- `src.ai_client._add_bleed_derived` (line 0)
- `src.ai_client.ollama_chat` (line 0)
- `src.ai_client._trim_anthropic_history` (line 0)
- `src.ai_client._strip_cache_controls` (line 0)
- `src.ai_client._pre_dispatch` (line 0)
- `src.ai_client._strip_private_keys` (line 0)
- `src.ai_client._trim_minimax_history` (line 0)
- `src.ai_client._repair_anthropic_history` (line 0)
- `src.ai_client._execute_single_tool_call_async` (line 0)
- `src.ai_client._dashscope_call` (line 0)
- `src.ai_client.ollama_chat` (line 0)
- `src.ai_client._pre_dispatch` (line 0)
- `src.ai_client._strip_cache_controls` (line 0)
- `src.ai_client._estimate_prompt_tokens` (line 0)
- `src.ai_client._add_history_cache_breakpoint` (line 0)
- `src.ai_client._repair_minimax_history` (line 0)
- `src.ai_client._strip_private_keys` (line 0)
- `src.ai_client._repair_deepseek_history` (line 0)
- `src.ai_client._estimate_message_tokens` (line 0)
- `src.ai_client._add_bleed_derived` (line 0)
- `src.ai_client._invalidate_token_estimate` (line 0)
- `src.ai_client._repair_anthropic_history` (line 0)
- `src.ai_client._trim_minimax_history` (line 0)
### `src\app_controller.py` (5 consumers)
- `src.app_controller._start_track_logic` (line 0)
- `src.app_controller._on_comms_entry` (line 0)
- `src.app_controller._offload_entry_payload` (line 0)
- `src.app_controller._start_track_logic` (line 0)
- `src.app_controller._refresh_api_metrics` (line 0)
- `src.app_controller._start_track_logic_result` (line 0)
- `src.app_controller._offload_entry_payload` (line 0)
### `src\models.py` (2 consumers)
@@ -156,8 +156,8 @@
### `src\project_manager.py` (5 consumers)
- `src.project_manager.format_discussion` (line 0)
- `src.project_manager.entry_to_str` (line 0)
- `src.project_manager.flat_config` (line 0)
- `src.project_manager.entry_to_str` (line 0)
- `src.project_manager.migrate_from_legacy_config` (line 0)
- `src.project_manager.save_project` (line 0)
@@ -165,41 +165,41 @@
| consumer | _est_tokens | _gemini_cache_text | _offload_entry_payload | _pending_comms | _pending_comms_lock | _pending_gui_tasks | _pending_gui_tasks_lock | _pending_history_adds | _pending_history_adds_lock | _recalculate_session_usage | _start_track_logic_result | _token_history | _token_stats | _topological_sort_tickets_result | _update_cached_stats | active_discussion | active_project_path | active_project_root | ai_status | append |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| `run` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `format_discussion` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `build_markdown_no_history` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `_start_track_logic` | . | . | . | . | . | . | . | . | . | . | 1 | . | . | . | . | . | . | . | 1 | . |
| `entry_to_str` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `_on_comms_entry` | . | . | 1 | 1 | 1 | . | . | 4 | 4 | . | . | 1 | . | . | . | . | . | . | . | . |
| `flat_config` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `migrate_from_legacy_config` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `_strip_stale_file_refreshes` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `_append_comms` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `_add_history_cache_breakpoint` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `_refresh_api_metrics` | . | 1 | . | . | . | . | . | . | . | 1 | . | . | 1 | . | 1 | . | . | . | . | . |
| `_estimate_message_tokens` | 1 | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `_repair_deepseek_history` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | 1 |
| `_invalidate_token_estimate` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `_execute_single_tool_call_async` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `_save_config_to_disk` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `_repair_minimax_history` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | 1 |
| `_add_bleed_derived` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `ollama_chat` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `_trim_anthropic_history` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `build_markdown_from_items` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `save_project` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `from_dict` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `_strip_cache_controls` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `_pre_dispatch` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `build_tier3_context` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `_start_track_logic_result` | . | . | . | . | . | 2 | 2 | . | . | . | . | . | . | 1 | . | 1 | 1 | 1 | 4 | . |
| `_offload_entry_payload` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `_strip_private_keys` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `_trim_minimax_history` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `_repair_anthropic_history` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | 1 |
| `_dashscope_call` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `_estimate_prompt_tokens` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `format_discussion` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `_build_files_section_from_items` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `_append_comms` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `_trim_anthropic_history` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `_save_config_to_disk` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `_on_comms_entry` | . | . | 1 | 1 | 1 | . | . | 4 | 4 | . | . | 1 | . | . | . | . | . | . | . | . |
| `_execute_single_tool_call_async` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `_dashscope_call` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `ollama_chat` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `_pre_dispatch` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `_strip_cache_controls` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `_estimate_prompt_tokens` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `_add_history_cache_breakpoint` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `flat_config` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `_offload_entry_payload` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `_repair_minimax_history` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | 1 |
| `_strip_private_keys` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `_repair_deepseek_history` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | 1 |
| `entry_to_str` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `build_tier3_context` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `_estimate_message_tokens` | 1 | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `migrate_from_legacy_config` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `run` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `from_dict` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `save_project` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `build_markdown_from_items` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `_start_track_logic` | . | . | . | . | . | . | . | . | . | . | 1 | . | . | . | . | . | . | . | 1 | . |
| `_refresh_api_metrics` | . | 1 | . | . | . | . | . | . | . | 1 | . | . | 1 | . | 1 | . | . | . | . | . |
| `_start_track_logic_result` | . | . | . | . | . | 2 | 2 | . | . | . | . | . | . | 1 | . | 1 | 1 | 1 | 4 | . |
| `_add_bleed_derived` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `build_markdown_no_history` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `_invalidate_token_estimate` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
| `_repair_anthropic_history` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | 1 |
| `_trim_minimax_history` | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
_... 33 more fields_
@@ -218,41 +218,41 @@ _... 33 more fields_
```
[Q:Metadata entry-point] -> [Q:PCG lookup]
-> [1: run] [B:check] (branches=1)
-> [1: _strip_stale_file_refreshes] [B:check] (branches=12)
-> [2: format_discussion] [B:check] (branches=0)
-> [3: build_markdown_no_history] [B:check] (branches=0)
-> [4: _start_track_logic] [B:check] (branches=1)
-> [5: entry_to_str] [B:check] (branches=3)
-> [6: _on_comms_entry] [B:check] (branches=32)
-> [7: flat_config] [B:check] (branches=2)
-> [8: migrate_from_legacy_config] [B:check] (branches=2)
-> [9: _strip_stale_file_refreshes] [B:check] (branches=12)
-> [10: _append_comms] [B:is None?] (branches=1) [N:safe]
-> [11: _add_history_cache_breakpoint] [B:check] (branches=5)
-> [12: _refresh_api_metrics] [B:is None?] (branches=11) [N:safe]
-> [13: _estimate_message_tokens] [B:is None?] (branches=9) [N:safe]
-> [14: _repair_deepseek_history] [B:check] (branches=6)
-> [15: _invalidate_token_estimate] [B:check] (branches=0)
-> [16: _execute_single_tool_call_async] [B:is None?] (branches=15) [N:safe]
-> [17: _save_config_to_disk] [B:check] (branches=1)
-> [18: _repair_minimax_history] [B:check] (branches=10)
-> [19: _add_bleed_derived] [B:check] (branches=0)
-> [20: ollama_chat] [B:check] (branches=3)
-> [21: _trim_anthropic_history] [B:check] (branches=13)
-> [22: build_markdown_from_items] [B:check] (branches=9)
-> [23: save_project] [B:is None?] (branches=7) [N:safe]
-> [24: from_dict] [B:check] (branches=0)
-> [25: _strip_cache_controls] [B:check] (branches=4)
-> [26: _pre_dispatch] [B:check] (branches=8)
-> [27: build_tier3_context] [B:check] (branches=50)
-> [28: _start_track_logic_result] [B:check] (branches=10)
-> [29: _offload_entry_payload] [B:check] (branches=10)
-> [30: _strip_private_keys] [B:check] (branches=0)
-> [31: _trim_minimax_history] [B:check] (branches=8)
-> [32: _repair_anthropic_history] [B:check] (branches=6)
-> [33: _dashscope_call] [B:check] (branches=5)
-> [34: _estimate_prompt_tokens] [B:check] (branches=2)
-> [35: _build_files_section_from_items] [B:is None?] (branches=5) [N:safe]
-> [3: _build_files_section_from_items] [B:is None?] (branches=5) [N:safe]
-> [4: _append_comms] [B:is None?] (branches=1) [N:safe]
-> [5: _trim_anthropic_history] [B:check] (branches=13)
-> [6: _save_config_to_disk] [B:check] (branches=1)
-> [7: _on_comms_entry] [B:check] (branches=32)
-> [8: _execute_single_tool_call_async] [B:is None?] (branches=15) [N:safe]
-> [9: _dashscope_call] [B:check] (branches=5)
-> [10: ollama_chat] [B:check] (branches=3)
-> [11: _pre_dispatch] [B:check] (branches=8)
-> [12: _strip_cache_controls] [B:check] (branches=4)
-> [13: _estimate_prompt_tokens] [B:check] (branches=2)
-> [14: _add_history_cache_breakpoint] [B:check] (branches=5)
-> [15: flat_config] [B:check] (branches=2)
-> [16: _offload_entry_payload] [B:check] (branches=10)
-> [17: _repair_minimax_history] [B:check] (branches=10)
-> [18: _strip_private_keys] [B:check] (branches=0)
-> [19: _repair_deepseek_history] [B:check] (branches=6)
-> [20: entry_to_str] [B:check] (branches=3)
-> [21: build_tier3_context] [B:check] (branches=50)
-> [22: _estimate_message_tokens] [B:is None?] (branches=9) [N:safe]
-> [23: migrate_from_legacy_config] [B:check] (branches=2)
-> [24: run] [B:check] (branches=1)
-> [25: from_dict] [B:check] (branches=0)
-> [26: save_project] [B:is None?] (branches=7) [N:safe]
-> [27: build_markdown_from_items] [B:check] (branches=9)
-> [28: _start_track_logic] [B:check] (branches=1)
-> [29: _refresh_api_metrics] [B:is None?] (branches=11) [N:safe]
-> [30: _start_track_logic_result] [B:check] (branches=10)
-> [31: _add_bleed_derived] [B:check] (branches=0)
-> [32: build_markdown_no_history] [B:check] (branches=0)
-> [33: _invalidate_token_estimate] [B:check] (branches=0)
-> [34: _repair_anthropic_history] [B:check] (branches=6)
-> [35: _trim_minimax_history] [B:check] (branches=8)
-> [T:done]
```
@@ -321,13 +321,11 @@ _... 33 more fields_
| field | access count | access pattern |
|---|---|---|
| `get` | 10 | hot |
| `append` | 3 | hot |
| `pop` | 3 | hot |
| `append` | 3 | hot |
| `session_usage` | 2 | used |
| `files` | 2 | used |
| `ai_status` | 2 | used |
| `session_usage` | 2 | used |
| `output` | 1 | used |
| `_start_track_logic_result` | 1 | used |
| `local_ts` | 1 | used |
| `_offload_entry_payload` | 1 | used |
| `ui_auto_add_history` | 1 | used |
@@ -336,6 +334,13 @@ _... 33 more fields_
| `_token_history` | 1 | used |
| `_pending_comms` | 1 | used |
| `_pending_history_adds` | 1 | used |
| `items` | 1 | used |
| `_est_tokens` | 1 | used |
| `output` | 1 | used |
| `content` | 1 | used |
| `marker` | 1 | used |
| `discussion` | 1 | used |
| `_start_track_logic_result` | 1 | used |
| `latency` | 1 | used |
| `_recalculate_session_usage` | 1 | used |
| `_token_stats` | 1 | used |
@@ -345,19 +350,6 @@ _... 33 more fields_
| `error` | 1 | used |
| `_update_cached_stats` | 1 | used |
| `usage` | 1 | used |
| `_est_tokens` | 1 | used |
| `items` | 1 | used |
| `estimated_prompt_tokens` | 1 | used |
| `max_prompt_tokens` | 1 | used |
| `utilization_pct` | 1 | used |
| `headroom` | 1 | used |
| `would_trim` | 1 | used |
| `sys_tokens` | 1 | used |
| `tool_tokens` | 1 | used |
| `history_tokens` | 1 | used |
| `discussion` | 1 | used |
| `content` | 1 | used |
| `marker` | 1 | used |
| `context_files` | 1 | used |
| `_pending_gui_tasks_lock` | 1 | used |
| `_topological_sort_tickets_result` | 1 | used |
@@ -373,6 +365,14 @@ _... 33 more fields_
| `_pending_gui_tasks` | 1 | used |
| `mma_step_mode` | 1 | used |
| `active_project_path` | 1 | used |
| `estimated_prompt_tokens` | 1 | used |
| `max_prompt_tokens` | 1 | used |
| `utilization_pct` | 1 | used |
| `headroom` | 1 | used |
| `would_trim` | 1 | used |
| `sys_tokens` | 1 | used |
| `tool_tokens` | 1 | used |
| `history_tokens` | 1 | used |
## Optimization candidates
@@ -388,48 +388,48 @@ Metadata: access_pattern=whole_struct, frequency=per_turn, struct_field_count=10
| function | pattern | field_accesses | confidence |
|---|---|---|---|
| `src.aggregate.run` | `field_by_field` | `output`=1, `files`=2, `get`=7 | high |
| `src.project_manager.format_discussion` | `whole_struct` | | low |
| `src.aggregate.build_markdown_no_history` | `whole_struct` | | low |
| `src.app_controller._start_track_logic` | `mixed` | `_start_track_logic_result`=1, `ai_status`=1 | high |
| `src.project_manager.entry_to_str` | `whole_struct` | `get`=4 | high |
| `src.app_controller._on_comms_entry` | `field_by_field` | `local_ts`=1, `_offload_entry_payload`=1, `get`=7, `ui_auto_add_history`=3, `_pending_comms_lock`=1, `session_usage`=5, `_pending_history_adds_lock`=4, `_token_history`=1, `_pending_comms`=1, `_pending_history_adds`=4 | high |
| `src.project_manager.flat_config` | `whole_struct` | `get`=7 | high |
| `src.project_manager.migrate_from_legacy_config` | `whole_struct` | `get`=2 | high |
| `src.ai_client._strip_stale_file_refreshes` | `whole_struct` | | low |
| `src.ai_client._append_comms` | `whole_struct` | | low |
| `src.ai_client._add_history_cache_breakpoint` | `whole_struct` | | low |
| `src.app_controller._refresh_api_metrics` | `field_by_field` | `latency`=1, `_recalculate_session_usage`=1, `_token_stats`=1, `get`=2, `_gemini_cache_text`=1, `vendor_quota`=1, `last_error`=1, `error`=2, `_update_cached_stats`=1, `session_usage`=2 (+1 more) | high |
| `src.ai_client._estimate_message_tokens` | `mixed` | `_est_tokens`=1, `get`=2 | high |
| `src.ai_client._repair_deepseek_history` | `whole_struct` | `append`=1 | high |
| `src.ai_client._invalidate_token_estimate` | `whole_struct` | `pop`=1 | high |
| `src.ai_client._execute_single_tool_call_async` | `mixed` | `get`=2, `items`=1 | high |
| `src.models._save_config_to_disk` | `whole_struct` | | low |
| `src.ai_client._repair_minimax_history` | `whole_struct` | `append`=1 | high |
| `src.ai_client._add_bleed_derived` | `field_by_field` | `estimated_prompt_tokens`=1, `max_prompt_tokens`=1, `utilization_pct`=1, `headroom`=1, `would_trim`=1, `sys_tokens`=1, `tool_tokens`=1, `history_tokens`=1, `get`=3 | high |
| `src.ai_client.ollama_chat` | `whole_struct` | | low |
| `src.ai_client._trim_anthropic_history` | `whole_struct` | `pop`=5 | high |
| `src.aggregate.build_markdown_from_items` | `whole_struct` | | low |
| `src.project_manager.save_project` | `mixed` | `discussion`=2, `files`=3 | high |
| `src.models.from_dict` | `mixed` | `content`=1, `marker`=1 | high |
| `src.ai_client._strip_cache_controls` | `whole_struct` | | low |
| `src.ai_client._pre_dispatch` | `whole_struct` | | low |
| `src.aggregate.build_tier3_context` | `whole_struct` | | low |
| `src.app_controller._start_track_logic_result` | `field_by_field` | `ai_status`=4, `context_files`=1, `get`=3, `_pending_gui_tasks_lock`=2, `_topological_sort_tickets_result`=1, `active_project_root`=1, `event_queue`=1, `engines`=1, `project`=1, `active_discussion`=1 (+7 more) | high |
| `src.app_controller._offload_entry_payload` | `whole_struct` | | low |
| `src.ai_client._strip_private_keys` | `whole_struct` | | low |
| `src.ai_client._trim_minimax_history` | `whole_struct` | `pop`=4 | high |
| `src.ai_client._repair_anthropic_history` | `whole_struct` | `append`=1 | high |
| `src.ai_client._dashscope_call` | `whole_struct` | | low |
| `src.ai_client._estimate_prompt_tokens` | `whole_struct` | | low |
| `src.project_manager.format_discussion` | `whole_struct` | | low |
| `src.aggregate._build_files_section_from_items` | `whole_struct` | | low |
| `src.ai_client._append_comms` | `whole_struct` | | low |
| `src.ai_client._trim_anthropic_history` | `whole_struct` | `pop`=5 | high |
| `src.models._save_config_to_disk` | `whole_struct` | | low |
| `src.app_controller._on_comms_entry` | `field_by_field` | `local_ts`=1, `_offload_entry_payload`=1, `get`=7, `ui_auto_add_history`=3, `_pending_comms_lock`=1, `session_usage`=5, `_pending_history_adds_lock`=4, `_token_history`=1, `_pending_comms`=1, `_pending_history_adds`=4 | high |
| `src.ai_client._execute_single_tool_call_async` | `mixed` | `get`=2, `items`=1 | high |
| `src.ai_client._dashscope_call` | `whole_struct` | | low |
| `src.ai_client.ollama_chat` | `whole_struct` | | low |
| `src.ai_client._pre_dispatch` | `whole_struct` | | low |
| `src.ai_client._strip_cache_controls` | `whole_struct` | | low |
| `src.ai_client._estimate_prompt_tokens` | `whole_struct` | | low |
| `src.ai_client._add_history_cache_breakpoint` | `whole_struct` | | low |
| `src.project_manager.flat_config` | `whole_struct` | `get`=7 | high |
| `src.app_controller._offload_entry_payload` | `whole_struct` | | low |
| `src.ai_client._repair_minimax_history` | `whole_struct` | `append`=1 | high |
| `src.ai_client._strip_private_keys` | `whole_struct` | | low |
| `src.ai_client._repair_deepseek_history` | `whole_struct` | `append`=1 | high |
| `src.project_manager.entry_to_str` | `whole_struct` | `get`=4 | high |
| `src.aggregate.build_tier3_context` | `whole_struct` | | low |
| `src.ai_client._estimate_message_tokens` | `mixed` | `_est_tokens`=1, `get`=2 | high |
| `src.project_manager.migrate_from_legacy_config` | `whole_struct` | `get`=2 | high |
| `src.aggregate.run` | `field_by_field` | `output`=1, `files`=2, `get`=7 | high |
| `src.models.from_dict` | `mixed` | `content`=1, `marker`=1 | high |
| `src.project_manager.save_project` | `mixed` | `discussion`=2, `files`=3 | high |
| `src.aggregate.build_markdown_from_items` | `whole_struct` | | low |
| `src.app_controller._start_track_logic` | `mixed` | `_start_track_logic_result`=1, `ai_status`=1 | high |
| `src.app_controller._refresh_api_metrics` | `field_by_field` | `latency`=1, `_recalculate_session_usage`=1, `_token_stats`=1, `get`=2, `_gemini_cache_text`=1, `vendor_quota`=1, `last_error`=1, `error`=2, `_update_cached_stats`=1, `session_usage`=2 (+1 more) | high |
| `src.app_controller._start_track_logic_result` | `field_by_field` | `ai_status`=4, `context_files`=1, `get`=3, `_pending_gui_tasks_lock`=2, `_topological_sort_tickets_result`=1, `active_project_root`=1, `event_queue`=1, `engines`=1, `project`=1, `active_discussion`=1 (+7 more) | high |
| `src.ai_client._add_bleed_derived` | `field_by_field` | `estimated_prompt_tokens`=1, `max_prompt_tokens`=1, `utilization_pct`=1, `headroom`=1, `would_trim`=1, `sys_tokens`=1, `tool_tokens`=1, `history_tokens`=1, `get`=3 | high |
| `src.aggregate.build_markdown_no_history` | `whole_struct` | | low |
| `src.ai_client._invalidate_token_estimate` | `whole_struct` | `pop`=1 | high |
| `src.ai_client._repair_anthropic_history` | `whole_struct` | `append`=1 | high |
| `src.ai_client._trim_minimax_history` | `whole_struct` | `pop`=4 | high |
### Frequency evidence
| function | frequency | source | note |
|---|---|---|---|
| `src.project_manager.load_history` | `per_turn` | `static_analysis` | producer from src\project_manager.py |
| `src.ai_client.get_gemini_cache_stats` | `per_turn` | `static_analysis` | producer from src\ai_client.py |
| `src.app_controller._api_get_mma_status` | `per_turn` | `static_analysis` | producer from src\app_controller.py |
| `src.api_hook_client.get_status` | `per_turn` | `static_analysis` | producer from src\api_hook_client.py |
| `src.api_hook_client.get_gui_state` | `per_turn` | `static_analysis` | producer from src\api_hook_client.py |
| `src.api_hook_client.get_performance` | `per_turn` | `static_analysis` | producer from src\api_hook_client.py |
| `src.app_controller.get_performance` | `per_turn` | `static_analysis` | producer from src\app_controller.py |
| `src.ai_client._send_cli_round_result` | `per_turn` | `static_analysis` | producer from src\ai_client.py |
| `src.api_hook_client.post_session` | `per_turn` | `static_analysis` | producer from src\api_hook_client.py |
| `src.app_controller.wait` | `per_turn` | `static_analysis` | producer from src\app_controller.py |
@@ -2,119 +2,119 @@ Metadata: Metadata
|- kind: typealias
|- memory_dim: discussion
|- producers: [77]
| |- src.project_manager.load_history (producer)
| |- src.ai_client.get_gemini_cache_stats (producer)
| |- src.app_controller._api_get_mma_status (producer)
| |- src.api_hook_client.get_status (producer)
| |- src.api_hook_client.get_gui_state (producer)
| |- src.api_hook_client.apply_patch (producer)
| |- src.api_hook_client.post_project (producer)
| |- src.app_controller.get_mma_status (producer)
| |- src.app_controller.get_session (producer)
| |- src.api_hook_client.get_project_switch_status (producer)
| |- src.api_hook_client.get_project (producer)
| |- src.app_controller.status (producer)
| |- src.app_controller._api_get_api_session (producer)
| |- src.api_hook_client.push_event (producer)
| |- src.api_hook_client.drag (producer)
| |- src.app_controller.load_config (producer)
| |- src.ai_client._send_cli_round_result (producer)
| |- src.api_hook_client.select_tab (producer)
| |- src.ai_client._dashscope_call (producer)
| |- src.api_hook_client.trigger_patch (producer)
| |- src.app_controller._api_get_api_project (producer)
| |- src.ai_client._parse_tool_args_result (producer)
| |- src.app_controller._api_status (producer)
| |- src.api_hook_client.get_mma_workers (producer)
| |- src.app_controller._api_get_gui_state (producer)
| |- src.ai_client.get_token_stats (producer)
| |- src.ai_client._add_bleed_derived (producer)
| |- src.app_controller.get_diagnostics (producer)
| |- src.api_hook_client.get_performance (producer)
| |- src.app_controller._api_get_session (producer)
| |- src.app_controller.wait (producer)
| |- src.app_controller.get_performance (producer)
| |- src.api_hook_client.wait_for_project_switch (producer)
| |- src.api_hook_client.reject_patch (producer)
| |- src.api_hook_client.get_mma_status (producer)
| |- src.models._load_config_from_disk (producer)
| |- src.app_controller.get_session_insights (producer)
| |- src.api_hook_client.get_gui_diagnostics (producer)
| |- src.api_hook_client.get_session (producer)
| |- src.app_controller._api_get_diagnostics (producer)
| |- src.api_hook_client.get_startup_timeline (producer)
| |- src.api_hook_client.select_list_item (producer)
| |- src.ai_client._send_cli_round_result (producer)
| |- src.api_hook_client.post_session (producer)
| |- src.ai_client._content_block_to_dict (producer)
| |- src.project_manager.default_discussion (producer)
| |- src.app_controller.wait (producer)
| |- src.app_controller.get_diagnostics (producer)
| |- src.models._load_config_from_disk (producer)
| |- src.app_controller.get_gui_state (producer)
| |- src.app_controller._api_status (producer)
| |- src.app_controller._api_token_stats (producer)
| |- src.ai_client.ollama_chat (producer)
| |- src.api_hook_client.get_context_state (producer)
| |- src.app_controller._api_generate (producer)
| |- src.models.to_dict (producer)
| |- src.project_manager.load_project (producer)
| |- src.app_controller._offload_entry_payload (producer)
| |- src.api_hook_client.get_warmup_status (producer)
| |- src.app_controller.get_context (producer)
| |- src.api_hook_client.get_financial_metrics (producer)
| |- src.api_hook_client.get_status (producer)
| |- src.app_controller._api_get_api_session (producer)
| |- src.app_controller._api_get_context (producer)
| |- src.app_controller.get_api_project (producer)
| |- src.app_controller._api_get_performance (producer)
| |- src.app_controller.get_api_session (producer)
| |- src.api_hook_client.right_click (producer)
| |- src.app_controller.status (producer)
| |- src.ai_client._add_bleed_derived (producer)
| |- src.api_hook_client.get_context_state (producer)
| |- src.api_hook_client.get_gui_health (producer)
| |- src.api_hook_client.post_project (producer)
| |- src.api_hook_client.select_list_item (producer)
| |- src.api_hook_client.get_io_pool_status (producer)
| |- src.api_hook_client.reject_patch (producer)
| |- src.api_hook_client.get_system_telemetry (producer)
| |- src.project_manager.default_project (producer)
| |- src.api_hook_client.get_warmup_wait (producer)
| |- src.api_hook_client.get_node_status (producer)
| |- src.app_controller._api_token_stats (producer)
| |- src.app_controller._api_get_gui_state (producer)
| |- src.app_controller._api_get_session (producer)
| |- src.project_manager.load_history (producer)
| |- src.app_controller.load_config (producer)
| |- src.app_controller._api_get_mma_status (producer)
| |- src.app_controller.token_stats (producer)
| |- src.project_manager.flat_config (producer)
| |- src.project_manager.migrate_from_legacy_config (producer)
| |- src.api_hook_client.get_gui_health (producer)
| |- src.api_hook_client.get_patch_status (producer)
| |- src.api_hook_client.get_io_pool_status (producer)
| |- src.app_controller.generate (producer)
| |- src.api_hook_client.post_gui (producer)
| |- src.api_hook_client.get_financial_metrics (producer)
| |- src.api_hook_client.click (producer)
| |- src.project_manager.default_discussion (producer)
| |- src.app_controller.get_mma_status (producer)
| |- src.app_controller.get_session_insights (producer)
| |- src.models.to_dict (producer)
| |- src.ai_client._parse_tool_args_result (producer)
| |- src.api_hook_client.push_event (producer)
| |- src.api_hook_client.get_project_switch_status (producer)
| |- src.project_manager.str_to_entry (producer)
| |- src.app_controller._api_get_context (producer)
| |- src.api_hook_client.set_value (producer)
| |- src.api_hook_client.select_tab (producer)
| |- src.api_hook_client.post_gui (producer)
| |- src.app_controller._api_get_api_project (producer)
| |- src.app_controller._api_generate (producer)
| |- src.api_hook_client.get_warmup_status (producer)
| |- src.api_hook_client.get_warmup_wait (producer)
| |- src.api_hook_client.wait_for_project_switch (producer)
| |- src.app_controller.get_context (producer)
| |- src.ai_client._load_credentials (producer)
| |- src.app_controller._api_get_diagnostics (producer)
| |- src.api_hook_client.get_session (producer)
| |- src.app_controller._offload_entry_payload (producer)
| |- src.api_hook_client.get_startup_timeline (producer)
| |- src.project_manager.migrate_from_legacy_config (producer)
| |- src.api_hook_client.get_mma_workers (producer)
| |- src.api_hook_client.drag (producer)
| |- src.ai_client.get_token_stats (producer)
| |- src.api_hook_client.get_node_status (producer)
| |- src.api_hook_client.apply_patch (producer)
| |- src.api_hook_client.set_value (producer)
| |- src.app_controller.get_session (producer)
| |- src.app_controller.get_api_session (producer)
| |- src.api_hook_client.get_mma_status (producer)
| |- src.api_hook_client.get_gui_state (producer)
| |- src.api_hook_client.right_click (producer)
| |- src.project_manager.default_project (producer)
| |- src.api_hook_client.get_patch_status (producer)
| |- src.project_manager.load_project (producer)
| |- src.api_hook_client.trigger_patch (producer)
| |- src.ai_client._dashscope_call (producer)
| |- src.api_hook_client.get_project (producer)
| |- src.app_controller.generate (producer)
| |- src.ai_client._content_block_to_dict (producer)
| |- src.api_hook_client.get_gui_diagnostics (producer)
| |- src.ai_client.get_gemini_cache_stats (producer)
| |- src.api_hook_client.click (producer)
|- consumers: [35]
| |- src.aggregate.run (consumer)
| |- src.project_manager.format_discussion (consumer)
| |- src.aggregate.build_markdown_no_history (consumer)
| |- src.app_controller._start_track_logic (consumer)
| |- src.project_manager.entry_to_str (consumer)
| |- src.app_controller._on_comms_entry (consumer)
| |- src.project_manager.flat_config (consumer)
| |- src.project_manager.migrate_from_legacy_config (consumer)
| |- src.ai_client._strip_stale_file_refreshes (consumer)
| |- src.ai_client._append_comms (consumer)
| |- src.ai_client._add_history_cache_breakpoint (consumer)
| |- src.app_controller._refresh_api_metrics (consumer)
| |- src.ai_client._estimate_message_tokens (consumer)
| |- src.ai_client._repair_deepseek_history (consumer)
| |- src.ai_client._invalidate_token_estimate (consumer)
| |- src.ai_client._execute_single_tool_call_async (consumer)
| |- src.models._save_config_to_disk (consumer)
| |- src.ai_client._repair_minimax_history (consumer)
| |- src.ai_client._add_bleed_derived (consumer)
| |- src.ai_client.ollama_chat (consumer)
| |- src.ai_client._trim_anthropic_history (consumer)
| |- src.aggregate.build_markdown_from_items (consumer)
| |- src.project_manager.save_project (consumer)
| |- src.models.from_dict (consumer)
| |- src.ai_client._strip_cache_controls (consumer)
| |- src.ai_client._pre_dispatch (consumer)
| |- src.aggregate.build_tier3_context (consumer)
| |- src.app_controller._start_track_logic_result (consumer)
| |- src.app_controller._offload_entry_payload (consumer)
| |- src.ai_client._strip_private_keys (consumer)
| |- src.ai_client._trim_minimax_history (consumer)
| |- src.ai_client._repair_anthropic_history (consumer)
| |- src.ai_client._dashscope_call (consumer)
| |- src.ai_client._estimate_prompt_tokens (consumer)
| |- src.project_manager.format_discussion (consumer)
| |- src.aggregate._build_files_section_from_items (consumer)
| |- src.ai_client._append_comms (consumer)
| |- src.ai_client._trim_anthropic_history (consumer)
| |- src.models._save_config_to_disk (consumer)
| |- src.app_controller._on_comms_entry (consumer)
| |- src.ai_client._execute_single_tool_call_async (consumer)
| |- src.ai_client._dashscope_call (consumer)
| |- src.ai_client.ollama_chat (consumer)
| |- src.ai_client._pre_dispatch (consumer)
| |- src.ai_client._strip_cache_controls (consumer)
| |- src.ai_client._estimate_prompt_tokens (consumer)
| |- src.ai_client._add_history_cache_breakpoint (consumer)
| |- src.project_manager.flat_config (consumer)
| |- src.app_controller._offload_entry_payload (consumer)
| |- src.ai_client._repair_minimax_history (consumer)
| |- src.ai_client._strip_private_keys (consumer)
| |- src.ai_client._repair_deepseek_history (consumer)
| |- src.project_manager.entry_to_str (consumer)
| |- src.aggregate.build_tier3_context (consumer)
| |- src.ai_client._estimate_message_tokens (consumer)
| |- src.project_manager.migrate_from_legacy_config (consumer)
| |- src.aggregate.run (consumer)
| |- src.models.from_dict (consumer)
| |- src.project_manager.save_project (consumer)
| |- src.aggregate.build_markdown_from_items (consumer)
| |- src.app_controller._start_track_logic (consumer)
| |- src.app_controller._refresh_api_metrics (consumer)
| |- src.app_controller._start_track_logic_result (consumer)
| |- src.ai_client._add_bleed_derived (consumer)
| |- src.aggregate.build_markdown_no_history (consumer)
| |- src.ai_client._invalidate_token_estimate (consumer)
| |- src.ai_client._repair_anthropic_history (consumer)
| |- src.ai_client._trim_minimax_history (consumer)
|- access_pattern: whole_struct
|- frequency: per_turn
|- result_coverage: 77 producers, 35 consumers