session-steward 0.10.0 → 0.10.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.html CHANGED
@@ -5,7 +5,7 @@
5
5
  <meta name="viewport" content="width=device-width,initial-scale=1.0"/>
6
6
  <link href="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Crect width='32' height='32' rx='8' fill='%23171717'/%3E%3Cpath d='M16 4 26 8v7c0 6-4 11-10 13C10 26 6 21 6 15V8Z' fill='%23f5f5f5'/%3E%3Cpath d='m9.5 16 2.2-2.2 3 3 6.5-6.5 2.2 2.2-8.7 8.7Z' fill='%23171717'/%3E%3C/svg%3E" rel="icon"/>
7
7
  <title>Session Steward</title>
8
- <script type="module" crossorigin src="/assets/index-C94A1O5c.js"></script>
8
+ <script type="module" crossorigin src="/assets/index-BDiEQG6G.js"></script>
9
9
  <link rel="stylesheet" crossorigin href="/assets/index-CXq8Tw8T.css">
10
10
  </head>
11
11
  <body>
@@ -30,7 +30,28 @@ const SCHEMA_REQUIREMENTS = Object.freeze({
30
30
  fallback: "memories_1.sqlite",
31
31
  pattern: /^memories_(\d+)\.sqlite$/u,
32
32
  required: false,
33
- tables: [{ name: "stage1_outputs", requiredColumns: ["thread_id"] }],
33
+ tables: [
34
+ { name: "stage1_outputs", requiredColumns: ["thread_id"] },
35
+ {
36
+ name: "jobs",
37
+ optional: true,
38
+ requiredColumns: [
39
+ "kind",
40
+ "job_key",
41
+ "status",
42
+ "worker_id",
43
+ "ownership_token",
44
+ "started_at",
45
+ "finished_at",
46
+ "lease_until",
47
+ "retry_at",
48
+ "retry_remaining",
49
+ "last_error",
50
+ "input_watermark",
51
+ "last_success_watermark",
52
+ ],
53
+ },
54
+ ],
34
55
  },
35
56
  goals: {
36
57
  fallback: "goals_1.sqlite",
@@ -53,6 +74,7 @@ const SCHEMA_REQUIREMENTS = Object.freeze({
53
74
  required: false,
54
75
  tables: [
55
76
  { name: "thread_items", requiredColumns: ["thread_id"] },
77
+ { name: "thread_realtime_items", optional: true, requiredColumns: ["thread_id"] },
56
78
  { name: "thread_turns", requiredColumns: ["thread_id"] },
57
79
  { name: "thread_history_projection_state", requiredColumns: ["thread_id"] },
58
80
  ],
@@ -91,7 +113,8 @@ function inspectCandidate(codexHome, filename, version, family) {
91
113
  );
92
114
  const invalidTable = family.tables.find((requirement) => {
93
115
  const table = tables[requirement.name];
94
- return !table.exists || table.missingColumns.length > 0;
116
+ return (!table.exists && !requirement.optional) ||
117
+ (table.exists && table.missingColumns.length > 0);
95
118
  });
96
119
  return {
97
120
  filename,