Week 4 Phase 1A: solution-free starter surface + sync guards - #260
Closed
skyzh wants to merge 1 commit into
Closed
Conversation
Task #201 (Phase 1A of course delivery) on frozen stack #259 top 563b114. - starter workspace.py: rewritten to the simplified refsol surface (authorization core + receipts; no journal/undo/session binding). - starter loop.py: rewritten to the Day-1 contract (duck-typed session recording; no context/control/session imports). - starter generation.py: duck-typed cancellation (control stays Day 6). - starter receipts.py: added ReceiptStore.close. - starter __init__.py: exports exactly the refsol __all__ (52 names). - removed stale old-course starter modules: context.py, evaluation.py, recovery.py. - tests_refsol/test_week_4_starter_sync.py (new): fail-closed drift guards — starter/refsol API parity per module, starter solution-free (pass/TODO-only bodies), reference implements every starter member, feature/day map, __all__ parity, stale-module absence. 54 sync tests. Gates: 159/159 week-4 tests (105 refsol + 54 sync); ruff check + format clean; weeks 1-3 unchanged. No refsol/book edits; stack #259 untouched.
Owner
Author
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
Phase 1A of the Week 4 course delivery (task #201, under Cindy's task #200): audit and complete the solution-free learner starter against all nine feature APIs and the 7-day map, with fail-closed synchronization and anti-leakage controls. Stacked on the frozen reference stack (#258); base branch
agent/week4v3-cow-radix-plan@563b114. Stack #259 is untouched.What changed
src/tiny_llm/agent/workspace.py— rewritten to the simplified reference surface (authorization core + effect receipts; no journal/undo/session binding, matching Day 2's simplified design).src/tiny_llm/agent/loop.py— rewritten to the Day-1 contract: duck-typed session recording, no context/control/session imports (matches the reference loop signature).src/tiny_llm/agent/generation.py— duck-typed cancellation socontrolstays a Day 6 module.src/tiny_llm/agent/receipts.py— addedReceiptStore.close.src/tiny_llm/agent/__init__.py— exports exactly the reference__all__(52 names); removed stale old-course exports.context.py,evaluation.py,recovery.py.tests_refsol/test_week_4_starter_sync.py(new) — fail-closed guards: starter/reference API parity per module, starter bodies are solution-free (pass/TODO only), the reference implements every starter member, feature/day map,__all__parity, stale-module absence. 54 sync tests.Review note
AI-Assisted: DeepSeek V4 Flash + Forge