forked from bai/curriculum-project-hub
fix(hub): resume Claude SDK sessions
This commit is contained in:
@@ -3,9 +3,9 @@
|
||||
// Aligns to spec/System (ADR-0001..0004, 0017). Key divergences from the
|
||||
// legacy teaching-material-host-service schema, each deliberate:
|
||||
//
|
||||
// - No AgentSession.claudeSessionId. ADR-0017: session is provider/model-
|
||||
// bound, not Claude-bound; `provider`+`model` replace it. Switching model
|
||||
// = new session, so the unique constraint is on the session id alone.
|
||||
// - AgentSession is provider/model-bound. Provider runtime cursors such as
|
||||
// Claude SDK `session_id` live in `metadata`, so switching model still means
|
||||
// a new Hub session while same-session runs can resume provider context.
|
||||
// - PermissionRole enum = read/edit/manage (ADR-0004 capability lattice),
|
||||
// distinct from platform UserRole (admin/teacher) — legacy conflated them.
|
||||
// - ProjectGroupBinding is project→chat only (ADR-0001 1:1); legacy mixed
|
||||
@@ -110,9 +110,10 @@ model ProjectGroupBinding {
|
||||
|
||||
// --- AgentRun, session, lock (ADR-0002, 0017) -----------------------------
|
||||
|
||||
/// ADR-0017: session is provider/model-bound. No claudeSessionId; `provider`
|
||||
/// + `model` capture the binding. Same provider+model ⇒ reuse across runs
|
||||
/// (ADR-0002); a switch ⇒ new session.
|
||||
/// ADR-0017: session is provider/model-bound. `provider` + `model` capture
|
||||
/// the binding; provider-specific runtime cursors live in `metadata`
|
||||
/// (e.g. metadata.claudeSessionId). Same provider+model ⇒ reuse across runs
|
||||
/// (ADR-0002); a switch ⇒ new Hub session.
|
||||
model AgentSession {
|
||||
id String @id @default(cuid())
|
||||
projectId String
|
||||
|
||||
Reference in New Issue
Block a user