Bill
452603ae7f
Add strict/hybrid library policy with auto/ask/options modes
2026-03-03 10:22:05 -07:00
Bill
e24f677dde
Wire availableLibraries into taskitem generation dispatch
2026-03-03 09:50:05 -07:00
Bill
a474a87f50
Fix MCP build includes and queue task parsing compatibility
2026-03-03 09:36:54 -07:00
Bill
d7caaa8762
Sprint 290: CUDA End-to-End Proof (steps 1978-1982)
...
CUDALibraryProfile, CUDASymbolCatalog, ProjectStackDeclarator,
ProofPipelineRunner, Sprint290IntegrationSummary. 25/25 tests passing.
End-to-end proof: "GPU matrix multiply. JSON result serialization."
-> cublas for compute.matrix, nlohmann_json for serialization.json.
Phase 6: Library Dispatch COMPLETE (Sprints 286-290, steps 1958-1982).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-02 10:27:47 -07:00
Bill
03dc4dc208
Sprint 289: Integration into generate_taskitems (steps 1973-1977)
...
EnrichedExecutionContract, TaskitemLibraryAnnotator, AnnotatedTaskitemValidator,
DispatchJustificationReport, Sprint289IntegrationSummary. 25/25 tests passing.
Full pipeline: spec -> classifier -> selector -> advisor -> enriched contracts.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-02 10:21:06 -07:00
Bill
a410c9c756
Sprint 288: LibrarySymbolAdvisor (steps 1968-1972)
...
Specific API symbol recommendation layer. Five new headers:
- LibrarySymbolRecord: functionName/signature/usagePattern/caveats
- LibrarySymbolCatalog: multi-symbol registry per (library, domain)
- LSPSymbolExtractor: parses LSP JSON into LibrarySymbolRecords
- LibrarySymbolAdvisor: ranked symbols for (library, domain) alphabetically
- Sprint288IntegrationSummary: CUDA+nlohmann catalog; cublasSgemm+json::parse verified
25/25 tests passing.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-02 10:11:23 -07:00
Bill
2a40cb1ba5
Sprint 287: PerTaskLibrarySelector (steps 1963-1967)
...
Deterministic library dispatch layer. Five new headers:
- LibrarySelection: result struct with avoidedLibraries + justification
- OperationClassifier: wraps taxonomy with ClassificationResult
- PerTaskLibrarySelector: sort by score, pick max, build avoided list
- SelectionJustificationLog: append-only auditable selection log
- Sprint287IntegrationSummary: 8-task spec, all selections verified
25/25 tests passing.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-02 10:04:39 -07:00
Bill
b5c8b46117
Sprint 286: OperationTaxonomy + LibraryCapabilityLedger (steps 1958-1962)
...
Phase 6 Library Dispatch foundation. Five new headers:
- OperationDomain: dot-key hierarchy with parent traversal
- LibraryCapabilityRecord: score/APIs/weaknesses + validator
- LibraryCapabilityLedger: (library, domain) -> record registry
- OperationTaxonomy: 40+ domain tree, keyword-based classify()
- Sprint286IntegrationSummary: 8-library seed ledger + verified lookups
25/25 tests passing.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-02 09:48:30 -07:00
Bill
8c5fb9a6ad
Sprint 285: poly-everything (steps 1953–1957)
...
Final Phase 5 sprint: unified polyglot orchestration over 8 languages
(C++, Python, Rust, Go, Haskell, TypeScript, Java, Lisp)
Components:
- PolyglotFunctionMap: (language, functionName) → implementation tag registry
- PolyglotExecutionContext: per-language runtime config (timeout_ms/env/working_dir)
- PolyglotResultAggregator: FunctionResult collection + AggregateReport (pass/fail/duration)
- PolyglotOrchestrator: ties all three; recordResult; runSummary
26/26 tests pass. Phase 5 (The Proof) complete.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-01 22:38:02 -07:00
Bill
0f6d10e39a
Sprint 284: poly-compiler (steps 1948–1952)
...
5-phase compiler pipeline: C++(lex)→Haskell(parse)→Rust(typecheck)→Lisp(optimize)→Go(emit)
Components:
- CompilerPhaseSpec + CompilerPhaseRegistry: phase descriptors sorted by order field
- CompilerIRNode + IRNodePipeline: IR node kinds (Source→Token→AST→TypedAST→OptimizedAST→Bytecode) + queue
- CompilerPhaseRouter: IRNodeKind→phaseId routing with optional fallback
- CompilerPipelineRunner: chains PhaseTransform functions in order, supports runUpTo
26/26 tests pass.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-01 22:32:40 -07:00
Bill
95cf04008e
Sprint 283: poly-pipeline (steps 1943–1947)
...
PipelineStageSpec/Registry, PipelineGraph (Kahn topo sort), PipelineExecutionPlan,
PipelineParityValidator — 26/26 tests pass.
Integration step 1947: Python→Rust→Go→Haskell→TypeScript pipeline verified.
Metrics: 7 whetstone calls, 8566 tokens.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-01 22:25:57 -07:00
Bill
84708da611
Sprint 282: Polyglot test harness (steps 1938–1942)
...
PolyglotSpecRunner, BehavioralParityChecker, ParityRegressionGuard,
PolyglotSuiteOrchestrator — 26/26 tests pass.
Integration step 1942: poly-sort Python+Rust+Go parity verified.
Metrics: 7 whetstone calls, 8855 tokens.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-01 22:21:40 -07:00
Bill
99cc6319c0
Sprint 281: DAP Hardening (steps 1933–1937)
...
DAPRequestValidator, DAPCapabilityNegotiator, DAPEventBroadcaster,
DAPBreakpointHitDispatcher — 26/26 tests pass.
Integration step 1937: Python+Rust DAP session round-trip verified.
Also adds allBreakpoints() to ASTNodeBreakpointMapper.
Metrics: 8 whetstone calls, 8853 tokens.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-01 21:45:53 -07:00
Bill
bbac434b16
Sprint 280: Cross-language step + breakpoints (steps 1928–1932)
...
CrossLanguageStepOverHandler, CrossLanguageStepIntoHandler,
ASTNodeBreakpointMapper, BreakpointSyncOrchestrator — 26/26 tests pass.
Integration step 1932: Go+TypeScript poly-API round-trip verified.
Metrics: 7 whetstone calls, 5587 tokens.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-01 21:31:05 -07:00
Bill
3808caa1d5
Sprint 279: DAP Orchestration Core (steps 1923-1927)
...
- DAPProxyServer: DAP JSON dispatcher, routes by command, default handlers for
all standard DAP commands, response envelope with seq/type/request_seq/success
- DebugAdapterRouter: per-language adapter capability registry; routeCommand gates
on active language AND adapter support
- PolyglotStackTraceDecoder: infers language from source extension, marks boundary
frames where adjacent frames differ in language, sets astNodeId per frame
- LanguageSeamFrameDetector: detectSeams/primarySeam/seamCount/frameLanguages/
crossesBoundary over decoded polyglot stacks
- Sprint279IntegrationSummary: poly-sort (Python+Rust) end-to-end DAP pipeline
26/26 tests passing (5+5+5+5+6). All new headers well under 600 lines.
LoRA recorded: sprint279-2026-03-01 (7 calls, 5535 tokens).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-01 21:08:37 -07:00
Bill
4d47e894c1
Sprint 278: LSP Proxy Hardening (steps 1918-1922)
...
- LSPMessageValidator: JSON-RPC 2.0 shape validation (method, id type, params type)
- LSPCapabilityNegotiator: per-source capability tracking; shouldRoute gates on declared caps
- LSPRequestThrottler: per-URI/method debounce; blocks rapid didChange floods
- LSPErrorRecovery: per-source health tracking; stale-cache fallback when crashed
- Sprint278IntegrationSummary: poly-parse (C++ + Haskell) end-to-end integration
26/26 tests passing (5+5+5+5+6). All new headers well under 600 lines.
LoRA recorded: sprint278-2026-03-01 (9 calls, 6437 tokens).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-01 20:28:31 -07:00
Bill
67c3c73046
Sprint 277: LSP Advanced Orchestration (steps 1913-1917)
...
- LSPWorkspaceIndex: track open docs, URI→{languageId,content,version}
- LSPDiagnosticsAggregator: merge diagnostics from multiple LSP sources per URI
- LSPCompletionMerger: merge+deduplicate completion items from multiple sources
- LSPOrchestrator: top-level coordinator composing all three + proxy + cross-lang resolver
- Sprint277IntegrationSummary: poly-api (Go+TypeScript) end-to-end integration
26/26 tests passing (5+5+5+5+6). All new headers ≤600 lines.
LoRA recorded: sprint277-2026-03-01 (1 call, 569 tokens).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-01 20:18:23 -07:00
Bill
94f61dc97c
Sprints 273-276: Polyglot FFI Glue, Symbol Index, and LSP Proxy (steps 1893-1912)
...
Sprint 273 — PolyglotFFIGlueGenerator (steps 1893-1897):
ABIBoundaryExtractor, CHeaderEmitter, RustPythonBindingEmitter,
GoCppBindingEmitter. Extracts exported symbols from toComponent provider
and emits C ABI + language-specific bindings.
Sprint 274 — More Binding Pairs + DWARF (steps 1898-1902):
CppJSBindingEmitter (N-API), RustGoBindingEmitter (#[no_mangle]),
DWARFBoundaryAnnotator (DW_TAG_* + crossLangBoundary),
FFIGlueDispatcher (routes by fromLang→toLang pair),
MCP tool whetstone_generate_ffi_glue (#92 ).
Sprint 275 — Cross-Language Symbol Index (steps 1903-1907):
SCIPEmitter (SCIP JSON, one doc/language, caller+provider roles),
CrossLanguageSymbolTable (byLangName_ + byScip_ dual index),
SymbolIndexUpdater (nodeKey diff, clear-and-rebuild),
SymbolIndexOrchestrator (orchestrate + update),
MCP tool whetstone_emit_symbol_index (#93 ).
Sprint 276 — LSP Proxy Core (steps 1908-1912):
LSPProxyServer (JSON-RPC 2.0 dispatcher),
LanguageServerRouter (routeByUri/routeByLanguageId),
CrossLanguageBoundaryDetector (detect/detectWithUri/detectInLanguage),
CrossLanguageDefinitionResolver (resolve/resolveFromUri → DefinitionLocation).
End-to-end: Python call site goto-def resolves to Rust sort-core provider.
100/100 tests passing across all four sprints. Architecture gate clean.
LoRA sessions recorded for all sprints (~14k tokens captured).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-01 18:41:32 -07:00
Bill
1f1234b28b
Sprint 272: fitness-routed polyglot test projects — Phase 2 (steps 1888-1892)
...
Added PolyglotProjectSpec data model and three concrete 2-language test
project fixtures, all routing correctly via LanguageFitnessScorer.
New headers:
- PolyglotProjectSpec.h: PolyglotInterface, PolyglotSection, PolyglotProjectSpec,
PolyglotFitnessRouter (explicit override + auto-routing via scorer)
- PolySortProject.h: sort-core → Rust, data-gen → Python
- PolyApiProject.h: http-server → Go, api-client → TypeScript
- PolyParseProject.h: lexer → C++, ast-transform → Haskell
- Sprint272IntegrationSummary.h
25/25 tests passing (steps 1888-1892). All new headers ≤ 600 lines.
tools/claude/tools.json: added whetstone_score_language_fitness (tool 91).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-01 14:17:33 -07:00
Bill
d98fc26c05
Sprint 271: LanguageFitnessScorer — polyglot Phase 1 (steps 1883-1887)
...
Add language fitness scoring infrastructure for the polyglot orchestrator.
New components:
- ASTFeatureExtractor.h: extract 5 scalar features from JSON AST subtrees
(mutation ratio, recursion shape, concurrency primitive, I/O pattern, type complexity)
- LanguageIdiomProfile.h: static ideal feature vectors for 8 languages
(Python, Rust, Go, Haskell, C++, TypeScript, Elixir, Lisp)
- LanguageFitnessScorer.h: weighted scoring against profiles, returns JSON
array sorted descending with per-language score and rationale
- RegisterLanguageFitnessTools.h: whetstone_score_language_fitness MCP tool
- Sprint271IntegrationSummary.h: sprint metadata
25/25 tests passing (steps 1883-1887). whetstone_mcp rebuilt with new tool.
Also: merge PROGRESS.md into progress.md (single authoritative log, 15k lines),
update CLAUDE.md to current state (step 1887, sprint 271, 91 tools).
LoRA session recorded: sprint271-polyglot-fitness-2026-03-01
(5 tool calls: architect_intake, generate_taskitems, 3x generate_code)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-01 13:55:38 -07:00
Bill
de5bdd358f
Close all 26 generator readiness gaps (sprints 267-270)
...
Sprint 268: GR-002/003/006/007/008/016/017/019/021/024 — self-containment,
graduation thresholds, asm/ir/jvm/elixir lang coverage, semanno format.
Sprint 269: GR-005/011/013/015 — prose capture in RequirementsParser,
GateEnforcer, ParitySkewAnalyzer, CrossArtifactConsistencyEngine.
Sprint 270: GR-009/010/012/014/018/020 — CrossFileTransactionGate,
SemanticCompletionGate, ConstrainedProjectionGate, TokenBudgetGate,
CppConstraintRefactorPolicy, NativeDecompositionDepthGuard.
All 50 new tests passing (steps 1873-1882, 5/5 per step).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-02-28 22:28:41 -07:00
Bill
597fe4eded
Add raw score/gate parity packet and enforcement (sprint 265)
2026-02-26 17:04:24 -07:00
Bill
bfe44cd6d8
Align raw scoring and impact gate task-set parity (sprint 264)
2026-02-26 17:02:13 -07:00
Bill
fe85f1b515
Add raw structural projector before candidate scoring (sprint 263)
2026-02-26 16:59:28 -07:00
Bill
f534d7f0fa
Add raw output-shape template control pack (sprint 262)
2026-02-26 16:56:09 -07:00
Bill
181f289dd1
Add intrinsic prompt-pack intervention for raw generation (sprint 261)
2026-02-26 16:40:19 -07:00
Bill
42c53da5c6
Add signal-targeted intrinsic raw variant expansion (sprint 260)
2026-02-26 16:37:57 -07:00
Bill
ba1e0dc3e8
Add adaptive raw top-gap retry loop (sprint 259)
2026-02-26 16:33:19 -07:00
Bill
df0de8156b
Add backlog-driven raw top-gap requirement injection (sprint 258)
2026-02-26 16:30:49 -07:00
Bill
fd8d582db7
Add top-gap uplift hard gate for raw candidate search (sprint 257)
2026-02-26 16:27:39 -07:00
Bill
39575cb383
Add top-gap weighted raw candidate selection telemetry (sprint 256)
2026-02-26 16:25:57 -07:00
Bill
057fcd4087
Add raw top-gap hardening stage for native tasks (sprint 255)
2026-02-26 16:23:19 -07:00
Bill
5feb05e900
Add raw gap backlog synthesis from ladder runs (sprint 254)
2026-02-26 15:59:33 -07:00
Bill
b6c91c9d64
Add batch closure ladder analytics and runner (sprint 253)
2026-02-26 15:48:33 -07:00
Bill
28b29dfd30
Add richer raw variants and history-aware ladder routing (sprints 251-252)
2026-02-26 15:46:11 -07:00
Bill
2c422fedda
Add automatic native profile closure ladder runner (sprint 250)
2026-02-26 15:42:35 -07:00
Bill
8e0018ef80
Add raw candidate search scoring and no-uplift guardrail (sprints 248-249)
2026-02-26 15:41:20 -07:00
Bill
dfb10ea40f
Add single-shot profile shaping closure path (sprint 247)
2026-02-26 15:33:36 -07:00
Bill
daf9d9b8c4
Add intrinsic multishot decomposition closure path (sprint 246)
2026-02-26 15:31:36 -07:00
Bill
d4b7e8ce48
Add intrinsic first-pass decomposition boost path (sprint 245)
2026-02-26 15:19:21 -07:00
Bill
b68f7edc84
Add first-pass profile autofill closure path (sprint 244)
2026-02-26 15:17:56 -07:00
Bill
050fee9480
Add profile task-bundle remediation loop closure (sprint 243)
2026-02-26 15:10:41 -07:00
Bill
ee38182b79
Add native impact remediation synthesis loop (sprint 242)
2026-02-26 15:08:36 -07:00
Bill
3c04216a54
Add impact-by-impact native decomposition coverage gates (sprint 241)
2026-02-26 15:05:21 -07:00
Bill
e9dd06205e
Add native decomposition retry telemetry path (sprint 240)
2026-02-26 14:57:16 -07:00
Bill
9e39181f77
Add native reason enrichment for semantic signals (sprint 239)
2026-02-26 14:55:26 -07:00
Bill
5eaaa7cc56
Add native decomposition quality gate to pipeline (sprint 238)
2026-02-26 14:54:15 -07:00
Bill
7b33aeb24b
Add semantic fallback gap audit and budget gate (sprints 236-237)
2026-02-26 14:53:07 -07:00
Bill
3de32bc3d1
Implement sprint 235 native-first semantic expansion policy
2026-02-26 14:50:32 -07:00
Bill
7965899771
Add sprint 234 semantic planning coverage gate
2026-02-26 14:34:41 -07:00