Repository navigation
Sliding Weights lesson server: rejected lessons do not shift later training checks - #1029
Draft
ThinkOffApp wants to merge 4 commits into
Draft
ThinkOffApp wants to merge 4 commits into
ThinkOffApp wants to merge 4 commits into
Conversation
A lesson's number decides which personal prompts it holds back to check (heldBack) and which bank questions it checks; it was advanced for every lesson written, so a lesson the learner later gave up on (taken out, nothing of it kept) changed what every later kept lesson was fitted on. It now counts kept lessons only: Teacher.nth() is the number a lesson being written uses, and slide.learn calls Teacher.ended(kept). Test: slide_teacher_test.zig, a given-up lesson leaves the next kept lesson's checks as if it never ran. Negative control: with the old count put back (every lesson advances it) the test fails (368 of 369 in the server test binary). On a GB10 (L6-seed1 day-1 facts, night-1 order, three of ten given up), the model with the day-2 notes in the prompt answers 35 of 56 (before: 30; untaught: 34).
Exercise kept, given-up, kept lessons through POST /v1/slide/learn with a scripted engine. Compare the personal training prompts against the same kept lessons without the rejected lesson and require the prompts to rotate between kept lessons. The regression fails both when the ended(back) call is removed and when lesson numbering advances unconditionally.
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.
Each Living Weights lesson rotates the personal prompts held back for checks. Previously the counter advanced when a lesson was written, even if the learner later gave it up. A rejected lesson therefore changed the training and checks for later lessons.
Count kept lessons instead: the builder reads
Teacher.nth(), and the real/v1/slide/learnpath callsTeacher.ended(recalled)after training. With no rejected lessons, numbering stays the same. Lessons that error during construction or return no usable training examples also no longer advance the counter. The counter remains in memory and resets on server restart, as before.Validation:
endedcall is removed, and separately when unconditional counting is restored. Both negative controls were independently reproduced.76aafcf2),zig build test-server-cpu --summary allpasses all 435 tests on Zig 0.17.0. The route test uses TensorFold’s portable socket helper. Both negative controls were rerun ata3d59f25and fail in the real route test for the intended reasons. The earlier full host build passed 204/204 steps with cached results reused; native build and formatting checks also passed.In the existing GB10 experiment (one seed, one night, Nemotron 3.5 Lightning 30B-A3B MLX 4-bit), the same ten facts are taught in order; seven are kept and three given up. Correct answers out of 56:
The all-notes result is no longer below the untaught control in this one run; it is not evidence of a general improvement. Two question-level regressions remain (cat-eye comparison and Ana's country). The experiment binary also contained an optional notes-context change with that option disabled; that change is excluded here. No new GPU training run was performed for the regression-test handoff. The longer five-day promotion runs remain pending.