From 0452a605adb2b0139d93daf1369e2d6dce021e76 Mon Sep 17 00:00:00 2001 From: Eric Rakestraw Date: Mon, 11 May 2026 13:33:13 +0000 Subject: [PATCH] Document Phase 3 rewrite status --- docs/rewrite-notes.md | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/docs/rewrite-notes.md b/docs/rewrite-notes.md index 81e6739..467f4fa 100644 --- a/docs/rewrite-notes.md +++ b/docs/rewrite-notes.md @@ -52,6 +52,46 @@ The Go implementation should preserve the following public behaviors where pract - failed-run diagnostics preservation; - skipped-change reporting instead of crashing on stale or unsafe proposal application. +## Current Go rewrite status (Phase 3 foundation) + +The Go rewrite now includes deterministic foundation pieces needed before real module/LLM behavior: + +- typed transcript parsing and validation (bare array or `{ "segments": [...] }`); +- typed glossary YAML parsing and validation; +- deterministic transcript normalization and normalization summary; +- deterministic token estimation; +- contiguous transcript chunking with section metadata; +- correction proposal data models and enriched proposal metadata; +- replacement policy handling (`require_unique`, `replace_all`); +- safe per-segment proposal preview; +- deterministic transcript proposal application in stable proposal-index order; +- applied and skipped change records with stable skip reasons; +- report/diagnostic-oriented chunking summary and chunk metadata hooks; +- minimal framework contracts/interfaces for future modules, validators, and structured LLM clients; +- test-only fake-module composition tests proving chunking and proposal application can work together. + +The Go rewrite does **not** yet include end-to-end transcript polishing behavior: + +- no real module execution pipeline yet; +- no real `glossary`, `homophones`, `spoken_word`, or `grammar` module implementations; +- no LLM proposal generation; +- no validator-chain execution; +- no concrete structured LLM client implementation; +- no final LLM-driven transcript polishing behavior comparable to Python production runs. + +This means the Go binary should not be described as a complete LLM transcript polisher yet. + +## Developer quick note + +Use these commands while developing deterministic rewrite phases: + +```sh +go test ./... +go run ./cmd/audita process internal/cli/testdata/tiny_transcript.json --glossary internal/cli/testdata/tiny_glossary.yaml --output /tmp/audita-go-output.json --report-json /tmp/audita-go-report.json +``` + +The second command is a representative CLI wiring check only; it is not a real LLM polishing run in the current phase. + ## Phase 0: Freeze the Python implementation as the reference Before writing substantial Go code, preserve the behavior of the current Python implementation.