Joseph Doherty
d759b90aa1
fix: plumb narrate_skip timeout_s through to client.generate (T76)
2026-04-26 21:40:29 -04:00
Joseph Doherty
fb7e97260b
docs: add Phase 3.5 cleanup plan (Phase 2.6/3 + 3.5/4 backlog burn-down)
...
12 tasks across 7 waves consolidating the 17-item backlog tracked in
CLAUDE.md (7 from Phase 2.6/3 + 10 from Phase 3.5/4). Items are
grouped by file ownership so each wave stays file-disjoint:
- Wave 1 (parallel 4-way): trivial single-line/single-file fixes
(timeout_s plumbing, Literal type, docstring, defensive None)
- Wave 2 (single): scene_summarize.py polish bundle (5 T58 items)
- Wave 3 (single): typed ChatNotFoundError for skip routes
- Wave 4 (single): turns.py wiring (consume_pending_meanwhile_digests
+ natural-language skip runs scene close detection)
- Wave 5 (single): regenerate.py polish (cancel hook + DRY +
sibling query + lifecycle rollback documentation + ordering)
- Wave 6 (parallel 3-way): unified record_turn_memory API + JSON
audit + frontend turn_html_replace SSE handler
- Wave 7 (single): docs sweep
No schema migrations. Bundled tasks split into per-item sub-commits
for clean review bisection. Uses task ids T76-T87 to avoid collision
with prior phases (Phase 3 used T49-T67, Phase 2.5 used T68-T75).
2026-04-26 21:33:16 -04:00
dohertj2
753cec327f
Merge pull request 'Phase 3: events, time skips, threads, meanwhile scenes' ( #4 ) from phase-3 into main
2026-04-26 21:26:49 -04:00
Joseph Doherty
70a5ad3ecc
docs: add T66-discovered consume_pending_meanwhile_digests backlog item
2026-04-26 21:19:11 -04:00
Joseph Doherty
6709cf46a7
merge: T67 phase 3 documentation update
2026-04-26 21:18:38 -04:00
Joseph Doherty
c3947bbb68
merge: T66 phase 3 cross-feature integration coverage
2026-04-26 21:18:38 -04:00
Joseph Doherty
f865ac2ee2
test: phase 3 cross-feature integration coverage (T66)
2026-04-26 21:16:30 -04:00
Joseph Doherty
af6c54dd05
docs: phase 3 status, behavioral defaults, deferred items (T67)
2026-04-26 21:10:49 -04:00
Joseph Doherty
dc35833534
test: feed meanwhile digest canned response after Wave 6b cross-feature merge
2026-04-26 21:07:44 -04:00
Joseph Doherty
0cd41636b3
merge: T65 meanwhile summary digest surfaces to next you-scene
2026-04-26 21:06:10 -04:00
Joseph Doherty
2c7aa68af9
merge: T64 meanwhile turn flow (host+guest, no you)
2026-04-26 21:06:10 -04:00
Joseph Doherty
cf43ba0993
feat: meanwhile turn flow (host+guest, no you) (T64)
2026-04-26 21:05:40 -04:00
Joseph Doherty
a781732ee6
feat: meanwhile summary digest surfaces to next you-scene (T65)
2026-04-26 20:59:35 -04:00
Joseph Doherty
c9d58b8229
merge: T63 meanwhile scene schema + state
2026-04-26 20:52:51 -04:00
Joseph Doherty
c463dc70b2
feat: meanwhile scene schema + state (T63)
2026-04-26 20:52:45 -04:00
Joseph Doherty
819803da84
merge: T62 natural-language skip command flow + shared skip controllers
2026-04-26 20:47:07 -04:00
Joseph Doherty
a7eedb8037
feat: natural-language skip detection + skip command flow (T62)
...
Extend ParsedTurn with intent/landing_state_hint so the classifier can
flag skip-elision and skip-jump prose. The post_turn handler short-
circuits the regular narrative path when intent != "narrative":
elision runs through the shared controller in chat/web/skip.py;
jump returns 422 directing the user to the drawer's structured form
(simpler Phase 3 path — natural-language fiction-time delta parsing
is too fragile for v1 without a structured surface).
Extract the elision/jump logic that previously lived in drawer.py
into chat/web/skip.py so both the drawer T59 routes and the new
natural-language path share one canonical implementation. The drawer
routes become thin HTTP wrappers that translate ValueError to 400
and refresh the drawer partial; the existing drawer skip tests pass
unchanged.
The new natural-language elision derives ``new_time`` by bumping the
chat clock by 1 hour (Phase 3 stub) — the drawer's structured form
remains the path for picking a specific landing time.
2026-04-26 20:45:05 -04:00
Joseph Doherty
e236bcadcd
merge: T61 per-turn event-lifecycle detection + completion promotion
2026-04-26 20:37:21 -04:00
Joseph Doherty
3678bcaca6
merge: T60 prompt assembly active events + open threads
2026-04-26 20:37:21 -04:00
Joseph Doherty
b582567521
feat: per-turn event-lifecycle detection + completion promotion (T61)
2026-04-26 20:35:34 -04:00
Joseph Doherty
21c4ffa63c
feat: prompt assembly renders active events + open threads (T60)
2026-04-26 20:34:26 -04:00
Joseph Doherty
83f94a4325
merge: T59 drawer events / threads / skip controls
2026-04-26 20:29:40 -04:00
Joseph Doherty
2d14197553
feat: drawer events / threads / skip controls (T59)
2026-04-26 20:27:47 -04:00
Joseph Doherty
8efbcdf6c3
merge: T58 scene compression + thread emission on close
2026-04-26 20:21:01 -04:00
Joseph Doherty
8aeadfd0e4
merge: T57 significance-aware retrieval ranking
2026-04-26 20:21:01 -04:00
Joseph Doherty
88350d7d2e
merge: T56 event-completion promotion service
2026-04-26 20:21:00 -04:00
Joseph Doherty
343f305587
feat: significance-driven quote retention + thread emission on close (T58)
2026-04-26 20:18:34 -04:00
Joseph Doherty
021587b3df
feat: event-completion promotion service (T56)
2026-04-26 20:15:51 -04:00
Joseph Doherty
5e6b29e0c5
feat: significance-aware retrieval ranking (T57)
2026-04-26 20:15:19 -04:00
Joseph Doherty
a34931375c
merge: T55 thread-detection service
2026-04-26 20:12:12 -04:00
Joseph Doherty
959fe11410
merge: T54 synthesized-memories service
2026-04-26 20:12:12 -04:00
Joseph Doherty
2959e1ac2a
merge: T53 skip narration service
2026-04-26 20:12:12 -04:00
Joseph Doherty
afe940259a
merge: T52 event-lifecycle detection service
2026-04-26 20:12:12 -04:00
Joseph Doherty
c2144cd9df
feat: skip narration service (T53)
2026-04-26 20:10:42 -04:00
Joseph Doherty
7857da4112
feat: thread-detection service (T55)
2026-04-26 20:10:36 -04:00
Joseph Doherty
adbbd32873
feat: synthesized-memories service for jump skips (T54)
2026-04-26 20:10:05 -04:00
Joseph Doherty
98250644ad
feat: event-lifecycle detection service (T52)
2026-04-26 20:09:13 -04:00
Joseph Doherty
da1f67fb6a
test: bump schema_version assertion to 10 (0009 events + 0010 threads)
2026-04-26 20:07:08 -04:00
Joseph Doherty
03ba34272b
merge: T51 threads table + projector handlers
2026-04-26 20:06:45 -04:00
Joseph Doherty
e26885b011
merge: T50 time_skip event handlers
2026-04-26 20:06:45 -04:00
Joseph Doherty
5b7a195cf5
merge: T49 events table + lifecycle handlers
2026-04-26 20:06:45 -04:00
Joseph Doherty
25bcbac055
feat: threads table + projector handlers (T51)
2026-04-26 20:05:09 -04:00
Joseph Doherty
ab2b494c21
feat: time_skip event handlers (T50)
2026-04-26 20:04:46 -04:00
Joseph Doherty
b6888ff36a
feat: events table + lifecycle handlers (T49)
2026-04-26 20:04:36 -04:00
dohertj2
e4fd888b53
Merge pull request 'Phase 2.5 cleanup: 15-item backlog burndown' ( #3 ) from phase-2.5 into main
2026-04-26 20:00:38 -04:00
dohertj2
079774dce5
Merge pull request 'Phase 2: multi-entity scene support (you + host + guest)' ( #2 ) from phase-2 into main
2026-04-26 20:00:16 -04:00
dohertj2
3be7920f41
Merge pull request 'Phase 1: v1 single-bot roleplay engine' ( #1 ) from phase-1 into main
2026-04-26 19:59:29 -04:00
Joseph Doherty
e61bd9cb08
merge: T75 phase 2.5 docs sweep + phase 2.6 backlog
2026-04-26 17:47:01 -04:00
Joseph Doherty
c6e0130e59
docs: phase 2.5 status, prune shipped backlog items, capture phase 2.6 follow-ups (T75)
2026-04-26 17:46:50 -04:00
Joseph Doherty
67d6f3fe68
merge: T74 turn-flow polish + addressee service
2026-04-26 17:43:04 -04:00