Private
Public Access
0
0
Commit Graph

447 Commits

Author SHA1 Message Date
ed f4c497b1e8 conductor: register ai_loop_regressions_20260614 in tracks.md (priority A, ready for Tier 2) 2026-06-15 00:48:12 -04:00
ed 4b4721ded4 Track: Complete track ai_client_docs_20260613 2026-06-13 18:27:50 -04:00
ed 23a8554051 Initialize track: SQLite-Granularity Inline Docs for ai_client.py
Creates spec, plan, and state configurations to document the dispatch loops, providers, and helper functions in src/ai_client.py.
2026-06-13 17:55:48 -04:00
ed e02a865dea Docstrings: Complete registration of continued SQLite inline docs track 2026-06-13 16:45:23 -04:00
ed cb129aaed9 Docstrings: SSDL + ASCII Layout Map for Preset Managers and Windows 2026-06-13 16:30:34 -04:00
ed 56e1950b4b Document settings hubs and diagnostics in gui_2.py and complete track
Add SQLite-style inline docstrings to render_ai_settings_hub, render_agent_tools_panel, and render_diagnostics_panel under simplified granularity per user request. Mark track sqlite_docs_gui_2_20260612 as complete.
2026-06-12 21:30:47 -04:00
ed 92cff70543 docs(gui_2): Document context composition, context files table, and ast inspector 2026-06-12 21:27:44 -04:00
ed 99e7b6e87f chore(conductor): initialize sqlite_docs_gui_2_20260612 track 2026-06-12 21:12:49 -04:00
ed cbe65b3f71 conductor(track): intent_dsl_survey v1.2 — add Cluster 8 (Metadesk) + Cluster 9 (Verse)
Survey now covers 10 prior-art clusters (was 8). New clusters per
user direction (Option A in the v1.2 cluster-fit discussion):

NEW: research/cluster_8_metadesk.md (research sub-report):
- Metadesk (Ryan Fleury + Allen Webster, Dion Systems, 2020-2021)
- 5 distinctive design properties: uniform 'lego-brick' AST, tags
  as dispatch keys, multiple interchangeable delimiters, comment
  + source-location preservation, first-class C interop with
  copy-paste distribution
- 2 citable anchor quotes with source URLs
- Synthesis: maps to Tier 3 (read/edit/discover) and Tier 4
  (audit/fuzzy) verbs

NEW: research/cluster_9_verse.md (research sub-report):
- Verse (Simon Peyton Jones + Tim Sweeney, Epic Games, 2021-)
- 5 distinctive design properties: transactional semantics with
  speculative execution, failure as first-class control flow, effect
  tracking in function signature, new Verse Calculus (ICFP 2023
  Distinguished Paper), everything-is-an-expression + live variables
- 3 citable anchor quotes
- Synthesis: maps to Tier 4 (try/recover/sandbox/audit) verbs;
  two-layer failure model maps to Cluster 7's Result convention

UPDATED: report_v1.2.md (1343 lines, +42 from v1.2 base):
- Inserted Cluster 8 (Metadesk) and Cluster 9 (Verse) sections
  between Cluster 7 and the section 2/3 divider
- Updated §2 intro to say '10 clusters' (was '8')
- Updated glossary 'clusters' entry to list all 10
- Updated v1.2 changelog note (4) to document the cluster additions

UPDATED: tracks.md:
- Track #23 status line now lists all 10 clusters
- Goal line updated to say '10 clusters' (was '8')

UPDATED: state.toml deliverable_summary:
- Added v1.2_changes[4] for the cluster additions
- Added cluster_count = 10
- research_sub_reports now lists 7 cluster files (0-9)

The spec/plan/review files still say '8 clusters' — left as
historical context (spec is approved with 8; expanding to 10 is
an editorial decision the user has now made; future revisions of
spec/plan should reflect 10).
2026-06-12 11:10:27 -04:00
ed 074047fed9 conductor(track): Update intent_dsl_survey bookkeeping to v1.2 (213e4994)
Three bookkeeping files updated to reflect the v1.2 deliverable:
- metadata.json: deliverable now points at report_v1.2.md; added
  deliverable_v1_1, final_commit=213e4994
- tracks.md: track #23 heading shows COMPLETE: 213e4994; status
  line lists v1.0 -> v1.1 -> v1.2 history with the 3 v1.2 changes
  (rename, postfix heuristic, nagent fix)
