WI 1 — Extract per-session SessionContext from ChatProcessor #237

Merged
toasterson merged 1 commit from claude/wi-019f8588-wi-1-extract-per-session-sessioncontext into main 2026-07-27 16:01:40 +00:00
Owner

Anima work item 019f8588-f4b7-7fe0-b0fa-2002b5c2e546.

Extract per-session cognitive context from the shared ChatProcessor.

PROBLEM: ChatProcessor is Arc<Mutex> — one per workspace, shared by all sessions. Per-session state (kg_cache, trajectory, eliza) bleeds across sessions.

CHANGE:

  • Move kg_cache, trajectory, eliza into a new SessionContext struct
  • ChatProcessor keeps only stateless infrastructure (nlu_pipeline, lexicon, config)
  • process_input signature: (&self, ctx: &mut SessionContext, text, agent, engine) → Vec
  • ACP sessions get a SessionId → SessionContext map in AkhAcpAgent

FILES: src/chat.rs, src/acp/mod.rs

FOUNDATION FOR DELEGATION: a delegated session needs its own SessionContext so it doesn't pollute the calling session.

Anima work item `019f8588-f4b7-7fe0-b0fa-2002b5c2e546`. Extract per-session cognitive context from the shared ChatProcessor. PROBLEM: ChatProcessor is Arc<Mutex<ChatProcessor>> — one per workspace, shared by all sessions. Per-session state (kg_cache, trajectory, eliza) bleeds across sessions. CHANGE: - Move kg_cache, trajectory, eliza into a new SessionContext struct - ChatProcessor keeps only stateless infrastructure (nlu_pipeline, lexicon, config) - process_input signature: (&self, ctx: &mut SessionContext, text, agent, engine) → Vec<AkhMessage> - ACP sessions get a SessionId → SessionContext map in AkhAcpAgent FILES: src/chat.rs, src/acp/mod.rs FOUNDATION FOR DELEGATION: a delegated session needs its own SessionContext so it doesn't pollute the calling session.
WI 1 — Extract per-session SessionContext from ChatProcessor
Some checks failed
CI / publish-chart (pull_request) Failing after 10m41s
CI / check-seshat (push) Successful in 12m10s
CI / check-seshat (pull_request) Successful in 12m11s
CI / publish-chart (push) Failing after 12m19s
CI / docker-seshd (push) Successful in 18m45s
CI / docker-seshd (pull_request) Successful in 18m52s
e88422e912
Anima implementation session.
toasterson force-pushed claude/wi-019f8588-wi-1-extract-per-session-sessioncontext from e88422e912
Some checks failed
CI / publish-chart (pull_request) Failing after 10m41s
CI / check-seshat (push) Successful in 12m10s
CI / check-seshat (pull_request) Successful in 12m11s
CI / publish-chart (push) Failing after 12m19s
CI / docker-seshd (push) Successful in 18m45s
CI / docker-seshd (pull_request) Successful in 18m52s
to 849b98e6a6
Some checks failed
CI / publish-chart (push) Failing after 19m35s
CI / check-seshat (push) Successful in 20m39s
CI / docker-seshd (push) Failing after 25m33s
CI / publish-chart (pull_request) Failing after 22m30s
CI / check-seshat (pull_request) Successful in 31m23s
CI / docker-seshd (pull_request) Successful in 32m28s
2026-07-24 01:16:21 +00:00
Compare
ci: adopt exit-0-free chart-publish workflow (Solstice failure fix)
All checks were successful
CI / publish-chart (push) Successful in 22m34s
CI / check-seshat (push) Successful in 34m12s
CI / publish-chart (pull_request) Successful in 18m24s
CI / docker-seshd (push) Successful in 34m56s
CI / check-seshat (pull_request) Successful in 24m30s
CI / docker-seshd (pull_request) Successful in 31m23s
a778fcedcd
The publish-chart skip path's mid-script exit 0 is mis-mapped to
exit_code=1 by the Solstice runner, reddening this branch's CI and
blocking merge. Adopt the develop/main if-else fall-through version.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
toasterson force-pushed claude/wi-019f8588-wi-1-extract-per-session-sessioncontext from a778fcedcd
All checks were successful
CI / publish-chart (push) Successful in 22m34s
CI / check-seshat (push) Successful in 34m12s
CI / publish-chart (pull_request) Successful in 18m24s
CI / docker-seshd (push) Successful in 34m56s
CI / check-seshat (pull_request) Successful in 24m30s
CI / docker-seshd (pull_request) Successful in 31m23s
to 24b07afd9c
All checks were successful
CI / publish-chart (push) Successful in 8m54s
CI / publish-chart (pull_request) Successful in 8m57s
CI / check-seshat (pull_request) Successful in 10m47s
CI / check-seshat (push) Successful in 10m49s
CI / docker-seshd (push) Successful in 16m0s
CI / docker-seshd (pull_request) Successful in 16m7s
2026-07-25 12:33:29 +00:00
Compare
toasterson force-pushed claude/wi-019f8588-wi-1-extract-per-session-sessioncontext from 24b07afd9c
All checks were successful
CI / publish-chart (push) Successful in 8m54s
CI / publish-chart (pull_request) Successful in 8m57s
CI / check-seshat (pull_request) Successful in 10m47s
CI / check-seshat (push) Successful in 10m49s
CI / docker-seshd (push) Successful in 16m0s
CI / docker-seshd (pull_request) Successful in 16m7s
to 975c6b2ead
All checks were successful
CI / publish-chart (push) Successful in 10m7s
CI / check-seshat (push) Successful in 11m6s
CI / publish-chart (pull_request) Successful in 16m22s
CI / check-seshat (pull_request) Successful in 16m47s
CI / docker-seshd (pull_request) Successful in 24m17s
CI / docker-seshd (push) Successful in 24m18s
2026-07-25 13:42:26 +00:00
Compare
toasterson force-pushed claude/wi-019f8588-wi-1-extract-per-session-sessioncontext from 975c6b2ead
All checks were successful
CI / publish-chart (push) Successful in 10m7s
CI / check-seshat (push) Successful in 11m6s
CI / publish-chart (pull_request) Successful in 16m22s
CI / check-seshat (pull_request) Successful in 16m47s
CI / docker-seshd (pull_request) Successful in 24m17s
CI / docker-seshd (push) Successful in 24m18s
to a8679d1592
Some checks failed
CI / check-seshat (push) Successful in 29m7s
CI / publish-chart (pull_request) Successful in 31m45s
CI / docker-seshd (push) Successful in 34m6s
CI / publish-chart (push) Failing after 34m40s
CI / docker-seshd (pull_request) Successful in 36m47s
CI / check-seshat (pull_request) Failing after 38m52s
2026-07-25 14:17:56 +00:00
Compare
toasterson force-pushed claude/wi-019f8588-wi-1-extract-per-session-sessioncontext from a8679d1592
Some checks failed
CI / check-seshat (push) Successful in 29m7s
CI / publish-chart (pull_request) Successful in 31m45s
CI / docker-seshd (push) Successful in 34m6s
CI / publish-chart (push) Failing after 34m40s
CI / docker-seshd (pull_request) Successful in 36m47s
CI / check-seshat (pull_request) Failing after 38m52s
to 07b9d36ce8
Some checks failed
CI / publish-chart (pull_request) Has been cancelled
CI / check-seshat (push) Has been cancelled
CI / publish-chart (push) Has been cancelled
CI / docker-seshd (push) Has been cancelled
CI / docker-seshd (pull_request) Has been cancelled
CI / check-seshat (pull_request) Has been cancelled
2026-07-25 22:42:49 +00:00
Compare
toasterson force-pushed claude/wi-019f8588-wi-1-extract-per-session-sessioncontext from 07b9d36ce8
Some checks failed
CI / publish-chart (pull_request) Has been cancelled
CI / check-seshat (push) Has been cancelled
CI / publish-chart (push) Has been cancelled
CI / docker-seshd (push) Has been cancelled
CI / docker-seshd (pull_request) Has been cancelled
CI / check-seshat (pull_request) Has been cancelled
to c2219547d3
All checks were successful
CI / check-seshat (push) Successful in 26m32s
CI / publish-chart (push) Successful in 25m26s
CI / check-seshat (pull_request) Successful in 34m47s
CI / publish-chart (pull_request) Successful in 28m45s
CI / docker-seshd (push) Successful in 38m30s
CI / docker-seshd (pull_request) Successful in 42m39s
2026-07-25 23:14:38 +00:00
Compare
toasterson force-pushed claude/wi-019f8588-wi-1-extract-per-session-sessioncontext from c2219547d3
All checks were successful
CI / check-seshat (push) Successful in 26m32s
CI / publish-chart (push) Successful in 25m26s
CI / check-seshat (pull_request) Successful in 34m47s
CI / publish-chart (pull_request) Successful in 28m45s
CI / docker-seshd (push) Successful in 38m30s
CI / docker-seshd (pull_request) Successful in 42m39s
to 9d44602dc1
All checks were successful
CI / publish-chart (push) Successful in 8m6s
CI / check-seshat (push) Successful in 10m1s
CI / publish-chart (pull_request) Successful in 12m40s
CI / check-seshat (pull_request) Successful in 14m55s
CI / docker-seshd (push) Successful in 17m4s
CI / docker-seshd (pull_request) Successful in 21m2s
2026-07-27 11:19:12 +00:00
Compare
toasterson force-pushed claude/wi-019f8588-wi-1-extract-per-session-sessioncontext from 9d44602dc1
All checks were successful
CI / publish-chart (push) Successful in 8m6s
CI / check-seshat (push) Successful in 10m1s
CI / publish-chart (pull_request) Successful in 12m40s
CI / check-seshat (pull_request) Successful in 14m55s
CI / docker-seshd (push) Successful in 17m4s
CI / docker-seshd (pull_request) Successful in 21m2s
to 064bef70f5
All checks were successful
CI / publish-chart (push) Successful in 12m57s
CI / publish-chart (pull_request) Successful in 14m23s
CI / check-seshat (push) Successful in 15m15s
CI / check-seshat (pull_request) Successful in 15m27s
CI / docker-seshd (push) Successful in 21m41s
CI / docker-seshd (pull_request) Successful in 21m44s
2026-07-27 13:36:01 +00:00
Compare
toasterson force-pushed claude/wi-019f8588-wi-1-extract-per-session-sessioncontext from 064bef70f5
All checks were successful
CI / publish-chart (push) Successful in 12m57s
CI / publish-chart (pull_request) Successful in 14m23s
CI / check-seshat (push) Successful in 15m15s
CI / check-seshat (pull_request) Successful in 15m27s
CI / docker-seshd (push) Successful in 21m41s
CI / docker-seshd (pull_request) Successful in 21m44s
to 94ab6faca7
All checks were successful
CI / publish-chart (push) Successful in 6m44s
CI / publish-chart (pull_request) Successful in 6m43s
CI / check-seshat (push) Successful in 11m18s
CI / check-seshat (pull_request) Successful in 11m30s
CI / docker-seshd (pull_request) Successful in 17m46s
CI / docker-seshd (push) Successful in 17m47s
2026-07-27 15:19:49 +00:00
Compare
toasterson changed title from WIP: WI 1 — Extract per-session SessionContext from ChatProcessor to WI 1 — Extract per-session SessionContext from ChatProcessor 2026-07-27 15:59:23 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
toasterson/akh-medu!237
No description provided.