sqlew 1.0.0 → 1.1.1
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/CHANGELOG.md +63 -0
- package/README.md +98 -10
- package/assets/schema.sql +104 -108
- package/dist/constants.d.ts +8 -0
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +11 -0
- package/dist/constants.js.map +1 -1
- package/dist/database.d.ts +41 -0
- package/dist/database.d.ts.map +1 -1
- package/dist/database.js +140 -18
- package/dist/database.js.map +1 -1
- package/dist/index.js +112 -3
- package/dist/index.js.map +1 -1
- package/dist/migrations/add-table-prefixes.d.ts +29 -0
- package/dist/migrations/add-table-prefixes.d.ts.map +1 -0
- package/dist/migrations/add-table-prefixes.js +150 -0
- package/dist/migrations/add-table-prefixes.js.map +1 -0
- package/dist/schema.d.ts +1 -1
- package/dist/schema.d.ts.map +1 -1
- package/dist/schema.js +19 -14
- package/dist/schema.js.map +1 -1
- package/dist/tools/config.d.ts +35 -0
- package/dist/tools/config.d.ts.map +1 -0
- package/dist/tools/config.js +61 -0
- package/dist/tools/config.js.map +1 -0
- package/dist/tools/constraints.d.ts +3 -3
- package/dist/tools/constraints.js +15 -15
- package/dist/tools/constraints.js.map +1 -1
- package/dist/tools/context.d.ts +7 -7
- package/dist/tools/context.js +41 -41
- package/dist/tools/context.js.map +1 -1
- package/dist/tools/files.d.ts.map +1 -1
- package/dist/tools/files.js +13 -10
- package/dist/tools/files.js.map +1 -1
- package/dist/tools/messaging.d.ts.map +1 -1
- package/dist/tools/messaging.js +8 -5
- package/dist/tools/messaging.js.map +1 -1
- package/dist/tools/utils.d.ts +5 -2
- package/dist/tools/utils.d.ts.map +1 -1
- package/dist/tools/utils.js +48 -35
- package/dist/tools/utils.js.map +1 -1
- package/dist/utils/cleanup.d.ts +45 -0
- package/dist/utils/cleanup.d.ts.map +1 -0
- package/dist/utils/cleanup.js +63 -0
- package/dist/utils/cleanup.js.map +1 -0
- package/dist/utils/retention.d.ts +47 -0
- package/dist/utils/retention.d.ts.map +1 -0
- package/dist/utils/retention.js +125 -0
- package/dist/utils/retention.js.map +1 -0
- package/package.json +2 -2
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Migration: Add table prefixes (v1.0.1 -> v1.1.0)
|
|
3
|
+
*
|
|
4
|
+
* Migrates database from unprefixed table names to prefixed names:
|
|
5
|
+
* - Master tables: m_ prefix
|
|
6
|
+
* - Transaction tables: t_ prefix
|
|
7
|
+
* - Views: v_ prefix
|
|
8
|
+
* - Triggers: trg_ prefix
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* Check if migration is needed
|
|
12
|
+
*/
|
|
13
|
+
export function needsMigration(db) {
|
|
14
|
+
// Check if old table exists (agents) and new table doesn't exist (m_agents)
|
|
15
|
+
const oldExists = db.prepare("SELECT name FROM sqlite_master WHERE type='table' AND name='agents'").get();
|
|
16
|
+
const newExists = db.prepare("SELECT name FROM sqlite_master WHERE type='table' AND name='m_agents'").get();
|
|
17
|
+
return oldExists !== undefined && newExists === undefined;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Run the migration
|
|
21
|
+
*/
|
|
22
|
+
export function runMigration(db) {
|
|
23
|
+
const details = [];
|
|
24
|
+
try {
|
|
25
|
+
// Start transaction
|
|
26
|
+
db.exec('BEGIN TRANSACTION');
|
|
27
|
+
// 1. Drop old views (they reference old table names)
|
|
28
|
+
const oldViews = [
|
|
29
|
+
'tagged_decisions',
|
|
30
|
+
'active_context',
|
|
31
|
+
'layer_summary',
|
|
32
|
+
'unread_messages_by_priority',
|
|
33
|
+
'recent_file_changes',
|
|
34
|
+
'tagged_constraints'
|
|
35
|
+
];
|
|
36
|
+
for (const view of oldViews) {
|
|
37
|
+
const exists = db.prepare("SELECT name FROM sqlite_master WHERE type='view' AND name=?").get(view);
|
|
38
|
+
if (exists) {
|
|
39
|
+
db.exec(`DROP VIEW IF EXISTS ${view}`);
|
|
40
|
+
details.push(`Dropped view: ${view}`);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
// 2. Drop old triggers
|
|
44
|
+
const oldTriggers = [
|
|
45
|
+
'auto_delete_old_messages',
|
|
46
|
+
'auto_delete_old_file_changes',
|
|
47
|
+
'record_decision_history'
|
|
48
|
+
];
|
|
49
|
+
for (const trigger of oldTriggers) {
|
|
50
|
+
const exists = db.prepare("SELECT name FROM sqlite_master WHERE type='trigger' AND name=?").get(trigger);
|
|
51
|
+
if (exists) {
|
|
52
|
+
db.exec(`DROP TRIGGER IF EXISTS ${trigger}`);
|
|
53
|
+
details.push(`Dropped trigger: ${trigger}`);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
// 3. Rename master tables
|
|
57
|
+
const masterTables = [
|
|
58
|
+
{ old: 'agents', new: 'm_agents' },
|
|
59
|
+
{ old: 'files', new: 'm_files' },
|
|
60
|
+
{ old: 'context_keys', new: 'm_context_keys' },
|
|
61
|
+
{ old: 'constraint_categories', new: 'm_constraint_categories' },
|
|
62
|
+
{ old: 'layers', new: 'm_layers' },
|
|
63
|
+
{ old: 'tags', new: 'm_tags' },
|
|
64
|
+
{ old: 'scopes', new: 'm_scopes' },
|
|
65
|
+
{ old: 'config', new: 'm_config' }
|
|
66
|
+
];
|
|
67
|
+
for (const table of masterTables) {
|
|
68
|
+
const exists = db.prepare("SELECT name FROM sqlite_master WHERE type='table' AND name=?").get(table.old);
|
|
69
|
+
if (exists) {
|
|
70
|
+
db.exec(`ALTER TABLE ${table.old} RENAME TO ${table.new}`);
|
|
71
|
+
details.push(`Renamed table: ${table.old} -> ${table.new}`);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
// 4. Rename transaction tables
|
|
75
|
+
const transactionTables = [
|
|
76
|
+
{ old: 'decisions', new: 't_decisions' },
|
|
77
|
+
{ old: 'decisions_numeric', new: 't_decisions_numeric' },
|
|
78
|
+
{ old: 'decision_history', new: 't_decision_history' },
|
|
79
|
+
{ old: 'decision_tags', new: 't_decision_tags' },
|
|
80
|
+
{ old: 'decision_scopes', new: 't_decision_scopes' },
|
|
81
|
+
{ old: 'agent_messages', new: 't_agent_messages' },
|
|
82
|
+
{ old: 'file_changes', new: 't_file_changes' },
|
|
83
|
+
{ old: 'constraints', new: 't_constraints' },
|
|
84
|
+
{ old: 'constraint_tags', new: 't_constraint_tags' }
|
|
85
|
+
];
|
|
86
|
+
for (const table of transactionTables) {
|
|
87
|
+
const exists = db.prepare("SELECT name FROM sqlite_master WHERE type='table' AND name=?").get(table.old);
|
|
88
|
+
if (exists) {
|
|
89
|
+
db.exec(`ALTER TABLE ${table.old} RENAME TO ${table.new}`);
|
|
90
|
+
details.push(`Renamed table: ${table.old} -> ${table.new}`);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
// 5. Create m_config table if it doesn't exist (new in v1.1.0)
|
|
94
|
+
const configExists = db.prepare("SELECT name FROM sqlite_master WHERE type='table' AND name='m_config'").get();
|
|
95
|
+
if (!configExists) {
|
|
96
|
+
db.exec(`
|
|
97
|
+
CREATE TABLE m_config (
|
|
98
|
+
key TEXT PRIMARY KEY,
|
|
99
|
+
value TEXT NOT NULL
|
|
100
|
+
);
|
|
101
|
+
`);
|
|
102
|
+
// Insert default config values
|
|
103
|
+
db.prepare('INSERT INTO m_config (key, value) VALUES (?, ?)').run('autodelete_ignore_weekend', '0');
|
|
104
|
+
db.prepare('INSERT INTO m_config (key, value) VALUES (?, ?)').run('autodelete_message_hours', '24');
|
|
105
|
+
db.prepare('INSERT INTO m_config (key, value) VALUES (?, ?)').run('autodelete_file_history_days', '7');
|
|
106
|
+
details.push('Created table: m_config (new in v1.1.0)');
|
|
107
|
+
details.push('Initialized config with default values');
|
|
108
|
+
}
|
|
109
|
+
// Commit transaction
|
|
110
|
+
db.exec('COMMIT');
|
|
111
|
+
return {
|
|
112
|
+
success: true,
|
|
113
|
+
message: 'Migration completed successfully. New views and triggers will be created by schema initialization.',
|
|
114
|
+
details
|
|
115
|
+
};
|
|
116
|
+
}
|
|
117
|
+
catch (error) {
|
|
118
|
+
// Rollback on error
|
|
119
|
+
db.exec('ROLLBACK');
|
|
120
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
121
|
+
return {
|
|
122
|
+
success: false,
|
|
123
|
+
message: `Migration failed: ${message}`,
|
|
124
|
+
details
|
|
125
|
+
};
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
/**
|
|
129
|
+
* Get migration info
|
|
130
|
+
*/
|
|
131
|
+
export function getMigrationInfo() {
|
|
132
|
+
return `
|
|
133
|
+
Migration: Add Table Prefixes (v1.0.1 -> v1.1.0)
|
|
134
|
+
|
|
135
|
+
This migration adds category-based prefixes to all database objects:
|
|
136
|
+
- Master tables: m_ prefix (8 tables)
|
|
137
|
+
- Transaction tables: t_ prefix (9 tables)
|
|
138
|
+
- Views: v_ prefix (6 views)
|
|
139
|
+
- Triggers: trg_ prefix (1 trigger)
|
|
140
|
+
|
|
141
|
+
The migration will:
|
|
142
|
+
1. Drop old views (they reference old table names)
|
|
143
|
+
2. Drop old triggers (if any exist from previous versions)
|
|
144
|
+
3. Rename all tables to new prefixed names
|
|
145
|
+
4. New views and triggers will be created by schema initialization
|
|
146
|
+
|
|
147
|
+
This migration is safe and reversible via backup restoration.
|
|
148
|
+
`.trim();
|
|
149
|
+
}
|
|
150
|
+
//# sourceMappingURL=add-table-prefixes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"add-table-prefixes.js","sourceRoot":"","sources":["../../src/migrations/add-table-prefixes.ts"],"names":[],"mappings":"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"}
|
package/dist/schema.d.ts
CHANGED
|
@@ -13,7 +13,7 @@ import { Database } from 'better-sqlite3';
|
|
|
13
13
|
export declare function initializeSchema(db: Database): void;
|
|
14
14
|
/**
|
|
15
15
|
* Check if schema is already initialized
|
|
16
|
-
* Checks for existence of the
|
|
16
|
+
* Checks for existence of the m_agents table
|
|
17
17
|
*
|
|
18
18
|
* @param db - SQLite database connection
|
|
19
19
|
* @returns true if schema exists, false otherwise
|
package/dist/schema.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAQ1C;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CAyBnD;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,QAAQ,GAAG,OAAO,CAUzD;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,EAAE,EAAE,QAAQ,GAAG;IAC3C,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,qBAAqB,EAAE,MAAM,CAAC;CAC/B,CAwBA;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,QAAQ,GAAG;IACnD,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB,
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAQ1C;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CAyBnD;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,QAAQ,GAAG,OAAO,CAUzD;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,EAAE,EAAE,QAAQ,GAAG;IAC3C,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,qBAAqB,EAAE,MAAM,CAAC;CAC/B,CAwBA;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,QAAQ,GAAG;IACnD,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB,CA0FA"}
|
package/dist/schema.js
CHANGED
|
@@ -40,14 +40,14 @@ export function initializeSchema(db) {
|
|
|
40
40
|
}
|
|
41
41
|
/**
|
|
42
42
|
* Check if schema is already initialized
|
|
43
|
-
* Checks for existence of the
|
|
43
|
+
* Checks for existence of the m_agents table
|
|
44
44
|
*
|
|
45
45
|
* @param db - SQLite database connection
|
|
46
46
|
* @returns true if schema exists, false otherwise
|
|
47
47
|
*/
|
|
48
48
|
export function isSchemaInitialized(db) {
|
|
49
49
|
try {
|
|
50
|
-
const result = db.prepare("SELECT name FROM sqlite_master WHERE type='table' AND name='agents'").get();
|
|
50
|
+
const result = db.prepare("SELECT name FROM sqlite_master WHERE type='table' AND (name='m_agents' OR name='agents')").get();
|
|
51
51
|
return result !== undefined;
|
|
52
52
|
}
|
|
53
53
|
catch (error) {
|
|
@@ -72,13 +72,13 @@ export function getSchemaInfo(db) {
|
|
|
72
72
|
constraint_categories: 0,
|
|
73
73
|
};
|
|
74
74
|
try {
|
|
75
|
-
counts.agents = db.prepare('SELECT COUNT(*) as count FROM
|
|
76
|
-
counts.files = db.prepare('SELECT COUNT(*) as count FROM
|
|
77
|
-
counts.context_keys = db.prepare('SELECT COUNT(*) as count FROM
|
|
78
|
-
counts.layers = db.prepare('SELECT COUNT(*) as count FROM
|
|
79
|
-
counts.tags = db.prepare('SELECT COUNT(*) as count FROM
|
|
80
|
-
counts.scopes = db.prepare('SELECT COUNT(*) as count FROM
|
|
81
|
-
counts.constraint_categories = db.prepare('SELECT COUNT(*) as count FROM
|
|
75
|
+
counts.agents = db.prepare('SELECT COUNT(*) as count FROM m_agents').get().count;
|
|
76
|
+
counts.files = db.prepare('SELECT COUNT(*) as count FROM m_files').get().count;
|
|
77
|
+
counts.context_keys = db.prepare('SELECT COUNT(*) as count FROM m_context_keys').get().count;
|
|
78
|
+
counts.layers = db.prepare('SELECT COUNT(*) as count FROM m_layers').get().count;
|
|
79
|
+
counts.tags = db.prepare('SELECT COUNT(*) as count FROM m_tags').get().count;
|
|
80
|
+
counts.scopes = db.prepare('SELECT COUNT(*) as count FROM m_scopes').get().count;
|
|
81
|
+
counts.constraint_categories = db.prepare('SELECT COUNT(*) as count FROM m_constraint_categories').get().count;
|
|
82
82
|
}
|
|
83
83
|
catch (error) {
|
|
84
84
|
// If tables don't exist yet, return zeros
|
|
@@ -99,7 +99,7 @@ export function verifySchemaIntegrity(db) {
|
|
|
99
99
|
errors: [],
|
|
100
100
|
};
|
|
101
101
|
const requiredTables = [
|
|
102
|
-
'agents', 'files', 'context_keys', 'constraint_categories', 'layers', 'tags', 'scopes',
|
|
102
|
+
'agents', 'files', 'context_keys', 'constraint_categories', 'layers', 'tags', 'scopes', 'config',
|
|
103
103
|
'decisions', 'decisions_numeric', 'decision_history', 'decision_tags', 'decision_scopes',
|
|
104
104
|
'agent_messages', 'file_changes', 'constraints', 'constraint_tags',
|
|
105
105
|
];
|
|
@@ -108,7 +108,7 @@ export function verifySchemaIntegrity(db) {
|
|
|
108
108
|
'unread_messages_by_priority', 'recent_file_changes', 'tagged_constraints',
|
|
109
109
|
];
|
|
110
110
|
const requiredTriggers = [
|
|
111
|
-
'
|
|
111
|
+
'record_decision_history',
|
|
112
112
|
];
|
|
113
113
|
try {
|
|
114
114
|
// Check tables
|
|
@@ -136,21 +136,26 @@ export function verifySchemaIntegrity(db) {
|
|
|
136
136
|
}
|
|
137
137
|
}
|
|
138
138
|
// Verify standard data exists
|
|
139
|
-
const layerCount = db.prepare('SELECT COUNT(*) as count FROM
|
|
139
|
+
const layerCount = db.prepare('SELECT COUNT(*) as count FROM m_layers').get().count;
|
|
140
140
|
if (layerCount < 5) {
|
|
141
141
|
result.errors.push(`Expected 5 standard layers, found ${layerCount}`);
|
|
142
142
|
result.valid = false;
|
|
143
143
|
}
|
|
144
|
-
const categoryCount = db.prepare('SELECT COUNT(*) as count FROM
|
|
144
|
+
const categoryCount = db.prepare('SELECT COUNT(*) as count FROM m_constraint_categories').get().count;
|
|
145
145
|
if (categoryCount < 3) {
|
|
146
146
|
result.errors.push(`Expected 3 standard categories, found ${categoryCount}`);
|
|
147
147
|
result.valid = false;
|
|
148
148
|
}
|
|
149
|
-
const tagCount = db.prepare('SELECT COUNT(*) as count FROM
|
|
149
|
+
const tagCount = db.prepare('SELECT COUNT(*) as count FROM m_tags').get().count;
|
|
150
150
|
if (tagCount < 10) {
|
|
151
151
|
result.errors.push(`Expected 10 standard tags, found ${tagCount}`);
|
|
152
152
|
result.valid = false;
|
|
153
153
|
}
|
|
154
|
+
const configCount = db.prepare('SELECT COUNT(*) as count FROM m_config').get().count;
|
|
155
|
+
if (configCount < 3) {
|
|
156
|
+
result.errors.push(`Expected 3 m_config entries, found ${configCount}`);
|
|
157
|
+
result.valid = false;
|
|
158
|
+
}
|
|
154
159
|
}
|
|
155
160
|
catch (error) {
|
|
156
161
|
result.valid = false;
|
package/dist/schema.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AAEpC,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AAEtC;;;;;;GAMG;AACH,MAAM,UAAU,gBAAgB,CAAC,EAAY;IAC3C,IAAI,CAAC;QACH,mBAAmB;QACnB,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;QACjE,MAAM,SAAS,GAAG,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QAEpD,gDAAgD;QAChD,EAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QAE7B,IAAI,CAAC;YACH,4BAA4B;YAC5B,yEAAyE;YACzE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAEnB,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAElB,OAAO,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAC;QAC5D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACpB,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvE,MAAM,IAAI,KAAK,CAAC,gCAAgC,OAAO,EAAE,CAAC,CAAC;IAC7D,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB,CAAC,EAAY;IAC9C,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,EAAE,CAAC,OAAO,CACvB,
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Configuration management tools for MCP Shared Context Server
|
|
3
|
+
* Provides tools to get and update auto-deletion configuration
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Get current configuration settings
|
|
7
|
+
*
|
|
8
|
+
* @returns Current configuration values
|
|
9
|
+
*/
|
|
10
|
+
export declare function getConfig(): {
|
|
11
|
+
ignoreWeekend: boolean;
|
|
12
|
+
messageRetentionHours: number;
|
|
13
|
+
fileHistoryRetentionDays: number;
|
|
14
|
+
};
|
|
15
|
+
/**
|
|
16
|
+
* Update configuration settings
|
|
17
|
+
* Validates values before updating
|
|
18
|
+
*
|
|
19
|
+
* @param params - Configuration parameters to update
|
|
20
|
+
* @returns Updated configuration
|
|
21
|
+
*/
|
|
22
|
+
export declare function updateConfig(params: {
|
|
23
|
+
ignoreWeekend?: boolean;
|
|
24
|
+
messageRetentionHours?: number;
|
|
25
|
+
fileHistoryRetentionDays?: number;
|
|
26
|
+
}): {
|
|
27
|
+
success: boolean;
|
|
28
|
+
config: {
|
|
29
|
+
ignoreWeekend: boolean;
|
|
30
|
+
messageRetentionHours: number;
|
|
31
|
+
fileHistoryRetentionDays: number;
|
|
32
|
+
};
|
|
33
|
+
message: string;
|
|
34
|
+
};
|
|
35
|
+
//# sourceMappingURL=config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/tools/config.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH;;;;GAIG;AACH,wBAAgB,SAAS,IAAI;IAC3B,aAAa,EAAE,OAAO,CAAC;IACvB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,wBAAwB,EAAE,MAAM,CAAC;CAClC,CAYA;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE;IACnC,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,wBAAwB,CAAC,EAAE,MAAM,CAAC;CACnC,GAAG;IACF,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE;QACN,aAAa,EAAE,OAAO,CAAC;QACvB,qBAAqB,EAAE,MAAM,CAAC;QAC9B,wBAAwB,EAAE,MAAM,CAAC;KAClC,CAAC;IACF,OAAO,EAAE,MAAM,CAAC;CACjB,CAqCA"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Configuration management tools for MCP Shared Context Server
|
|
3
|
+
* Provides tools to get and update auto-deletion configuration
|
|
4
|
+
*/
|
|
5
|
+
import { getDatabase, setConfigValue, getConfigBool, getConfigInt } from '../database.js';
|
|
6
|
+
import { CONFIG_KEYS } from '../constants.js';
|
|
7
|
+
/**
|
|
8
|
+
* Get current configuration settings
|
|
9
|
+
*
|
|
10
|
+
* @returns Current configuration values
|
|
11
|
+
*/
|
|
12
|
+
export function getConfig() {
|
|
13
|
+
const db = getDatabase();
|
|
14
|
+
const ignoreWeekend = getConfigBool(db, CONFIG_KEYS.AUTODELETE_IGNORE_WEEKEND, false);
|
|
15
|
+
const messageRetentionHours = getConfigInt(db, CONFIG_KEYS.AUTODELETE_MESSAGE_HOURS, 24);
|
|
16
|
+
const fileHistoryRetentionDays = getConfigInt(db, CONFIG_KEYS.AUTODELETE_FILE_HISTORY_DAYS, 7);
|
|
17
|
+
return {
|
|
18
|
+
ignoreWeekend,
|
|
19
|
+
messageRetentionHours,
|
|
20
|
+
fileHistoryRetentionDays,
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Update configuration settings
|
|
25
|
+
* Validates values before updating
|
|
26
|
+
*
|
|
27
|
+
* @param params - Configuration parameters to update
|
|
28
|
+
* @returns Updated configuration
|
|
29
|
+
*/
|
|
30
|
+
export function updateConfig(params) {
|
|
31
|
+
const db = getDatabase();
|
|
32
|
+
// Validate values
|
|
33
|
+
if (params.messageRetentionHours !== undefined) {
|
|
34
|
+
if (params.messageRetentionHours < 1 || params.messageRetentionHours > 168) {
|
|
35
|
+
throw new Error('messageRetentionHours must be between 1 and 168 (1 week)');
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
if (params.fileHistoryRetentionDays !== undefined) {
|
|
39
|
+
if (params.fileHistoryRetentionDays < 1 || params.fileHistoryRetentionDays > 90) {
|
|
40
|
+
throw new Error('fileHistoryRetentionDays must be between 1 and 90 days');
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
// Update values
|
|
44
|
+
if (params.ignoreWeekend !== undefined) {
|
|
45
|
+
setConfigValue(db, CONFIG_KEYS.AUTODELETE_IGNORE_WEEKEND, params.ignoreWeekend ? '1' : '0');
|
|
46
|
+
}
|
|
47
|
+
if (params.messageRetentionHours !== undefined) {
|
|
48
|
+
setConfigValue(db, CONFIG_KEYS.AUTODELETE_MESSAGE_HOURS, String(params.messageRetentionHours));
|
|
49
|
+
}
|
|
50
|
+
if (params.fileHistoryRetentionDays !== undefined) {
|
|
51
|
+
setConfigValue(db, CONFIG_KEYS.AUTODELETE_FILE_HISTORY_DAYS, String(params.fileHistoryRetentionDays));
|
|
52
|
+
}
|
|
53
|
+
// Get updated config
|
|
54
|
+
const updatedConfig = getConfig();
|
|
55
|
+
return {
|
|
56
|
+
success: true,
|
|
57
|
+
config: updatedConfig,
|
|
58
|
+
message: 'Configuration updated successfully',
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
//# sourceMappingURL=config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/tools/config.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,WAAW,EAAgB,cAAc,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACxG,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C;;;;GAIG;AACH,MAAM,UAAU,SAAS;IAKvB,MAAM,EAAE,GAAG,WAAW,EAAE,CAAC;IAEzB,MAAM,aAAa,GAAG,aAAa,CAAC,EAAE,EAAE,WAAW,CAAC,yBAAyB,EAAE,KAAK,CAAC,CAAC;IACtF,MAAM,qBAAqB,GAAG,YAAY,CAAC,EAAE,EAAE,WAAW,CAAC,wBAAwB,EAAE,EAAE,CAAC,CAAC;IACzF,MAAM,wBAAwB,GAAG,YAAY,CAAC,EAAE,EAAE,WAAW,CAAC,4BAA4B,EAAE,CAAC,CAAC,CAAC;IAE/F,OAAO;QACL,aAAa;QACb,qBAAqB;QACrB,wBAAwB;KACzB,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,YAAY,CAAC,MAI5B;IASC,MAAM,EAAE,GAAG,WAAW,EAAE,CAAC;IAEzB,kBAAkB;IAClB,IAAI,MAAM,CAAC,qBAAqB,KAAK,SAAS,EAAE,CAAC;QAC/C,IAAI,MAAM,CAAC,qBAAqB,GAAG,CAAC,IAAI,MAAM,CAAC,qBAAqB,GAAG,GAAG,EAAE,CAAC;YAC3E,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;QAC9E,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,wBAAwB,KAAK,SAAS,EAAE,CAAC;QAClD,IAAI,MAAM,CAAC,wBAAwB,GAAG,CAAC,IAAI,MAAM,CAAC,wBAAwB,GAAG,EAAE,EAAE,CAAC;YAChF,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;QAC5E,CAAC;IACH,CAAC;IAED,gBAAgB;IAChB,IAAI,MAAM,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;QACvC,cAAc,CAAC,EAAE,EAAE,WAAW,CAAC,yBAAyB,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAC9F,CAAC;IAED,IAAI,MAAM,CAAC,qBAAqB,KAAK,SAAS,EAAE,CAAC;QAC/C,cAAc,CAAC,EAAE,EAAE,WAAW,CAAC,wBAAwB,EAAE,MAAM,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC;IACjG,CAAC;IAED,IAAI,MAAM,CAAC,wBAAwB,KAAK,SAAS,EAAE,CAAC;QAClD,cAAc,CAAC,EAAE,EAAE,WAAW,CAAC,4BAA4B,EAAE,MAAM,CAAC,MAAM,CAAC,wBAAwB,CAAC,CAAC,CAAC;IACxG,CAAC;IAED,qBAAqB;IACrB,MAAM,aAAa,GAAG,SAAS,EAAE,CAAC;IAElC,OAAO;QACL,OAAO,EAAE,IAAI;QACb,MAAM,EAAE,aAAa;QACrB,OAAO,EAAE,oCAAoC;KAC9C,CAAC;AACJ,CAAC"}
|
|
@@ -11,11 +11,11 @@ import type { AddConstraintParams, AddConstraintResponse, GetConstraintsParams,
|
|
|
11
11
|
*/
|
|
12
12
|
export declare function addConstraint(params: AddConstraintParams): AddConstraintResponse;
|
|
13
13
|
/**
|
|
14
|
-
* Retrieve
|
|
15
|
-
* Uses
|
|
14
|
+
* Retrieve t_constraints with advanced filtering
|
|
15
|
+
* Uses v_tagged_constraints view for token efficiency
|
|
16
16
|
*
|
|
17
17
|
* @param params - Filter parameters
|
|
18
|
-
* @returns Array of
|
|
18
|
+
* @returns Array of t_constraints matching filters
|
|
19
19
|
*/
|
|
20
20
|
export declare function getConstraints(params: GetConstraintsParams): GetConstraintsResponse;
|
|
21
21
|
/**
|
|
@@ -20,9 +20,9 @@ function validateCategory(category) {
|
|
|
20
20
|
*/
|
|
21
21
|
function getOrCreateCategoryId(db, category) {
|
|
22
22
|
// Insert if doesn't exist
|
|
23
|
-
db.prepare('INSERT OR IGNORE INTO
|
|
23
|
+
db.prepare('INSERT OR IGNORE INTO m_constraint_categories (name) VALUES (?)').run(category);
|
|
24
24
|
// Get the ID
|
|
25
|
-
const result = db.prepare('SELECT id FROM
|
|
25
|
+
const result = db.prepare('SELECT id FROM m_constraint_categories WHERE name = ?').get(category);
|
|
26
26
|
if (!result) {
|
|
27
27
|
throw new Error(`Failed to get or create category: ${category}`);
|
|
28
28
|
}
|
|
@@ -70,13 +70,13 @@ export function addConstraint(params) {
|
|
|
70
70
|
const agentId = getOrCreateAgent(db, createdBy);
|
|
71
71
|
// Insert constraint
|
|
72
72
|
const insertResult = db.prepare(`
|
|
73
|
-
INSERT INTO
|
|
73
|
+
INSERT INTO t_constraints (category_id, layer_id, constraint_text, priority, active, created_by, ts)
|
|
74
74
|
VALUES (?, ?, ?, ?, ?, ?, unixepoch())
|
|
75
75
|
`).run(categoryId, layerId, params.constraint_text, priority, SQLITE_TRUE, agentId);
|
|
76
76
|
const constraintId = insertResult.lastInsertRowid;
|
|
77
|
-
// Insert
|
|
77
|
+
// Insert m_tags if provided
|
|
78
78
|
if (params.tags && params.tags.length > 0) {
|
|
79
|
-
const tagStmt = db.prepare('INSERT INTO
|
|
79
|
+
const tagStmt = db.prepare('INSERT INTO t_constraint_tags (constraint_id, tag_id) VALUES (?, ?)');
|
|
80
80
|
for (const tagName of params.tags) {
|
|
81
81
|
const tagId = getOrCreateTag(db, tagName);
|
|
82
82
|
tagStmt.run(constraintId, tagId);
|
|
@@ -95,11 +95,11 @@ export function addConstraint(params) {
|
|
|
95
95
|
}
|
|
96
96
|
}
|
|
97
97
|
/**
|
|
98
|
-
* Retrieve
|
|
99
|
-
* Uses
|
|
98
|
+
* Retrieve t_constraints with advanced filtering
|
|
99
|
+
* Uses v_tagged_constraints view for token efficiency
|
|
100
100
|
*
|
|
101
101
|
* @param params - Filter parameters
|
|
102
|
-
* @returns Array of
|
|
102
|
+
* @returns Array of t_constraints matching filters
|
|
103
103
|
*/
|
|
104
104
|
export function getConstraints(params) {
|
|
105
105
|
const db = getDatabase();
|
|
@@ -107,8 +107,8 @@ export function getConstraints(params) {
|
|
|
107
107
|
// Build query conditions
|
|
108
108
|
const conditions = [];
|
|
109
109
|
const values = [];
|
|
110
|
-
// Use
|
|
111
|
-
let sql = 'SELECT * FROM
|
|
110
|
+
// Use v_tagged_constraints view (already filters active=1)
|
|
111
|
+
let sql = 'SELECT * FROM v_tagged_constraints WHERE 1=1';
|
|
112
112
|
// Filter by category
|
|
113
113
|
if (params.category) {
|
|
114
114
|
validateCategory(params.category);
|
|
@@ -125,7 +125,7 @@ export function getConstraints(params) {
|
|
|
125
125
|
conditions.push('priority = ?');
|
|
126
126
|
values.push(params.priority);
|
|
127
127
|
}
|
|
128
|
-
// Filter by
|
|
128
|
+
// Filter by m_tags (OR logic - match ANY tag)
|
|
129
129
|
if (params.tags && params.tags.length > 0) {
|
|
130
130
|
const tagConditions = params.tags.map(() => 'tags LIKE ?').join(' OR ');
|
|
131
131
|
conditions.push(`(${tagConditions})`);
|
|
@@ -137,14 +137,14 @@ export function getConstraints(params) {
|
|
|
137
137
|
if (conditions.length > 0) {
|
|
138
138
|
sql += ' AND ' + conditions.join(' AND ');
|
|
139
139
|
}
|
|
140
|
-
// Note:
|
|
140
|
+
// Note: v_tagged_constraints view already orders by priority DESC, category, ts DESC
|
|
141
141
|
// Add limit if provided
|
|
142
142
|
const limit = params.limit || 50;
|
|
143
143
|
sql += ' LIMIT ?';
|
|
144
144
|
values.push(limit);
|
|
145
145
|
// Execute query
|
|
146
146
|
const rows = db.prepare(sql).all(...values);
|
|
147
|
-
// Parse
|
|
147
|
+
// Parse m_tags from comma-separated to array for consistency
|
|
148
148
|
const constraints = rows.map(row => ({
|
|
149
149
|
...row,
|
|
150
150
|
tags: row.tags ? row.tags.split(',') : null,
|
|
@@ -174,12 +174,12 @@ export function deactivateConstraint(params) {
|
|
|
174
174
|
throw new Error('constraint_id is required and must be a number');
|
|
175
175
|
}
|
|
176
176
|
// Check if constraint exists
|
|
177
|
-
const constraint = db.prepare('SELECT id, active FROM
|
|
177
|
+
const constraint = db.prepare('SELECT id, active FROM t_constraints WHERE id = ?').get(params.constraint_id);
|
|
178
178
|
if (!constraint) {
|
|
179
179
|
throw new Error(`Constraint not found: ${params.constraint_id}`);
|
|
180
180
|
}
|
|
181
181
|
// Update constraint to inactive (idempotent)
|
|
182
|
-
db.prepare('UPDATE
|
|
182
|
+
db.prepare('UPDATE t_constraints SET active = ? WHERE id = ?').run(SQLITE_FALSE, params.constraint_id);
|
|
183
183
|
return {
|
|
184
184
|
success: true,
|
|
185
185
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constraints.js","sourceRoot":"","sources":["../../src/tools/constraints.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,UAAU,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACxG,OAAO,EACL,kBAAkB,EAElB,gBAAgB,EAChB,WAAW,EACX,YAAY,EACb,MAAM,iBAAiB,CAAC;AAazB;;;GAGG;AACH,SAAS,gBAAgB,CAAC,QAAgB;IACxC,MAAM,eAAe,GAAG,CAAC,aAAa,EAAE,cAAc,EAAE,UAAU,CAAC,CAAC;IACpE,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QACxC,MAAM,IAAI,KAAK,CAAC,qCAAqC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACrF,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,SAAS,qBAAqB,CAAC,EAAY,EAAE,QAAgB;IAC3D,0BAA0B;IAC1B,EAAE,CAAC,OAAO,CAAC
|
|
1
|
+
{"version":3,"file":"constraints.js","sourceRoot":"","sources":["../../src/tools/constraints.ts"],"names":[],"mappings":"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"}
|
package/dist/tools/context.d.ts
CHANGED
|
@@ -13,12 +13,12 @@ import type { SetDecisionParams, GetContextParams, GetDecisionParams, SetDecisio
|
|
|
13
13
|
*/
|
|
14
14
|
export declare function setDecision(params: SetDecisionParams): SetDecisionResponse;
|
|
15
15
|
/**
|
|
16
|
-
* Get context
|
|
17
|
-
* Uses
|
|
16
|
+
* Get context t_decisions with advanced filtering
|
|
17
|
+
* Uses v_tagged_decisions view for token efficiency
|
|
18
18
|
* Supports filtering by status, layer, tags, and scope
|
|
19
19
|
*
|
|
20
20
|
* @param params - Filter parameters
|
|
21
|
-
* @returns Array of
|
|
21
|
+
* @returns Array of t_decisions with metadata
|
|
22
22
|
*/
|
|
23
23
|
export declare function getContext(params?: GetContextParams): GetContextResponse;
|
|
24
24
|
/**
|
|
@@ -30,11 +30,11 @@ export declare function getContext(params?: GetContextParams): GetContextRespons
|
|
|
30
30
|
*/
|
|
31
31
|
export declare function getDecision(params: GetDecisionParams): GetDecisionResponse;
|
|
32
32
|
/**
|
|
33
|
-
* Search for
|
|
33
|
+
* Search for t_decisions by m_tags with AND/OR logic
|
|
34
34
|
* Provides flexible tag-based filtering with status and layer support
|
|
35
35
|
*
|
|
36
36
|
* @param params - Search parameters (tags, match_mode, status, layer)
|
|
37
|
-
* @returns Array of
|
|
37
|
+
* @returns Array of t_decisions matching tag criteria
|
|
38
38
|
*/
|
|
39
39
|
export declare function searchByTags(params: SearchByTagsParams): SearchByTagsResponse;
|
|
40
40
|
/**
|
|
@@ -46,11 +46,11 @@ export declare function searchByTags(params: SearchByTagsParams): SearchByTagsRe
|
|
|
46
46
|
*/
|
|
47
47
|
export declare function getVersions(params: GetVersionsParams): GetVersionsResponse;
|
|
48
48
|
/**
|
|
49
|
-
* Search for
|
|
49
|
+
* Search for t_decisions within a specific architecture layer
|
|
50
50
|
* Supports status filtering and optional tag inclusion
|
|
51
51
|
*
|
|
52
52
|
* @param params - Layer name, optional status and include_tags
|
|
53
|
-
* @returns Array of
|
|
53
|
+
* @returns Array of t_decisions in the specified layer
|
|
54
54
|
*/
|
|
55
55
|
export declare function searchByLayer(params: SearchByLayerParams): SearchByLayerResponse;
|
|
56
56
|
//# sourceMappingURL=context.d.ts.map
|