- state.toml: added version='v1.2'; deliverable_summary updated with
  v1_2, v1_1, v1_0 fields and v1_2_changes list
2026-06-12 10:38:19 -04:00
ed bae30cc3a7 conductor(track): Mark intent_dsl_survey_20260612 complete
Three files updated to close out the track:

1. state.toml — all 28 tasks marked completed with their commit SHAs;
   current_phase = complete; all 14 verification flags = true; added
   deliverable_summary section pointing at report_v1.1.md, reportreview.md,
   and the 5 research/ sub-reports.

2. metadata.json — status: complete; added deliverable_v1_0, review,
   and final_commit fields.

3. tracks.md — track #23 heading now reads 'COMPLETE: c7e92896';
   added a 'Status: 2026-06-12 — COMPLETE' line summarizing the
   v1.1 deliverable (1301 lines, 7 sections + 9-subsection appendix,
   42-verb vocab, 8 prior-art clusters, 14-grammar primitives, 4
   hardware anchor claims, 10 AI-agent properties, 8 open questions).

This is the final bookkeeping for the track. nagent v2.2 can now
reference the report's Section 6 (AI-Agent Properties) and Section 7
(Open Questions) for its 'Future-Track Candidate #4: Intent-based
DSL' planning.
2026-06-12 10:10:12 -04:00
ed 72e9a63c86 docs(ideation→track): Move report into intent_dsl_survey_20260612 folder
Per user instruction: the report is too closely related to the track
to live in the general docs/ideation/ folder. It's the track's main
deliverable, not a general ideation doc. The existing convention for
track reports is the track folder (e.g., nagent_review_20260608/report.md).

