hungry-ghost-hive 0.49.0 → 0.50.0
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/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +16 -6
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/manager/tech-lead-lifecycle.d.ts.map +1 -1
- package/dist/cli/commands/manager/tech-lead-lifecycle.js +9 -1
- package/dist/cli/commands/manager/tech-lead-lifecycle.js.map +1 -1
- package/dist/cli/commands/nuke.d.ts.map +1 -1
- package/dist/cli/commands/nuke.js +7 -7
- package/dist/cli/commands/nuke.js.map +1 -1
- package/dist/cli/commands/nuke.test.js +36 -24
- package/dist/cli/commands/nuke.test.js.map +1 -1
- package/dist/cli/commands/req.d.ts +1 -1
- package/dist/cli/commands/req.d.ts.map +1 -1
- package/dist/cli/commands/req.js +11 -3
- package/dist/cli/commands/req.js.map +1 -1
- package/dist/cli/dashboard/index.d.ts.map +1 -1
- package/dist/cli/dashboard/index.js +35 -8
- package/dist/cli/dashboard/index.js.map +1 -1
- package/dist/cli/dashboard/panels/activity.js +4 -1
- package/dist/cli/dashboard/panels/activity.js.map +1 -1
- package/dist/cli/dashboard/panels/stories.d.ts +3 -3
- package/dist/cli/dashboard/panels/stories.d.ts.map +1 -1
- package/dist/cli/dashboard/panels/stories.js +1 -2
- package/dist/cli/dashboard/panels/stories.js.map +1 -1
- package/dist/db/postgres-provider.d.ts +1 -1
- package/dist/db/postgres-provider.d.ts.map +1 -1
- package/dist/db/postgres-provider.js +118 -11
- package/dist/db/postgres-provider.js.map +1 -1
- package/dist/db/queries/logs.d.ts.map +1 -1
- package/dist/db/queries/logs.js +24 -7
- package/dist/db/queries/logs.js.map +1 -1
- package/dist/db/queries/requirements.js +3 -3
- package/dist/db/queries/requirements.js.map +1 -1
- package/dist/orchestrator/scheduler.js +1 -1
- package/dist/orchestrator/scheduler.js.map +1 -1
- package/dist/utils/with-hive-context.d.ts.map +1 -1
- package/dist/utils/with-hive-context.js +6 -2
- package/dist/utils/with-hive-context.js.map +1 -1
- package/package.json +1 -1
- package/src/cli/commands/init.ts +23 -6
- package/src/cli/commands/manager/tech-lead-lifecycle.ts +10 -1
- package/src/cli/commands/nuke.test.ts +39 -24
- package/src/cli/commands/nuke.ts +12 -15
- package/src/cli/commands/req.ts +13 -3
- package/src/cli/dashboard/index.ts +38 -8
- package/src/cli/dashboard/panels/activity.ts +5 -2
- package/src/cli/dashboard/panels/stories.ts +8 -6
- package/src/db/postgres-provider.ts +130 -11
- package/src/db/queries/logs.ts +27 -10
- package/src/db/queries/requirements.ts +3 -3
- package/src/orchestrator/scheduler.ts +1 -1
- package/src/utils/with-hive-context.ts +6 -2
|
@@ -2,9 +2,11 @@
|
|
|
2
2
|
import blessed from 'blessed';
|
|
3
3
|
import { appendFileSync, existsSync, renameSync, statSync } from 'fs';
|
|
4
4
|
import { join } from 'path';
|
|
5
|
+
import { loadConfig } from '../../config/loader.js';
|
|
5
6
|
import { getReadOnlyDatabase } from '../../db/client.js';
|
|
7
|
+
import { createPostgresProvider } from '../../db/postgres-provider.js';
|
|
6
8
|
import { getAllRequirements } from '../../db/queries/requirements.js';
|
|
7
|
-
import { findHiveRoot, getHivePaths } from '../../utils/paths.js';
|
|
9
|
+
import { findHiveRoot, getHivePaths, getWorkspaceId } from '../../utils/paths.js';
|
|
8
10
|
import { getVersion } from '../../utils/version.js';
|
|
9
11
|
import { createActivityPanel, updateActivityPanel } from './panels/activity.js';
|
|
10
12
|
import { createAgentsPanel, updateAgentsPanel } from './panels/agents.js';
|
|
@@ -46,9 +48,34 @@ export async function startDashboard(options = {}) {
|
|
|
46
48
|
}
|
|
47
49
|
const paths = getHivePaths(root);
|
|
48
50
|
const dbPath = join(paths.hiveDir, 'hive.db');
|
|
49
|
-
|
|
51
|
+
let isDistributed = false;
|
|
52
|
+
try {
|
|
53
|
+
const config = loadConfig(paths.hiveDir);
|
|
54
|
+
isDistributed = config.distributed === true;
|
|
55
|
+
}
|
|
56
|
+
catch {
|
|
57
|
+
// fallback: not distributed
|
|
58
|
+
}
|
|
50
59
|
debugLog(`Dashboard starting - root: ${root}, hiveDir: ${paths.hiveDir}, distributed: ${isDistributed}`);
|
|
51
|
-
|
|
60
|
+
async function createDbClient() {
|
|
61
|
+
if (isDistributed) {
|
|
62
|
+
const workspaceId = getWorkspaceId(paths);
|
|
63
|
+
if (!workspaceId) {
|
|
64
|
+
throw new Error('Distributed mode but workspace.id is missing. Re-run "hive init --distributed".');
|
|
65
|
+
}
|
|
66
|
+
const envPath = join(root, '.env');
|
|
67
|
+
const provider = await createPostgresProvider(workspaceId, envPath);
|
|
68
|
+
return {
|
|
69
|
+
db: null,
|
|
70
|
+
provider,
|
|
71
|
+
close: () => {
|
|
72
|
+
provider.close();
|
|
73
|
+
},
|
|
74
|
+
};
|
|
75
|
+
}
|
|
76
|
+
return getReadOnlyDatabase(paths.hiveDir);
|
|
77
|
+
}
|
|
78
|
+
let db = await createDbClient();
|
|
52
79
|
let lastDbMtime = isDistributed ? 0 : statSync(dbPath).mtimeMs;
|
|
53
80
|
const refreshInterval = options.refreshInterval || 5000;
|
|
54
81
|
const version = getVersion();
|
|
@@ -83,7 +110,7 @@ export async function startDashboard(options = {}) {
|
|
|
83
110
|
};
|
|
84
111
|
// Create panels
|
|
85
112
|
const agentsPanel = createAgentsPanel(screen, db.provider, pauseRefresh, resumeRefresh);
|
|
86
|
-
const storiesPanel = createStoriesPanel(screen, db.
|
|
113
|
+
const storiesPanel = createStoriesPanel(screen, db.provider);
|
|
87
114
|
const pipelinePanel = createPipelinePanel(screen, db.provider);
|
|
88
115
|
const activityPanel = createActivityPanel(screen, db.provider);
|
|
89
116
|
const mergeQueuePanel = createMergeQueuePanel(screen, db.provider);
|
|
@@ -124,9 +151,9 @@ export async function startDashboard(options = {}) {
|
|
|
124
151
|
})();
|
|
125
152
|
if (shouldReload) {
|
|
126
153
|
debugLog(`Database changed - reloading from ${paths.hiveDir}`);
|
|
127
|
-
const newDb = await
|
|
154
|
+
const newDb = await createDbClient();
|
|
128
155
|
try {
|
|
129
|
-
db.
|
|
156
|
+
db.close();
|
|
130
157
|
}
|
|
131
158
|
catch (_error) {
|
|
132
159
|
/* ignore close errors */
|
|
@@ -138,7 +165,7 @@ export async function startDashboard(options = {}) {
|
|
|
138
165
|
const godmodeLabel = godmode ? ' {yellow-fg}{bold}GODMODE ACTIVE{/bold}{/yellow-fg}' : '';
|
|
139
166
|
header.setContent(` {bold}HIVE ORCHESTRATOR{/bold} v${version}${godmodeLabel} [R]efresh [Q]uit`);
|
|
140
167
|
await updateAgentsPanel(agentsPanel, db.provider);
|
|
141
|
-
await updateStoriesPanel(storiesPanel, db.
|
|
168
|
+
await updateStoriesPanel(storiesPanel, db.provider);
|
|
142
169
|
await updatePipelinePanel(pipelinePanel, db.provider);
|
|
143
170
|
await updateActivityPanel(activityPanel, db.provider);
|
|
144
171
|
await updateMergeQueuePanel(mergeQueuePanel, db.provider);
|
|
@@ -168,7 +195,7 @@ export async function startDashboard(options = {}) {
|
|
|
168
195
|
if (currentTimeout)
|
|
169
196
|
clearTimeout(currentTimeout);
|
|
170
197
|
try {
|
|
171
|
-
db.
|
|
198
|
+
db.close();
|
|
172
199
|
}
|
|
173
200
|
catch (_error) {
|
|
174
201
|
/* ignore */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/dashboard/index.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAE7D,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;AACtE,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,mBAAmB,EAA+B,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/dashboard/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -43,7 +43,10 @@ export async function updateActivityPanel(box, db) {
|
|
|
43
43
|
box.setScrollPerc(100);
|
|
44
44
|
}
|
|
45
45
|
function formatTimestamp(timestamp) {
|
|
46
|
-
|
|
46
|
+
if (timestamp instanceof Date) {
|
|
47
|
+
return timestamp.toISOString().substring(11, 19);
|
|
48
|
+
}
|
|
49
|
+
return String(timestamp).substring(11, 19);
|
|
47
50
|
}
|
|
48
51
|
function formatEventType(event) {
|
|
49
52
|
const colors = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"activity.js","sourceRoot":"","sources":["../../../../src/cli/dashboard/panels/activity.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAE7D,OAAO,OAAyB,MAAM,SAAS,CAAC;AAEhD,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAE5D,MAAM,UAAU,mBAAmB,CACjC,MAAsB,EACtB,EAAoB;IAEpB,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;QACtB,MAAM,EAAE,MAAM;QACd,GAAG,EAAE,OAAO;QACZ,IAAI,EAAE,CAAC;QACP,KAAK,EAAE,KAAK;QACZ,MAAM,EAAE,KAAK;QACb,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;QACxB,KAAK,EAAE,mBAAmB;QAC1B,UAAU,EAAE,IAAI;QAChB,YAAY,EAAE,IAAI;QAClB,IAAI,EAAE,IAAI;QACV,EAAE,EAAE,IAAI;QACR,KAAK,EAAE,IAAI;QACX,KAAK,EAAE;YACL,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE;SACvB;QACD,IAAI,EAAE,IAAI;QACV,SAAS,EAAE;YACT,EAAE,EAAE,GAAG;YACP,KAAK,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE;YACrB,KAAK,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE;SACvB;KACF,CAAC,CAAC;IAEH,mBAAmB,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,kCAAkC,EAAE,GAAG,CAAC,CAAC,CAAC;IAElG,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,GAAuB,EACvB,EAAoB;IAEpB,MAAM,IAAI,GAAG,MAAM,aAAa,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IAEzC,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;QACnC,MAAM,IAAI,GAAG,eAAe,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAC9C,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACzD,MAAM,KAAK,GAAG,eAAe,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAChD,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAE3E,KAAK,CAAC,IAAI,CAAC,YAAY,IAAI,gBAAgB,KAAK,OAAO,KAAK,GAAG,OAAO,EAAE,CAAC,CAAC;IAC5E,CAAC;IAED,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAEjC,+CAA+C;IAC/C,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;AACzB,CAAC;AAED,SAAS,eAAe,CAAC,
|
|
1
|
+
{"version":3,"file":"activity.js","sourceRoot":"","sources":["../../../../src/cli/dashboard/panels/activity.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type Widgets } from 'blessed';
|
|
2
|
-
import type {
|
|
3
|
-
export declare function createStoriesPanel(screen: Widgets.Screen, db:
|
|
4
|
-
export declare function updateStoriesPanel(table: Widgets.ListTableElement, db:
|
|
2
|
+
import type { DatabaseProvider } from '../../../db/provider.js';
|
|
3
|
+
export declare function createStoriesPanel(screen: Widgets.Screen, db: DatabaseProvider): Widgets.ListTableElement;
|
|
4
|
+
export declare function updateStoriesPanel(table: Widgets.ListTableElement, db: DatabaseProvider): Promise<void>;
|
|
5
5
|
//# sourceMappingURL=stories.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stories.d.ts","sourceRoot":"","sources":["../../../../src/cli/dashboard/panels/stories.ts"],"names":[],"mappings":"AAEA,OAAgB,EAAE,KAAK,OAAO,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"stories.d.ts","sourceRoot":"","sources":["../../../../src/cli/dashboard/panels/stories.ts"],"names":[],"mappings":"AAEA,OAAgB,EAAE,KAAK,OAAO,EAAE,MAAM,SAAS,CAAC;AAEhD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,OAAO,CAAC,MAAM,EACtB,EAAE,EAAE,gBAAgB,GACnB,OAAO,CAAC,gBAAgB,CAwB1B;AAED,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,OAAO,CAAC,gBAAgB,EAC/B,EAAE,EAAE,gBAAgB,GACnB,OAAO,CAAC,IAAI,CAAC,CAmCf"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
// Licensed under the Hungry Ghost Hive License. See LICENSE.
|
|
2
2
|
import blessed from 'blessed';
|
|
3
|
-
import { queryAll } from '../../../db/client.js';
|
|
4
3
|
export function createStoriesPanel(screen, db) {
|
|
5
4
|
const table = blessed.listtable({
|
|
6
5
|
parent: screen,
|
|
@@ -26,7 +25,7 @@ export function createStoriesPanel(screen, db) {
|
|
|
26
25
|
return table;
|
|
27
26
|
}
|
|
28
27
|
export async function updateStoriesPanel(table, db) {
|
|
29
|
-
const stories = queryAll(
|
|
28
|
+
const stories = await db.queryAll(`
|
|
30
29
|
SELECT * FROM stories
|
|
31
30
|
ORDER BY
|
|
32
31
|
CASE status
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stories.js","sourceRoot":"","sources":["../../../../src/cli/dashboard/panels/stories.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAE7D,OAAO,OAAyB,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"stories.js","sourceRoot":"","sources":["../../../../src/cli/dashboard/panels/stories.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAE7D,OAAO,OAAyB,MAAM,SAAS,CAAC;AAIhD,MAAM,UAAU,kBAAkB,CAChC,MAAsB,EACtB,EAAoB;IAEpB,MAAM,KAAK,GAAG,OAAO,CAAC,SAAS,CAAC;QAC9B,MAAM,EAAE,MAAM;QACd,GAAG,EAAE,KAAK;QACV,IAAI,EAAE,CAAC;QACP,KAAK,EAAE,MAAM;QACb,MAAM,EAAE,KAAK;QACb,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;QACxB,KAAK,EAAE,WAAW;QAClB,IAAI,EAAE,IAAI;QACV,EAAE,EAAE,IAAI;QACR,KAAK,EAAE,IAAI;QACX,KAAK,EAAE;YACL,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE;YAClC,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE;YACrB,QAAQ,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE;YACxB,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE;SACvB;QACD,KAAK,EAAE,MAAM;QACb,IAAI,EAAE,IAAI;KACX,CAAC,CAAC;IAEH,kBAAkB,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,iCAAiC,EAAE,GAAG,CAAC,CAAC,CAAC;IAClG,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,KAA+B,EAC/B,EAAoB;IAEpB,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAC/B;;;;;;;;;;;;;;GAcD,CACA,CAAC;IAEF,MAAM,OAAO,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,aAAa,CAAC,CAAC;IAEvE,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,CAAC,cAAc,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;QAC3D,OAAO;IACT,CAAC;IAED,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,KAAe,EAAE,EAAE,CAAC;QAC5C,KAAK,CAAC,EAAE;QACR,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC;QACpC,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC;QAC1B,KAAK,CAAC,gBAAgB,EAAE,QAAQ,EAAE,IAAI,GAAG;QACzC,KAAK,CAAC,iBAAiB,EAAE,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,GAAG;KACjD,CAAC,CAAC;IAEH,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC;AACpC,CAAC;AAED,SAAS,YAAY,CAAC,MAAc;IAClC,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,aAAa;YAChB,OAAO,2BAA2B,CAAC;QACrC,KAAK,QAAQ;YACX,OAAO,oBAAoB,CAAC;QAC9B,KAAK,IAAI;YACP,OAAO,mBAAmB,CAAC;QAC7B,KAAK,WAAW;YACd,OAAO,sBAAsB,CAAC;QAChC,KAAK,SAAS;YACZ,OAAO,qBAAqB,CAAC;QAC/B,KAAK,WAAW;YACd,OAAO,uBAAuB,CAAC;QACjC,KAAK,cAAc;YACjB,OAAO,2BAA2B,CAAC;QACrC,KAAK,QAAQ;YACX,OAAO,qBAAqB,CAAC;QAC/B;YACE,OAAO,MAAM,CAAC;IAClB,CAAC;AACH,CAAC"}
|
|
@@ -39,5 +39,5 @@ export declare class PostgresProvider implements WritableDatabaseProvider {
|
|
|
39
39
|
* Create a PostgresProvider from the HIVE_DATABASE_URL environment variable.
|
|
40
40
|
* Loads .env file via dotenv if available.
|
|
41
41
|
*/
|
|
42
|
-
export declare function createPostgresProvider(workspaceId: string): Promise<PostgresProvider>;
|
|
42
|
+
export declare function createPostgresProvider(workspaceId: string, envPath?: string): Promise<PostgresProvider>;
|
|
43
43
|
//# sourceMappingURL=postgres-provider.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"postgres-provider.d.ts","sourceRoot":"","sources":["../../src/db/postgres-provider.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAC;AAsB9D;;;GAGG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAyBjD;
|
|
1
|
+
{"version":3,"file":"postgres-provider.d.ts","sourceRoot":"","sources":["../../src/db/postgres-provider.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAC;AAsB9D;;;GAGG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAyBjD;AAoPD;;;GAGG;AACH,qBAAa,gBAAiB,YAAW,wBAAwB;IAC/D,OAAO,CAAC,IAAI,CAAU;IACtB,OAAO,CAAC,WAAW,CAAS;gBAEhB,gBAAgB,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;IAKzD;;OAEG;IACG,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAkC9B,QAAQ,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,GAAE,OAAO,EAAO,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;IAsB9D,QAAQ,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,GAAE,OAAO,EAAO,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IAKxE,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,GAAE,OAAO,EAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAqBvD,eAAe,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAmB9D;;OAEG;IACH,IAAI,IAAI,IAAI;IAIN,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAI5B;;;OAGG;IACG,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IASrC;;OAEG;IACH,cAAc,IAAI,MAAM;CAGzB;AAED;;;GAGG;AACH,wBAAsB,sBAAsB,CAC1C,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,gBAAgB,CAAC,CAyB3B"}
|
|
@@ -75,6 +75,61 @@ function detectTable(sql) {
|
|
|
75
75
|
return match[1].toLowerCase();
|
|
76
76
|
return null;
|
|
77
77
|
}
|
|
78
|
+
/**
|
|
79
|
+
* Detect the alias (or table name) for the primary table in a SQL statement.
|
|
80
|
+
* For `SELECT ... FROM stories s LEFT JOIN ...`, returns "s".
|
|
81
|
+
* For `SELECT ... FROM stories LEFT JOIN ...`, returns "stories".
|
|
82
|
+
* For UPDATE/DELETE, returns the table name or alias.
|
|
83
|
+
*/
|
|
84
|
+
function detectTableQualifier(sql) {
|
|
85
|
+
const normalized = sql.replace(/\s+/g, ' ').trim();
|
|
86
|
+
// SELECT ... FROM table [alias] [JOIN|WHERE|ORDER|GROUP|HAVING|LIMIT|,|)]
|
|
87
|
+
const selectMatch = normalized.match(/FROM\s+(\w+)(?:\s+(?:AS\s+)?(\w+))?/i);
|
|
88
|
+
if (selectMatch) {
|
|
89
|
+
const alias = selectMatch[2];
|
|
90
|
+
const table = selectMatch[1];
|
|
91
|
+
// Only treat as alias if the next word is not a SQL keyword
|
|
92
|
+
if (alias) {
|
|
93
|
+
const upper = alias.toUpperCase();
|
|
94
|
+
const keywords = new Set([
|
|
95
|
+
'WHERE',
|
|
96
|
+
'LEFT',
|
|
97
|
+
'RIGHT',
|
|
98
|
+
'INNER',
|
|
99
|
+
'OUTER',
|
|
100
|
+
'CROSS',
|
|
101
|
+
'JOIN',
|
|
102
|
+
'ON',
|
|
103
|
+
'ORDER',
|
|
104
|
+
'GROUP',
|
|
105
|
+
'HAVING',
|
|
106
|
+
'LIMIT',
|
|
107
|
+
'OFFSET',
|
|
108
|
+
'UNION',
|
|
109
|
+
'EXCEPT',
|
|
110
|
+
'INTERSECT',
|
|
111
|
+
'FOR',
|
|
112
|
+
'SET',
|
|
113
|
+
'VALUES',
|
|
114
|
+
]);
|
|
115
|
+
if (!keywords.has(upper)) {
|
|
116
|
+
return alias;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
return table;
|
|
120
|
+
}
|
|
121
|
+
// UPDATE table [alias]
|
|
122
|
+
const updateMatch = normalized.match(/UPDATE\s+(\w+)(?:\s+(?:AS\s+)?(\w+))?/i);
|
|
123
|
+
if (updateMatch) {
|
|
124
|
+
return updateMatch[2] || updateMatch[1];
|
|
125
|
+
}
|
|
126
|
+
// DELETE FROM table [alias]
|
|
127
|
+
const deleteMatch = normalized.match(/DELETE\s+FROM\s+(\w+)(?:\s+(?:AS\s+)?(\w+))?/i);
|
|
128
|
+
if (deleteMatch) {
|
|
129
|
+
return deleteMatch[2] || deleteMatch[1];
|
|
130
|
+
}
|
|
131
|
+
return null;
|
|
132
|
+
}
|
|
78
133
|
/**
|
|
79
134
|
* Check if a SQL statement needs workspace_id injection.
|
|
80
135
|
*/
|
|
@@ -103,6 +158,8 @@ function injectInsertWorkspaceId(sql, workspaceId, params) {
|
|
|
103
158
|
/**
|
|
104
159
|
* Inject workspace_id into SELECT/UPDATE/DELETE WHERE clauses.
|
|
105
160
|
* Adds `AND workspace_id = ?` to existing WHERE, or `WHERE workspace_id = ?` if none.
|
|
161
|
+
* When the query uses JOINs, qualifies workspace_id with the primary table alias
|
|
162
|
+
* to avoid ambiguous column references.
|
|
106
163
|
*/
|
|
107
164
|
function injectWhereWorkspaceId(sql, workspaceId, params) {
|
|
108
165
|
const normalized = sql.replace(/\s+/g, ' ').trim();
|
|
@@ -110,16 +167,41 @@ function injectWhereWorkspaceId(sql, workspaceId, params) {
|
|
|
110
167
|
if (normalized.toLowerCase().includes('workspace_id')) {
|
|
111
168
|
return { sql, params };
|
|
112
169
|
}
|
|
170
|
+
// Determine if we need to qualify workspace_id (JOIN queries have ambiguous columns)
|
|
171
|
+
const hasJoin = /\bJOIN\b/i.test(normalized);
|
|
172
|
+
const qualifier = hasJoin ? detectTableQualifier(sql) : null;
|
|
173
|
+
const wsCol = qualifier ? `${qualifier}.workspace_id` : 'workspace_id';
|
|
113
174
|
const upperSql = normalized.toUpperCase();
|
|
114
175
|
// Find WHERE clause position
|
|
115
176
|
const whereIndex = upperSql.indexOf(' WHERE ');
|
|
116
177
|
if (whereIndex !== -1) {
|
|
117
|
-
//
|
|
178
|
+
// Append workspace_id condition at the end of the WHERE clause.
|
|
179
|
+
// We must NOT prepend because params are positional — SET clause params
|
|
180
|
+
// come before WHERE clause params, and prepending would shift them.
|
|
118
181
|
const before = normalized.substring(0, whereIndex + 7); // includes " WHERE "
|
|
119
182
|
const after = normalized.substring(whereIndex + 7);
|
|
183
|
+
// Find any trailing clauses (ORDER BY, GROUP BY, etc.) after the WHERE
|
|
184
|
+
const upperAfter = after.toUpperCase();
|
|
185
|
+
const trailingPatterns = [
|
|
186
|
+
' ORDER BY',
|
|
187
|
+
' GROUP BY',
|
|
188
|
+
' HAVING',
|
|
189
|
+
' LIMIT',
|
|
190
|
+
' OFFSET',
|
|
191
|
+
' FOR UPDATE',
|
|
192
|
+
];
|
|
193
|
+
let trailingPos = after.length;
|
|
194
|
+
for (const pattern of trailingPatterns) {
|
|
195
|
+
const idx = upperAfter.indexOf(pattern);
|
|
196
|
+
if (idx !== -1 && idx < trailingPos) {
|
|
197
|
+
trailingPos = idx;
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
const whereBody = after.substring(0, trailingPos);
|
|
201
|
+
const trailing = after.substring(trailingPos);
|
|
120
202
|
return {
|
|
121
|
-
sql: `${before}
|
|
122
|
-
params: [
|
|
203
|
+
sql: `${before}${whereBody} AND ${wsCol} = ?${trailing}`,
|
|
204
|
+
params: [...params, workspaceId],
|
|
123
205
|
};
|
|
124
206
|
}
|
|
125
207
|
// No WHERE clause — find insertion point (before ORDER BY, GROUP BY, LIMIT, etc.)
|
|
@@ -133,9 +215,14 @@ function injectWhereWorkspaceId(sql, workspaceId, params) {
|
|
|
133
215
|
}
|
|
134
216
|
const before = normalized.substring(0, insertPos);
|
|
135
217
|
const after = normalized.substring(insertPos);
|
|
218
|
+
// Count how many ? appear before the insertion point to determine where
|
|
219
|
+
// in the params array the workspace_id value should be spliced in.
|
|
220
|
+
const questionsBefore = (before.match(/\?/g) || []).length;
|
|
221
|
+
const newParams = [...params];
|
|
222
|
+
newParams.splice(questionsBefore, 0, workspaceId);
|
|
136
223
|
return {
|
|
137
|
-
sql: `${before} WHERE
|
|
138
|
-
params:
|
|
224
|
+
sql: `${before} WHERE ${wsCol} = ?${after}`,
|
|
225
|
+
params: newParams,
|
|
139
226
|
};
|
|
140
227
|
}
|
|
141
228
|
/**
|
|
@@ -154,6 +241,16 @@ function loadPgMigration(migrationName) {
|
|
|
154
241
|
throw new Error(`Postgres migration file not found: ${migrationName}. Checked: ${candidatePaths.join(', ')}`);
|
|
155
242
|
}
|
|
156
243
|
const PG_MIGRATIONS = [{ name: '001-full-schema.sql' }];
|
|
244
|
+
/**
|
|
245
|
+
* Strip SQLite-specific syntax that Postgres does not understand.
|
|
246
|
+
*/
|
|
247
|
+
function sanitizeForPostgres(sql) {
|
|
248
|
+
// Remove COLLATE NOCASE (SQLite case-insensitive collation)
|
|
249
|
+
let result = sql.replace(/\s+COLLATE\s+NOCASE/gi, '');
|
|
250
|
+
// Convert INSERT OR IGNORE to INSERT ... ON CONFLICT DO NOTHING
|
|
251
|
+
result = result.replace(/INSERT\s+OR\s+IGNORE\s+INTO/gi, 'INSERT INTO');
|
|
252
|
+
return result;
|
|
253
|
+
}
|
|
157
254
|
/**
|
|
158
255
|
* Postgres implementation of DatabaseProvider using node-postgres (pg).
|
|
159
256
|
* All queries are automatically scoped by workspace_id for multi-tenant isolation.
|
|
@@ -202,11 +299,16 @@ export class PostgresProvider {
|
|
|
202
299
|
}
|
|
203
300
|
}
|
|
204
301
|
async queryAll(sql, params = []) {
|
|
205
|
-
let finalSql = sql;
|
|
302
|
+
let finalSql = sanitizeForPostgres(sql);
|
|
206
303
|
let finalParams = params;
|
|
207
304
|
if (needsWorkspaceScope(sql)) {
|
|
208
305
|
const normalized = sql.replace(/\s+/g, ' ').trim().toUpperCase();
|
|
209
|
-
if (
|
|
306
|
+
if (normalized.startsWith('INSERT')) {
|
|
307
|
+
const result = injectInsertWorkspaceId(finalSql, this.workspaceId, finalParams);
|
|
308
|
+
finalSql = result.sql;
|
|
309
|
+
finalParams = result.params;
|
|
310
|
+
}
|
|
311
|
+
else {
|
|
210
312
|
const result = injectWhereWorkspaceId(finalSql, this.workspaceId, finalParams);
|
|
211
313
|
finalSql = result.sql;
|
|
212
314
|
finalParams = result.params;
|
|
@@ -221,7 +323,7 @@ export class PostgresProvider {
|
|
|
221
323
|
return results[0];
|
|
222
324
|
}
|
|
223
325
|
async run(sql, params = []) {
|
|
224
|
-
let finalSql = sql;
|
|
326
|
+
let finalSql = sanitizeForPostgres(sql);
|
|
225
327
|
let finalParams = params;
|
|
226
328
|
if (needsWorkspaceScope(sql)) {
|
|
227
329
|
const normalized = sql.replace(/\s+/g, ' ').trim().toUpperCase();
|
|
@@ -293,11 +395,16 @@ export class PostgresProvider {
|
|
|
293
395
|
* Create a PostgresProvider from the HIVE_DATABASE_URL environment variable.
|
|
294
396
|
* Loads .env file via dotenv if available.
|
|
295
397
|
*/
|
|
296
|
-
export async function createPostgresProvider(workspaceId) {
|
|
297
|
-
// Load .env file if dotenv is available
|
|
398
|
+
export async function createPostgresProvider(workspaceId, envPath) {
|
|
399
|
+
// Load .env file if dotenv is available — use workspace root if provided
|
|
298
400
|
try {
|
|
299
401
|
const dotenv = await import('dotenv');
|
|
300
|
-
|
|
402
|
+
if (envPath) {
|
|
403
|
+
dotenv.config({ path: envPath });
|
|
404
|
+
}
|
|
405
|
+
else {
|
|
406
|
+
dotenv.config();
|
|
407
|
+
}
|
|
301
408
|
}
|
|
302
409
|
catch {
|
|
303
410
|
// dotenv not available, rely on environment variables
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"postgres-provider.js","sourceRoot":"","sources":["../../src/db/postgres-provider.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"postgres-provider.js","sourceRoot":"","sources":["../../src/db/postgres-provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logs.d.ts","sourceRoot":"","sources":["../../../src/db/queries/logs.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAEvD,YAAY,EAAE,WAAW,EAAE,CAAC;AAE5B,MAAM,MAAM,SAAS,GACjB,eAAe,GACf,oBAAoB,GACpB,kBAAkB,GAClB,eAAe,GACf,kBAAkB,GAClB,yBAAyB,GACzB,sBAAsB,GACtB,kBAAkB,GAClB,oBAAoB,GACpB,eAAe,GACf,iBAAiB,GACjB,gBAAgB,GAChB,eAAe,GACf,uBAAuB,GACvB,iBAAiB,GACjB,wBAAwB,GACxB,kBAAkB,GAClB,iBAAiB,GACjB,iBAAiB,GACjB,kBAAkB,GAClB,cAAc,GACd,gCAAgC,GAChC,0BAA0B,GAC1B,wBAAwB,GACxB,0BAA0B,GAC1B,eAAe,GACf,cAAc,GACd,cAAc,GACd,4BAA4B,GAC5B,2BAA2B,GAC3B,2BAA2B,GAC3B,oBAAoB,GACpB,qBAAqB,GACrB,gBAAgB,GAChB,kBAAkB,GAClB,YAAY,GACZ,cAAc,GACd,mBAAmB,GACnB,aAAa,GACb,WAAW,GACX,aAAa,GACb,WAAW,GACX,iBAAiB,GACjB,kBAAkB,GAClB,iBAAiB,GACjB,mBAAmB,GACnB,qBAAqB,GACrB,mBAAmB,GACnB,mBAAmB,GACnB,oBAAoB,GACpB,yBAAyB,GACzB,wBAAwB,GACxB,yBAAyB,GACzB,2BAA2B,GAC3B,oBAAoB,GACpB,0BAA0B,GAC1B,+BAA+B,GAC/B,iBAAiB,GACjB,wBAAwB,GACxB,uBAAuB,GACvB,sBAAsB,GACtB,4BAA4B,GAC5B,yBAAyB,GACzB,yBAAyB,CAAC;AAE9B,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,SAAS,EAAE,SAAS,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;CAC3C;
|
|
1
|
+
{"version":3,"file":"logs.d.ts","sourceRoot":"","sources":["../../../src/db/queries/logs.ts"],"names":[],"mappings":"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"}
|
package/dist/db/queries/logs.js
CHANGED
|
@@ -12,6 +12,16 @@ function inferAgentType(agentId) {
|
|
|
12
12
|
return 'tech_lead';
|
|
13
13
|
}
|
|
14
14
|
async function getAgentColumnNames(provider) {
|
|
15
|
+
try {
|
|
16
|
+
// Try Postgres information_schema first
|
|
17
|
+
const pgRows = await provider.queryAll("SELECT column_name FROM information_schema.columns WHERE table_name = 'agents'");
|
|
18
|
+
if (pgRows.length > 0) {
|
|
19
|
+
return new Set(pgRows.map(r => r.column_name));
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
catch {
|
|
23
|
+
// Fall back to SQLite PRAGMA
|
|
24
|
+
}
|
|
15
25
|
const rows = await provider.queryAll('PRAGMA table_info(agents)');
|
|
16
26
|
const columnNames = new Set();
|
|
17
27
|
for (const row of rows) {
|
|
@@ -50,10 +60,16 @@ async function ensureLogAgentExists(provider, agentId) {
|
|
|
50
60
|
insertValues.push(now);
|
|
51
61
|
}
|
|
52
62
|
const placeholders = insertColumns.map(() => '?').join(', ');
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
63
|
+
try {
|
|
64
|
+
await provider.run(`
|
|
65
|
+
INSERT INTO agents (${insertColumns.join(', ')})
|
|
66
|
+
VALUES (${placeholders})
|
|
67
|
+
ON CONFLICT DO NOTHING
|
|
68
|
+
`, insertValues);
|
|
69
|
+
}
|
|
70
|
+
catch {
|
|
71
|
+
// Ignore insert conflicts — agent row already exists
|
|
72
|
+
}
|
|
57
73
|
}
|
|
58
74
|
async function resolveLogAgentId(provider, rawAgentId) {
|
|
59
75
|
const direct = await provider.queryOne('SELECT id FROM agents WHERE id = ?', [
|
|
@@ -87,9 +103,12 @@ export async function createLog(provider, input) {
|
|
|
87
103
|
const now = new Date().toISOString();
|
|
88
104
|
const resolvedAgentId = await resolveLogAgentId(provider, input.agentId);
|
|
89
105
|
const resolvedStoryId = await resolveLogStoryId(provider, input.storyId);
|
|
90
|
-
|
|
106
|
+
// Use queryOne with RETURNING to get the inserted id in a single statement.
|
|
107
|
+
// RETURNING is supported by both SQLite (3.35+) and Postgres.
|
|
108
|
+
const result = await provider.queryOne(`
|
|
91
109
|
INSERT INTO agent_logs (agent_id, story_id, event_type, status, message, metadata, timestamp)
|
|
92
110
|
VALUES (?, ?, ?, ?, ?, ?, ?)
|
|
111
|
+
RETURNING id
|
|
93
112
|
`, [
|
|
94
113
|
resolvedAgentId,
|
|
95
114
|
resolvedStoryId,
|
|
@@ -99,8 +118,6 @@ export async function createLog(provider, input) {
|
|
|
99
118
|
metadata,
|
|
100
119
|
now,
|
|
101
120
|
]);
|
|
102
|
-
// Get the last inserted row
|
|
103
|
-
const result = await provider.queryOne('SELECT last_insert_rowid() as id');
|
|
104
121
|
return (await getLogById(provider, result?.id || 0));
|
|
105
122
|
}
|
|
106
123
|
export async function getLogById(provider, id) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logs.js","sourceRoot":"","sources":["../../../src/db/queries/logs.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAkF7D,SAAS,cAAc,CACrB,OAAe;IAEf,MAAM,UAAU,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IACzC,IAAI,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IAC3C,IAAI,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAAE,OAAO,QAAQ,CAAC;IACnD,IAAI,UAAU,CAAC,QAAQ,CAAC,cAAc,CAAC;QAAE,OAAO,cAAc,CAAC;IAC/D,IAAI,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAAE,OAAO,QAAQ,CAAC;IACnD,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,KAAK,UAAU,mBAAmB,CAAC,QAA0B;IAC3D,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAmB,2BAA2B,CAAC,CAAC;IACpF,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;IACtC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,KAAK,UAAU,oBAAoB,CAAC,QAA0B,EAAE,OAAe;IAC7E,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAiB,oCAAoC,EAAE;QAC7F,OAAO;KACR,CAAC,CAAC;IACH,IAAI,QAAQ,EAAE,EAAE;QAAE,OAAO;IAEzB,MAAM,OAAO,GAAG,MAAM,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IACpD,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACrC,MAAM,aAAa,GAAa,CAAC,IAAI,CAAC,CAAC;IACvC,MAAM,YAAY,GAAsB,CAAC,OAAO,CAAC,CAAC;IAElD,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;QACxB,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC3B,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC;IAC7C,CAAC;IACD,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1B,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC7B,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAClC,CAAC;IACD,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;QAC9B,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACjC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IACD,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;QAC9B,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACjC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IACD,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;QAC7B,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAChC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IAED,MAAM,YAAY,GAAG,aAAa,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7D,MAAM,QAAQ,CAAC,GAAG,CAChB;
|
|
1
|
+
{"version":3,"file":"logs.js","sourceRoot":"","sources":["../../../src/db/queries/logs.ts"],"names":[],"mappings":"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"}
|
|
@@ -22,16 +22,16 @@ export async function getRequirementById(provider, id) {
|
|
|
22
22
|
return await provider.queryOne('SELECT * FROM requirements WHERE id = ?', [id]);
|
|
23
23
|
}
|
|
24
24
|
export async function getAllRequirements(provider) {
|
|
25
|
-
return await provider.queryAll('SELECT * FROM requirements ORDER BY created_at DESC,
|
|
25
|
+
return await provider.queryAll('SELECT * FROM requirements ORDER BY created_at DESC, id DESC');
|
|
26
26
|
}
|
|
27
27
|
export async function getRequirementsByStatus(provider, status) {
|
|
28
|
-
return await provider.queryAll('SELECT * FROM requirements WHERE status = ? ORDER BY created_at DESC,
|
|
28
|
+
return await provider.queryAll('SELECT * FROM requirements WHERE status = ? ORDER BY created_at DESC, id DESC', [status]);
|
|
29
29
|
}
|
|
30
30
|
export async function getPendingRequirements(provider) {
|
|
31
31
|
return await provider.queryAll(`
|
|
32
32
|
SELECT * FROM requirements
|
|
33
33
|
WHERE status IN ('pending', 'planning', 'in_progress')
|
|
34
|
-
ORDER BY created_at,
|
|
34
|
+
ORDER BY created_at, id
|
|
35
35
|
`);
|
|
36
36
|
}
|
|
37
37
|
export async function updateRequirement(provider, id, input) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"requirements.js","sourceRoot":"","sources":["../../../src/db/queries/requirements.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAE7D,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAyChC,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,QAA0B,EAC1B,KAA6B;IAE7B,MAAM,EAAE,GAAG,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;IAC5C,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAErC,MAAM,QAAQ,CAAC,GAAG,CAChB;;;GAGD,EACC;QACE,EAAE;QACF,KAAK,CAAC,KAAK;QACX,KAAK,CAAC,WAAW;QACjB,KAAK,CAAC,WAAW,IAAI,OAAO;QAC5B,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACrB,KAAK,CAAC,YAAY,IAAI,MAAM;QAC5B,KAAK,CAAC,aAAa,IAAI,IAAI;QAC3B,GAAG;KACJ,CACF,CAAC;IAEF,OAAO,CAAC,MAAM,kBAAkB,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAE,CAAC;AACnD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,QAA0B,EAC1B,EAAU;IAEV,OAAO,MAAM,QAAQ,CAAC,QAAQ,CAAiB,yCAAyC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAClG,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,QAA0B;IACjE,OAAO,MAAM,QAAQ,CAAC,QAAQ,CAC5B,
|
|
1
|
+
{"version":3,"file":"requirements.js","sourceRoot":"","sources":["../../../src/db/queries/requirements.ts"],"names":[],"mappings":"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"}
|
|
@@ -865,7 +865,7 @@ export class Scheduler {
|
|
|
865
865
|
* active even after stories move from planned to in_progress/review/qa.
|
|
866
866
|
*/
|
|
867
867
|
async isGodmodeActive() {
|
|
868
|
-
const activeRequirements = await this.provider.queryAll(`SELECT * FROM requirements WHERE status IN ('planning', 'planned', 'in_progress') AND godmode =
|
|
868
|
+
const activeRequirements = await this.provider.queryAll(`SELECT * FROM requirements WHERE status IN ('planning', 'planned', 'in_progress') AND godmode = true`);
|
|
869
869
|
return activeRequirements.length > 0;
|
|
870
870
|
}
|
|
871
871
|
/**
|