Commit Graph
459 Commits
Author SHA1 Message Date
ed 396eb82c1a conductor(track): init result_migration_review_pass_20260617 (sub-track 1 of 5)
Sub-track 1 of the 5-sub-track result_migration_20260616 campaign.
Audit-driven research task: classify 43 ambiguous exception-handling sites
(24 UNCLEAR + 19 INTERNAL_RETHROW across 11 files) and update the
audit script's heuristics. No production code change.

Scope: 11 files, 43 sites, T-shirt S. The per-site decisions feed
sub-tracks 2-4 (small_files, app_controller, gui_2) as their starting
migration scope.

Files: spec.md, plan.md, metadata.json, state.toml under
conductor/tracks/result_migration_review_pass_20260617/. Row added
to conductor/tracks.md.
2026-06-17 14:45:52 -04:00
ed 54eb4740b3 conductor+layout: remove T-shirt size metric, regenerate stale layout
Per user feedback 2026-06-17:
- T-shirt size is not an acceptable sizing metric. Remove it from
  conductor/workflow.md (the policy file), conductor/tracks.md (the
  registry), and docs/reports/NEGATIVE_FLOWS_INVESTIGATION_20260617.md.
- Regenerate manualslop_layout.ini to remove 83 stale window references
  that pointed to deleted/renamed windows (Projects, Files, Screenshots,
  Provider, System Prompts, Discussion History, Comms History, etc.).
  Layout now matches the windows registered in src/app_controller.py
  _default_windows (lines 1862-1886). Stale window count: 10 -> 3.

T-shirt size removal details:
- conductor/workflow.md: Removed the S/M/L/XL table, the replacement
  pattern row, and the 'reasonable effort' guard's reference. Scope
  (N files, M sites, N tasks) is the only effort dimension.
- conductor/tracks.md: Removed the T-shirt column from the table header
  and removed T-shirt size mentions from the Fable track entry.
- docs/reports/NEGATIVE_FLOWS_INVESTIGATION_20260617.md: Removed the
  T-shirt size mention in the follow-up track suggestion.

Layout fix:
- manualslop_layout.ini went from 17,360 bytes (102 windows, 83 stale)
  to 3,361 bytes (23 windows, all matching _default_windows). The
  stale window warning dropped from 10 windows to 3 (Message, Tool
  Calls, Response - these are in _default_windows but reference
  separate panels in the layout).

Verification: layout fix did NOT fix the underlying stack overflow crash.
After layout fix, the test still dies with rc=3221225725 (0xC00000FD).
The user noted 'Something more fundamental is wrong.' Investigation
continues; this commit only addresses the explicit ask (remove T-shirt,
fix layout).
2026-06-17 12:23:03 -04:00
ed 86fc1c5477 Merge branch 'master' of C:\projects\manual_slop into tier2/send_result_to_send_20260616 2026-06-17 02:00:56 -04:00
ed 8eaf694f4a conductor(tracks): Register fable_review_20260617 in tracks.md
New research track for critical analysis of Anthropic's Claude Fable 5 system prompt. Added as row 25 in the Active Tracks table (Priority B research) and as a section in the new 'Active Research Tracks (2026-06+)' grouping. The companion spec + metadata + state.toml are committed in 058e2c93 and a6114ef9.
2026-06-17 01:19:45 -04:00
ed 9a5d3b9c8c conductor(plan): Mark Task 6.3 complete - register in tracks.md
Added entry after the Tier 2 Autonomous Sandbox track (its parent
dependency). Status: shipped 2026-06-17. Notes: 6 phases, 10 atomic
rename commits, 37 files modified, 0 new/deleted. Test inventory:
100/101 pass in renamed files; 7 broader pre-existing failures all
due to missing credentials.toml (confirmed against origin/master).
2026-06-17 01:18:02 -04:00
ed 2f79f19989 conductor(plan): register tier2_autonomous_sandbox_20260616 in tracks.md 2026-06-16 23:21:21 -04:00
ed 4a55a14fc0 conductor: register result_migration_20260616 in tracks.md (umbrella + 5 sub-tracks) 2026-06-16 10:26:10 -04:00
ed 4b8363bd71 conductor: register exception_handling_audit_20260616 in tracks.md 2026-06-16 09:09:34 -04:00
ed ba04363003 conductor(track): mark rag_test_failures_20260615 as completed
Updated metadata.json: status=completed, completed_at=2026-06-15,
verification_criteria filled with actual results.

Updated tracks.md: status=shipped, 4-commit summary, test file added.

Final result: 1288 pass + 4 skip + 0 fail. All 11 batched test tiers pass
in 873.6s. First fully green baseline since 2026-06-12.
2026-06-16 00:31:26 -04:00
ed 29c64a0125 conductor: register rag_test_failures_20260615 in tracks.md + update public_api row 2026-06-15 21:56:20 -04:00
ed 0c9086afda conductor: register public_api_migration_and_ui_polish_20260615 in tracks.md + update UI Polish row 2026-06-15 15:27:04 -04:00
ed 6f4bd75ef9 conductor: register doeh_test_thinking_cleanup_20260615 in tracks.md + mark ai_loop_regressions_20260614 shipped 2026-06-15 12:22:56 -04:00
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