This commit is the phase 2+3 work:
  - Adds the integrated report (417 lines, 8 ## headings, 40 ###)
    to conductor/tracks/intent_dsl_survey_20260612/report.md
  - Adds 5 Tier 2 sub-reports (1319 lines combined) to
    conductor/tracks/intent_dsl_survey_20260612/research/
  - Removes the old docs/ideation/ location (moved, not duplicated)
  - Updates spec.md, plan.md, metadata.json, tracks.md to point at
    the new location

Report structure:
  Section 1: 4 anchor claims (O'Donnell, Onat/Lottes, CoSy, Jofito)
  Section 2: 8 prior-art clusters (with sub-report references)
  Section 3: 14-primitive grammar + ambiguity flags
  Section 4: 4-tier vocab (12+12+10+8 = 42 verbs)
  Section 5: 4 hardware-mapping anchor claims
  Section 6: 10 AI-agent properties
  Section 7: 8 open questions for follow-up B
  Appendix: bibliography (external, project, sub-reports)

The sub-reports contain the deep analysis with citations; the main
report is the ejecutiva summary. Tier 2 sub-agents handled the heavy
research (5 cluster sub-reports in research/); Tier 1 focused on
integration and writing the simpler sections inline.

Time-sensitive: report must complete before nagent v2.2.
2026-06-12 09:28:06 -04:00
ed 710ac075be conductor(tracks): Register intent_dsl_survey_20260612
Side non-impl research track. Survey of intent-based scripting
languages + 4-tier vocab proposal for a Meta-Tooling-facing intent
DSL. Produces docs/ideation/2026-06-12-intent-based-scripting-languages.md.

Time-sensitive: must complete before nagent v2.2.

- Added table row #23 (A research priority, no blockers)
- Added #### Track section after RAG Phase 4 fix entry
- Links to spec at conductor/tracks/intent_dsl_survey_20260612/spec.md
- Plan to be authored by writing-plans skill
2026-06-12 08:25:52 -04:00
ed 1530f66102 docs(tracks): refresh public_api_migration follow-up with current caller enumeration 2026-06-11 23:40:52 -04:00
ed 8ac8e64dea conductor(archive): ship qwen_llama_grok follow-up track to archive
Both qwen_llama_grok tracks (parent + follow-up) archived
to conductor/archive/ per the parent track's Phase 6 plan.

  conductor/tracks/qwen_llama_grok_integration_20260606/
    -> conductor/archive/qwen_llama_grok_integration_20260606/

  conductor/tracks/qwen_llama_grok_followup_20260611/
    -> conductor/archive/qwen_llama_grok_followup_20260611/

Follow-up state.toml updates:
- status: active -> archived
- current_phase: 5 -> 6
- phase_6 status: pending -> completed
- t4_3 (Meta Llama) reclassified from 'deferred' to
  'cancelled' (the 'deferral' was the agent's invention;
  the real situation is permanent, awaiting Meta)
- t6_1 (Meta Llama API): proper task entry; cancelled
  per the actual situation (no public surface)
- t6_2 (Track archive): proper task entry; completed
- Cleaned up the '3-5 days' / '1-2 weeks' comment in
  deferred_work that the user called out as made up
- Removed duplicate [verification] section markers
  and duplicate keys that crept in from prior edits

tracks.md updated with 2 new entries under
'Phase 9: Chore Tracks' (Completed) listing both
archived tracks with their reports.

Net result: the qwen_llama_grok track family is fully
archived. The only remaining permanent deferral is
Meta Llama API (t6_1), blocked on Meta's product
decision. All other work is in src/ or scripts/
and is reachable from there.
2026-06-11 23:04:25 -04:00
ed 8742c977e7 docs(tracks): add status note to Qwen track entry pointing to follow-up
Adds a status line to the qwen_llama_grok_integration_20260606 entry
in conductor/tracks.md noting that:
- Phases 1-5 are done; Phase 6 (docs) is in progress
- The track is NOT being archived (per user directive)
- A 5-phase follow-up track exists at
  conductor/tracks/qwen_llama_grok_followup_20260611/
- An audit report is at docs/reports/qwen_llama_grok_followup_audit_20260611.md
- 50/79 tasks done; the remaining gaps are documented
2026-06-11 09:33:39 -04:00
ed 691dc584eb docs(phase-6): update ai_client+models guides; report + follow-up track setup
Phase 6 t6.1 + t6.2 (no archive per user directive):
- docs/guide_ai_client.md: update Overview to mention 8 providers (was 5);
  add 'Shared OpenAI-Compatible Helper' section explaining
  src/openai_compatible.py (NormalizedResponse, OpenAICompatibleRequest,
  send_openai_compatible, usage pattern); document the Qwen adapter
  and Llama multi-backend.
- docs/guide_models.md: update PROVIDERS list to 8 entries (was 5).
- conductor/tracks.md: update the Qwen track entry to reflect
  '50/79 tasks done; Phase 6 in progress; NOT archiving - has follow-up';
  add detailed status note pointing to the follow-up track + audit
  report.
- docs/reports/qwen_llama_grok_followup_audit_20260611.md: NEW report
  explaining why a follow-up is needed (7 categories of gaps; the
  Tech Lead's 'footnote for now' failure mode; the lessons learned).
- conductor/tracks/qwen_llama_grok_followup_20260611/: NEW follow-up
  track setup (spec.md, state.toml, metadata.json, TODO.md).
  5 phases: tool loop lift, PROVIDERS move, UX adaptations 2-9,
  local-first + matrix v2, Anthropic/Gemini/DeepSeek migration.

Phase 6 t6.3 (git mv to archive) and t6.4 (mark Recently Completed)
are NOT applied per user directive: 'we can then doc this we're not
archiving yet, if we have a follow up track I need this one to stay
up because there is still alot todo'.
2026-06-11 09:33:18 -04:00
ed 994ded3598 conductor(tracks): consolidate Phase 6+ chronology (3 recently completed + 4 in plan)
The Phase 6+ section had two duplicate '### Active' headers, which
made the chronology confusing. The user (paraphrased): preserve the
chronology of project progress, don't need full detail, follow the
previous restructure's lightweight pattern.

Changes:
- Add '### Recently Completed (2026-06-06 to 2026-06-10)' subsection
  containing the 3 closed tracks (startup_speedup, test_batching_refactor,
  test_infrastructure_hardening) with lightweight entries: per-phase
  commit SHAs only, 1-line summary, link to spec/plan/state folder.
  Trimmed the verbose per-sub-track commentary that was in the old
  startup_speedup entry (the per-sub-track bullets for warmup, status
  indicator, audit violations, post-shipping fixes are in the
  archive's spec/plan, not the tracks.md).
- Remove the duplicate '### Active' header.
- Update section intro to reflect '3 recently completed, 4 in plan'
  (was '2 already completed, 3 in plan').
- test_infrastructure_hardening entry now has phase commit SHAs
  (5df22fa8, 67d0211e, 006bb114, b8fcd9d6, 33d5cac, 7b87bbf5,
  84edb200, 719fe9a) instead of just the closing-report link.

Chronology is now visible at a glance; per-track full detail is
in the linked archive/ folder.
2026-06-10 20:42:00 -04:00
ed 3945fe37fe conductor(tracks): archive test_infrastructure_hardening_20260609 in tracks.md
- Remove row 1 from Active Tracks table
- Update rows 2-5, 17: test_infrastructure_hardening_20260609 -> '(merged)'
- Mark test_infrastructure_hardening as [COMPLETE 2026-06-10] [archived]
- Update link to use archive/ instead of tracks/
- Add closing note: 314/314 tests green, lineage tracks also archived
2026-06-10 20:15:18 -04:00
ed fcb161fd2e conductor(tracks): add test_infrastructure_hardening_20260609 as foundation track + supersede 4 placeholder test tracks 2026-06-09 15:18:20 -04:00
conductor-tier2 999fdea467 docs(c11-interop): cross-reference SSDL digest in See Also
The SSDL digest (docs/reports/computational_shapes_ssdl_digest_20260608.md,
504 lines, 30KB) is the theoretical foundation for the chunkification
pattern. Per the digest's Technique 5 "Assume-away (Xar)" in §2.2
and the "Xar-style chunked arrays" recommendation in §5.2, the
chunkification track is a *direct application* of the SSDL's
"assume as much as possible" lens (§4).

This commit adds the SSDL digest to the See Also of the v1+v2
C11-Python interop assessment (front-matter Cross-references line).
The same cross-reference is also being added to:
- conductor/tracks/chunkification_optimization_20260608_PLACEHOLDER/spec.md
  (in a new §6.1 "SSDL alignment" subsection)
- conductor/tracks/manual_ux_validation_20260608_PLACEHOLDER/spec.md
  (in §5 Architectural Reference + §6 See Also + a new §2.6
  "SSDL cross-reference" section that distinguishes GUI ASCII
  vocabulary from SSDL vocabulary)

No code modified. Cross-reference only.

Also: small update to conductor/tracks.md to add the 2 new
tracks (manual_ux_validation_20260608_PLACEHOLDER as Active;
chunkification_optimization_20260608_PLACEHOLDER as Backlog/Contingency).
2026-06-08 23:42:21 -04:00
conductor-tier2 a9333bbb59 conductor(track-update): code_path_audit_20260607 - post-4-tracks timing + 5-source framing
The user specified that the code_path_audit_20260607 track should run
AFTER the 4 foundational tracks complete (qwen_llama_grok,
data_oriented_error_handling, data_structure_strengthening,
mcp_architecture_refactor). This commit formalizes that timing
and grounds the audit's analytical framing in the 5 sources loaded
into context on 2026-06-08.

3 surgical additions to the spec/plan, no task changes:

1. Post-4-tracks timing (new section in spec.md §"Timing", plus
   a "Timing" callout in plan.md's opening):
   - The 4 tracks will significantly reshape src/ai_client.py,
     src/mcp_client.py, src/app_controller.py, and
     src/type_aliases.py
   - Running the audit on pre-refactor code would produce a
     report that's stale on day 1
   - The post-4-tracks timing ensures the audit grounds
     optimization decisions for the *resulting* architecture
   - Pre-flight check: verify all 4 tracks are [x] completed
     in conductor/tracks.md before starting this track

2. Analytical framing (new section in spec.md §"Analytical Framing
   (5-source lens)"):
   - Maps each of the 5 sources (Fleury taxonomy + Fleury
     combinatoric + Muratori Big OOPs + Reece Assuming + user's
     chunk ideation) to specific audit-time heuristics
   - 4 concrete heuristics: effective-codepath count,
     entity-hierarchy fingerprint, assumed-too-much detector,
     chunkification candidates
   - The heuristics shape REPORT INTERPRETATION, not the
     static cost model (which stays data-grounded in
     EXPENSIVE_THRESHOLD + per-class weights)

3. See Also cross-references in spec.md (6 new entries):
   - nagent_review Pitfalls #2 and #4 (provider history
     globals + stateful singleton)
   - wo84LFzx5nI Big OOPs transcript (full text, 4310
     segments, 200KB; loaded 2026-06-08)
   - i-h95QIGchY Assuming transcript (full text, 3719
     segments, 162KB; loaded 2026-06-08)
   - ed_chunk_data_structures_20260523.md (5-image archive
     of user's chunk ideation, 19KB; saved 2026-06-08)
   - computational_shapes_ssdl_digest_20260608.md (the SSDL
     digest that synthesizes the 4-source computational-shapes
     thinking; the audit's tree/mermaid outputs ARE
     computational-shape visualizations)

4. tracks.md entry updated to include the spec/plan links and
   a brief status note that the audit is post-4-tracks.

5. plan.md has a "Timing" callout at the top stating the 4
   tracks must ship before the plan executes.

No code modified. The audit's tasks (Phases 1-6) are unchanged
in structure; the new sections only add analytical context
and timing constraints.
2026-06-08 22:05:54 -04:00
ed 4548726a2b conductor(tracks): restructure - chronological by phase + status groupings + active queue table 2026-06-08 12:26:56 -04:00
ed fb6b4bd3eb conductor(tracks): mark test_batching_refactor_20260606 as completed 2026-06-08 01:18:20 -04:00
ed 0db5ec3eef conductor(tracks): mark License CVE Audit track as complete
Phase 4 verification complete: 4 atomic commits landed, 28
unit + integration tests passing, the audit script runs
end-to-end against the post-cleanup repo, --strict mode
+ baseline file wired in as the CI gate. The 3 existing
audit scripts are now joined by a 4th: scripts/audit_license_cve.py.

Scope: third-party deps only. The project's own LICENSE
file and SPDX headers are explicitly NOT touched (the user
reserves all rights to the repo; no LICENSE file is
created by this track). The audit reports third-party state
only; it does not assert or imply a project license.

Commits:
  a8ae11d3 - chore(audit): add license_cve audit script + initial report
  20fa3558 - chore(deps): tilde-pin all deps; delete requirements.txt
  a7ab994f - chore(audit): add --strict mode + baseline file (CI gate)
  (this)   - conductor(tracks): mark track complete
2026-06-07 15:28:25 -04:00
ed 9647b8d228 conductor(tracks): mark Unused Scripts Cleanup track as complete
Phase 6 verification complete: 5 atomic per-category commits landed,
non-GUI test suite passes, 2 audit scripts (main_thread_imports,
weak_types) report no new violations, ImGui linter reports the
3 pre-existing src/gui_2.py findings (src/ untouched by this
track; informational mode exit 0). scripts/ shrinks from 56 to
26 files (54% reduction).
2026-06-07 11:30:29 -04:00
ed ca781543ea conductor(plan): mark sub-track 2 (audit violations) COMPLETE [2e3a6385]
All 6 sub-tracks (2A-2F) complete. Audit script: 0 violations (was 67 baseline / 61 before sub-track 2). Track is now FULLY COMPLETE (was previously [~] due to sub-track 2 partial). 79 tests added/passing across sub-tracks 2A-2F. Updated sub_tracks table in state.toml with per-sub-track completion details. Pre-existing test failures (4 unrelated) documented in test_failure_notes.
2026-06-07 11:01:24 -04:00
ed 02239bc38f conductor(plan): mark sub-track 2A (pydantic in models.py) complete [01ddf9f1]
Resuming sub-track 2 (audit violations) per user direction. Sub-track 2A cleared 1 of 61 violations (pydantic in src/models.py via PEP 562 __getattr__ + pydantic.create_model). 60 remain across file_cache (4), api_hooks (4), sloppy (5), app_controller (23), gui_2 (24). Next: 2B (tree_sitter in file_cache.py).
2026-06-07 10:03:48 -04:00
ed a88c748d77 conductor(tracks): un-mark startup_speedup as complete; sub-track 2 still pending
Phase 9 was shipped at 12cec6ae and the 9-phase core plan is done, but the [COMPLETE 2026-06-07] tag was applied prematurely. Sub-track 2 (audit violations) remains partial at ae3b433e with 61 violations remaining: pydantic in models.py (1), tree_sitter in file_cache.py (4), api_hooks.py (4), sloppy.py (5), app_controller.py (23), gui_2.py (24). Reopening the track to finish sub-track 2 in 6 per-file sub-tracks (2A-2F).
2026-06-07 09:36:08 -04:00
ed f09cd4a733 conductor: doc final sync for sub-tracks 2 (partial), 3, 4 + conftest fix 2026-06-06 21:45:27 -04:00
ed 530a29f0d2 conductor(tracks): fix sub-track count in startup_speedup row (4 → 3; sub-track 1 is done) 2026-06-06 20:51:25 -04:00
ed bb2ac6c9c0 conductor: finalize startup_speedup_20260606 docs (sub-track 1 + 3 post-shipping fixes) 2026-06-06 20:45:58 -04:00
ed dd137df750 conductor(tracks): backfill mcp_architecture_refactor SHA in registry 2026-06-06 20:34:35 -04:00
ed 2720a8940c conductor(track): Initialize mcp_architecture_refactor_20260606
Track + metadata + state + tracks.md registration for the 2,205-line
mcp_client.py split into a slim controller + 6 native sub-MCPs + 1
external sub-MCP.

Key design decisions (per user feedback):
- Naming convention: mcp_<type>.py for native MCPs (mcp_file_io.py,
  mcp_python.py, mcp_c.py, mcp_cpp.py, mcp_web.py, mcp_analysis.py).
- ExternalMCPManager class name preserved (moves to mcp_external.py).
- Sub-MCP shape: class with name / description / tools / invoke().
- MCPController: holds ALL_SUB_MCPS list, inverted-dict tool lookup,
  3-layer security (extracted to mcp_client_security.py), schema
  aggregation.
- Each invoke() returns Result[str, ErrorInfo] (from
  data_oriented_error_handling_20260606).
- Backward compat: mcp_client_legacy.py re-exports all 45+ old
  symbols; the 4 existing test files + src/app_controller.py:61
  direct call continue to work.

DSL future (per user notes on APL/K/Cosy): NOT in this track.
Documented in spec §12.1 as the mcp_dsl_20260606 follow-up.
Sub-MCP architecture is the natural unit to pair with a DSL emitter.

7 phases. ~22 task slots. New tests: 9 (one per sub-MCP + controller +
security + legacy). Modified tests: 4 (existing mcp_* tests must
pass unchanged).

Blocked by: data_oriented_error_handling_20260606, data_structure_strengthening_20260606.
Blocks: mcp_dsl_20260606 (future DSL track).
2026-06-06 20:34:00 -04:00
ed 95d1b08142 conductor(plan): Final track summary - 9 phases, 50 tests, 3066ms saved 2026-06-06 18:08:59 -04:00
ed 4e6a86a84c conductor(tracks): backfill data_structure_strengthening_20260606 SHA in registry 2026-06-06 17:51:33 -04:00
ed ed42a97a9b conductor(track): Initialize data_structure_strengthening_20260606
Track + metadata + state + tracks.md registration for the type-aliases
refactor that follows the audit_weak_types.py findings (430 weak sites
across 29 of 61 files; 86% concentrated in 6 high-traffic files).

Key design decisions (per user approval):
- 10 TypeAlias definitions in src/type_aliases.py (Metadata, CommsLogEntry,
  CommsLog, HistoryMessage, History, FileItem, FileItems, ToolDefinition,
  ToolCall, CommsLogCallback).
- 1 NamedTuple (FileItemsDiff) for the _reread_file_items return.
- Mechanical replacement of 345 weak sites across 6 files (NOT 430; the
  remaining 85 are in 23 lower-impact files deferred to future tracks).
- scripts/audit_weak_types.py gains a --strict mode and a baseline file
  (scripts/audit_weak_types.baseline.json) so the count is enforced.
- 2 phases: aliases + 6-file replacement + audit baseline; NamedTuples
  + docs + archive.
- Honest about what's missing: TypedDict / @dataclass migration is a
  follow-up track (typed_dict_migration_20260606), not this one.
- Coexistence with the data_oriented_error_handling_20260606 track's
  Result[T] / ErrorInfo: the aliases are value-level (data types), Result
  is control-level (wrapper). They compose (Result[FileItems] is valid).
  No conflict.

Audit baseline:
- Pre-track: 430 weak sites, 0 strong patterns
- Target after Phase 1: ~60 weak sites (only the 23 lower-impact files)
- Top 4 unique type strings account for 86% of findings (4-6 aliases
  eliminate the bulk of the noise).

Not blocked by anything; can be executed independently of the other
pending tracks. Blocks typed_dict_migration_20260606 (the future Phase 2).
2026-06-06 17:49:22 -04:00
ed b91962e458 conductor(plan): Mark Phase 5D complete - gui_2 lazy proxy + dead import removal 2026-06-06 17:19:14 -04:00
ed 32edad0a4b conductor(plan): Mark Phase 5A-5C complete (commands, theme_2, markdown_helper lazy imports) 2026-06-06 17:01:05 -04:00
ed cbc3b075a0 conductor(track): Initialize data_oriented_error_handling_20260606
Track + metadata + state + tracks.md registration for the Fleury-pattern
error handling refactor.

Key design decisions (per user approval):
- Option A for _send_<vendor>() handling: rename to _send_<vendor>_result()
  and change return type to Result[str] (contained to internal callers).
- send() is marked @typing_extensions.deprecated; send_result() is the new
  public API.
- ProviderError exception is FULLY REPLACED by ErrorInfo dataclass
  (a value, not an exception).
- 5 phases: foundation, mcp_client, ai_client, rag_engine, deprecation+archive.
- Post-tracks baseline check (Phase 1 Task 1.1) verifies the 3 pending
  tracks have merged before proceeding.
- 9 Open Questions, 7 Risks, 5 verification criteria, follow-up track
  public_api_migration_20260606 planned in spec §12.1.

Blocked by: startup_speedup_20260606, test_batching_refactor_20260606,
qwen_llama_grok_integration_20260606. Blocks: public_api_migration_20260606.
2026-06-06 16:58:22 -04:00
ed a0ff1bde91 conductor(plan): Mark Phase 4 complete - app_controller fastapi import removal + _require_warmed lift 2026-06-06 16:36:20 -04:00
ed 8905c26bff conductor(plan): Mark Phase 3 complete - ai_client SDK import removal done 2026-06-06 16:11:14 -04:00
ed 055430a75a conductor(tracks): Register qwen_llama_grok_integration_20260606 in registry (item 0d) 2026-06-06 14:56:55 -04:00
ed cbfd78c51d conductor(tracks): Register test_batching_refactor_20260606 in registry 2026-06-06 14:14:11 -04:00
ed 32e633b3ec conductor(plan): mark startup_speedup_20260606 track creation committed (cd4fb045) 2026-06-06 13:01:32 -04:00
ed cd4fb04541 conductor(track): create startup_speedup_20260606 track for sloppy.py startup latency
Fulfills the existing backlog entry at conductor/tracks.md:152
(2026-06-05 root-cause analysis of live_gui wait_for_server timeouts).

Main Thread Purity Invariant: the main thread (entering immapp.run())
must never import a module heavier than imgui_bundle and the lean
gui_2 skeleton. Enforced by:
  - static gate: scripts/audit_main_thread_imports.py (CI)
  - runtime hook: tests/test_main_thread_purity.py (sys.addaudithook)

Threading constraint: no new threading.Thread(...) calls in src/.
All background work goes through AppController._io_pool
(ThreadPoolExecutor, max_workers=4, thread_name_prefix='controller-io').

9 phases, 57 tasks: audit+baseline, job pool, lazy-load SDKs, lazy-load
FastAPI, lazy-load feature-gated GUI, migrate ad-hoc threads, runtime
enforcement, hook API + diagnostics, verify+checkpoint.

Expected savings: ~2000-2400ms off main-thread import cost.
Target: import src.ai_client < 50ms (from ~1800ms), live_gui fixtures
no longer time out at wait_for_server(timeout=15).
2026-06-06 12:57:20 -04:00
ed 9d72d98b50 conductor(tracks): mark rag_phase4_stress_test_flake resolved (commit 16412ad5) 2026-06-06 11:29:03 -04:00
ed 5e0b6bbfd3 conductor(tracks): queue RAG test flake as new backlog item; mark prior_session complete 2026-06-06 01:35:21 -04:00
ed 9a3831897b conductor(tracks): mark live_gui_test_hardening_v2 complete (root cause was indent, not state sync) 2026-06-06 01:28:02 -04:00
ed 5c23ad190d conductor(tracks): link v2 to 4 sub-track specs and plans 2026-06-05 22:56:55 -04:00