opencode-swarm-plugin 0.63.0 → 0.63.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/bin/swarm.js CHANGED
@@ -1969,7 +1969,7 @@ function possiblyAsyncStringify(value) {
1969
1969
  return { delay, cancel };
1970
1970
  }
1971
1971
  const unknownState = { state: "unknown", value: undefined };
1972
- const getAsyncContent = function getAsyncContent(data) {
1972
+ const getAsyncContent = function getAsyncContent2(data) {
1973
1973
  const cacheKey = data;
1974
1974
  if (cache.has(cacheKey)) {
1975
1975
  return cache.get(cacheKey);
@@ -5438,13 +5438,13 @@ class CommandWrapper {
5438
5438
  this.hasRan = false;
5439
5439
  if (hasToStringMethod(cmd)) {
5440
5440
  const method = cmd[toStringMethod];
5441
- this[toStringMethod] = function toStringMethod() {
5441
+ this[toStringMethod] = function toStringMethod2() {
5442
5442
  return method.call(cmd);
5443
5443
  };
5444
5444
  }
5445
5445
  if (hasAsyncToStringMethod(cmd)) {
5446
5446
  const method = cmd[asyncToStringMethod];
5447
- this[asyncToStringMethod] = function asyncToStringMethod() {
5447
+ this[asyncToStringMethod] = function asyncToStringMethod2() {
5448
5448
  return method.call(cmd);
5449
5449
  };
5450
5450
  }
@@ -16662,8 +16662,48 @@ async function runMigrations(db2) {
16662
16662
  }
16663
16663
  }
16664
16664
  const finalVersion = await getCurrentVersion3(db2);
16665
+ await healMemorySchema(db2);
16665
16666
  return { applied, current: finalVersion };
16666
16667
  }
16668
+ async function healMemorySchema(db2) {
16669
+ try {
16670
+ const tableCheck = await db2.query(`SELECT name FROM sqlite_master WHERE type='table' AND name='memories'`);
16671
+ if (tableCheck.rows.length === 0)
16672
+ return;
16673
+ const columnsResult = await db2.query(`SELECT name FROM pragma_table_info('memories')`);
16674
+ const existingColumns = new Set(columnsResult.rows.map((r) => r.name));
16675
+ const expectedColumns = [
16676
+ { name: "tags", type: "TEXT", defaultVal: "'[]'" },
16677
+ { name: "updated_at", type: "TEXT", defaultVal: "(datetime('now'))" },
16678
+ { name: "decay_factor", type: "REAL", defaultVal: "1.0" },
16679
+ { name: "access_count", type: "TEXT", defaultVal: "'0'" },
16680
+ { name: "last_accessed", type: "TEXT", defaultVal: "(datetime('now'))" },
16681
+ { name: "category", type: "TEXT", defaultVal: "NULL" },
16682
+ { name: "status", type: "TEXT", defaultVal: "'active'" },
16683
+ { name: "valid_from", type: "TEXT", defaultVal: "NULL" },
16684
+ { name: "valid_until", type: "TEXT", defaultVal: "NULL" },
16685
+ { name: "superseded_by", type: "TEXT", defaultVal: "NULL" },
16686
+ { name: "auto_tags", type: "TEXT", defaultVal: "NULL" },
16687
+ { name: "keywords", type: "TEXT", defaultVal: "NULL" }
16688
+ ];
16689
+ let healed = 0;
16690
+ for (const col of expectedColumns) {
16691
+ if (!existingColumns.has(col.name)) {
16692
+ try {
16693
+ const defaultClause = col.defaultVal === "NULL" ? "" : ` DEFAULT ${col.defaultVal}`;
16694
+ await db2.exec(`ALTER TABLE memories ADD COLUMN ${col.name} ${col.type}${defaultClause}`);
16695
+ healed++;
16696
+ console.log(`[migrations] healed: added missing column memories.${col.name}`);
16697
+ } catch {}
16698
+ }
16699
+ }
16700
+ if (healed > 0) {
16701
+ console.log(`[migrations] self-heal: added ${healed} missing column(s) to memories table`);
16702
+ }
16703
+ } catch (error4) {
16704
+ console.warn("[migrations] self-heal failed (non-fatal):", error4.message);
16705
+ }
16706
+ }
16667
16707
  async function rollbackTo(db2, targetVersion) {
16668
16708
  const currentVersion = await getCurrentVersion3(db2);
16669
16709
  const rolledBack = [];
@@ -49884,7 +49924,7 @@ ${prefix}}`;
49884
49924
  entry.expiresAt = clock3.unsafeCurrentTimeMillis() + toMillis(self2.idleTimeToLive);
49885
49925
  if (entry.fiber)
49886
49926
  return void_3;
49887
- return interruptibleMask(function loop(restore) {
49927
+ return interruptibleMask(function loop4(restore) {
49888
49928
  const now3 = clock3.unsafeCurrentTimeMillis();
49889
49929
  const remaining = entry.expiresAt - now3;
49890
49930
  if (remaining <= 0) {
@@ -49893,7 +49933,7 @@ ${prefix}}`;
49893
49933
  remove8(self2.state.map, key);
49894
49934
  return restore(scopeClose(entry.scope, exitVoid));
49895
49935
  }
49896
- return flatMap12(clock3.sleep(millis(remaining)), () => loop(restore));
49936
+ return flatMap12(clock3.sleep(millis(remaining)), () => loop4(restore));
49897
49937
  }).pipe(ensuring2(sync(() => {
49898
49938
  entry.fiber = undefined;
49899
49939
  })), forkIn2(self2.scope), tap2((fiber) => {
@@ -53323,7 +53363,7 @@ ${prefix}}`;
53323
53363
  fromDriver(value10) {
53324
53364
  return Array.from(new Float32Array(value10.buffer));
53325
53365
  }
53326
- }), memories, memoryLinks, entities, entityTaxonomy, relationships, memoryEntities, init_memory, init_expressions2, exports_drizzle_orm, init_drizzle_orm, exports_streams, eventsTable, agentsTable, messagesTable, messageRecipientsTable, reservationsTable, locksTable, cursorsTable, evalRecordsTable, swarmContextsTable, decisionTracesTable, entityLinksTable, init_streams, exports_hive, beads, cells, cellEvents, beadLabels, cellLabels, beadComments, cellComments, beadDependencies, cellDependencies, blockedBeadsCache, dirtyBeads, schemaVersion, init_hive, exports_schema, init_schema, init_drizzle, require_entity, require_logger, require_query_promise, require_column, require_column_builder, require_table_utils, require_foreign_keys, require_tracing_utils, require_unique_constraint, require_array, require_common2, require_enum, require_subquery, require_version, require_tracing, require_view_common, require_table, require_sql, require_alias, require_selection_proxy, require_utils, require_delete, require_casing, require_errors, require_int_common, require_bigint, require_bigserial, require_boolean, require_char, require_cidr, require_custom, require_date_common, require_date, require_double_precision, require_inet, require_integer, require_interval, require_json, require_jsonb, require_line, require_macaddr, require_macaddr8, require_numeric, require_point, require_utils2, require_geometry, require_real, require_serial, require_smallint, require_smallserial, require_text, require_time, require_timestamp, require_uuid, require_varchar, require_bit, require_halfvec, require_sparsevec, require_vector, require_columns, require_all, require_table2, require_primary_keys, require_conditions, require_select, require_expressions, require_relations, require_aggregate, require_vector2, require_functions, require_sql2, require_view_base, require_dialect, require_query_builder, require_select2, require_query_builder2, require_insert, require_refresh_materialized_view, require_select_types, require_update, require_query_builders, require_count, require_query, require_raw, require_db, require_alias2, require_checks, require_indexes, require_policies, require_roles, require_sequence, require_view_common2, require_view, require_schema, require_session, require_subquery2, require_utils3, require_utils4, require_pg_core, require_session2, require_driver, require_pglite, exports_libsql_convenience, instances, init_libsql_convenience, exports_lock, DurableLock, DurableLockLive, init_lock, exports_reservation_utils, init_reservation_utils, init_projections_drizzle, exports_store_drizzle, init_store_drizzle, exports_swarm_mail, MAX_INBOX_LIMIT = 5, DEFAULT_TTL_SECONDS = 3600, ADJECTIVES, NOUNS, init_swarm_mail, MAX_INBOX_LIMIT2 = 5, DEFAULT_TTL_SECONDS2 = 3600, ADJECTIVES2, NOUNS2, init_agent_mail, exports_migrations, beadsMigration, cellsViewMigration, cellsViewMigrationLibSQL, beadsMigrationLibSQL, beadsResultColumnsMigration, beadsResultColumnsMigrationLibSQL, beadsMigrations, hiveMigrations, sessionsMigrationLibSQL, hiveMigrationsLibSQL, init_migrations, memoryMigration, memoryMigrations, init_migrations2, exports_migrations2, migrations, init_migrations3, urlAlphabet = "useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict", POOL_SIZE_MULTIPLIER = 128, pool, poolOffset, init_nanoid = () => {}, init_decision_trace_store, ClientBuffer, init_client_buffer, exports_streams2, SLOW_QUERY_THRESHOLD_MS = 100, init_streams2, exports_store, adapterCache, TIMESTAMP_SAFE_UNTIL, init_store, init_adapter, exports_dependencies_drizzle, MAX_DEPENDENCY_DEPTH = 100, init_dependencies_drizzle, exports_projections_drizzle, init_projections_drizzle2, exports_dependencies, MAX_DEPENDENCY_DEPTH2 = 100, init_store2, FIELD_SETS, init_pagination, marker = "vercel.ai.error", symbol6, _a, _b, AISDKError, name2 = "AI_APICallError", marker2, symbol22, _a2, _b2, APICallError, name22 = "AI_EmptyResponseBodyError", marker3, symbol32, _a3, _b3, EmptyResponseBodyError, name3 = "AI_InvalidArgumentError", marker4, symbol42, _a4, _b4, InvalidArgumentError, name4 = "AI_InvalidPromptError", marker5, symbol52, _a5, _b5, InvalidPromptError, name5 = "AI_InvalidResponseDataError", marker6, symbol62, _a6, _b6, InvalidResponseDataError, name6 = "AI_JSONParseError", marker7, symbol7, _a7, _b7, JSONParseError, name7 = "AI_LoadAPIKeyError", marker8, symbol8, _a8, _b8, LoadAPIKeyError, name8 = "AI_LoadSettingError", marker9, symbol9, _a9, _b9, LoadSettingError, name9 = "AI_NoContentGeneratedError", marker10, symbol10, _a10, _b10, NoContentGeneratedError, name10 = "AI_NoSuchModelError", marker11, symbol11, _a11, _b11, NoSuchModelError, name11 = "AI_TooManyEmbeddingValuesForCallError", marker12, symbol12, _a12, _b12, TooManyEmbeddingValuesForCallError, name12 = "AI_TypeValidationError", marker13, symbol13, _a13, _b13, TypeValidationError, name13 = "AI_UnsupportedFunctionalityError", marker14, symbol14, _a14, _b14, UnsupportedFunctionalityError, init_dist2, NEVER2, $brand, $ZodAsyncError, globalConfig, init_core3, exports_util2, captureStackTrace, allowsEval, getParsedType2 = (data) => {
53366
+ }), memories, memoryLinks, entities, entityTaxonomy, relationships, memoryEntities, init_memory, init_expressions2, exports_drizzle_orm, init_drizzle_orm, exports_streams, eventsTable, agentsTable, messagesTable, messageRecipientsTable, reservationsTable, locksTable, cursorsTable, evalRecordsTable, swarmContextsTable, decisionTracesTable, entityLinksTable, init_streams, exports_hive, beads, cells, cellEvents, beadLabels, cellLabels, beadComments, cellComments, beadDependencies, cellDependencies, blockedBeadsCache, dirtyBeads, schemaVersion, init_hive, exports_schema, init_schema, init_drizzle, require_entity, require_logger, require_query_promise, require_column, require_column_builder, require_table_utils, require_foreign_keys, require_tracing_utils, require_unique_constraint, require_array, require_common2, require_enum, require_subquery, require_version, require_tracing, require_view_common, require_table, require_sql, require_alias, require_selection_proxy, require_utils, require_delete, require_casing, require_errors, require_int_common, require_bigint, require_bigserial, require_boolean, require_char, require_cidr, require_custom, require_date_common, require_date, require_double_precision, require_inet, require_integer, require_interval, require_json, require_jsonb, require_line, require_macaddr, require_macaddr8, require_numeric, require_point, require_utils2, require_geometry, require_real, require_serial, require_smallint, require_smallserial, require_text, require_time, require_timestamp, require_uuid, require_varchar, require_bit, require_halfvec, require_sparsevec, require_vector, require_columns, require_all, require_table2, require_primary_keys, require_conditions, require_select, require_expressions, require_relations, require_aggregate, require_vector2, require_functions, require_sql2, require_view_base, require_dialect, require_query_builder, require_select2, require_query_builder2, require_insert, require_refresh_materialized_view, require_select_types, require_update, require_query_builders, require_count, require_query, require_raw, require_db, require_alias2, require_checks, require_indexes, require_policies, require_roles, require_sequence, require_view_common2, require_view, require_schema, require_session, require_subquery2, require_utils3, require_utils4, require_pg_core, require_session2, require_driver, require_pglite, exports_libsql_convenience, instances, init_libsql_convenience, exports_lock, DurableLock, DurableLockLive, init_lock, exports_reservation_utils, init_reservation_utils, init_projections_drizzle, exports_store_drizzle, init_store_drizzle, exports_swarm_mail, MAX_INBOX_LIMIT = 5, DEFAULT_TTL_SECONDS = 3600, ADJECTIVES, NOUNS, init_swarm_mail, MAX_INBOX_LIMIT2 = 5, DEFAULT_TTL_SECONDS2 = 3600, ADJECTIVES2, NOUNS2, init_agent_mail, exports_migrations, beadsMigration, cellsViewMigration, cellsViewMigrationLibSQL, beadsMigrationLibSQL, beadsResultColumnsMigration, beadsResultColumnsMigrationLibSQL, beadsMigrations, hiveMigrations, sessionsMigrationLibSQL, hiveMigrationsLibSQL, init_migrations, memoryMigration, memoryMigrationLibSQL, memorySchemaOverhaulLibSQL, sessionMetadataExtensionLibSQL, memorySelfHealColumnsLibSQL, memoryMigrations, memoryMigrationsLibSQL, init_migrations2, exports_migrations2, migrations, init_migrations3, urlAlphabet = "useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict", POOL_SIZE_MULTIPLIER = 128, pool, poolOffset, init_nanoid = () => {}, init_decision_trace_store, ClientBuffer, init_client_buffer, exports_streams2, SLOW_QUERY_THRESHOLD_MS = 100, init_streams2, exports_store, adapterCache, TIMESTAMP_SAFE_UNTIL, init_store, init_adapter, exports_dependencies_drizzle, MAX_DEPENDENCY_DEPTH = 100, init_dependencies_drizzle, exports_projections_drizzle, init_projections_drizzle2, exports_dependencies, MAX_DEPENDENCY_DEPTH2 = 100, init_store2, FIELD_SETS, init_pagination, marker = "vercel.ai.error", symbol6, _a, _b, AISDKError, name2 = "AI_APICallError", marker2, symbol22, _a2, _b2, APICallError, name22 = "AI_EmptyResponseBodyError", marker3, symbol32, _a3, _b3, EmptyResponseBodyError, name3 = "AI_InvalidArgumentError", marker4, symbol42, _a4, _b4, InvalidArgumentError, name4 = "AI_InvalidPromptError", marker5, symbol52, _a5, _b5, InvalidPromptError, name5 = "AI_InvalidResponseDataError", marker6, symbol62, _a6, _b6, InvalidResponseDataError, name6 = "AI_JSONParseError", marker7, symbol7, _a7, _b7, JSONParseError, name7 = "AI_LoadAPIKeyError", marker8, symbol8, _a8, _b8, LoadAPIKeyError, name8 = "AI_LoadSettingError", marker9, symbol9, _a9, _b9, LoadSettingError, name9 = "AI_NoContentGeneratedError", marker10, symbol10, _a10, _b10, NoContentGeneratedError, name10 = "AI_NoSuchModelError", marker11, symbol11, _a11, _b11, NoSuchModelError, name11 = "AI_TooManyEmbeddingValuesForCallError", marker12, symbol12, _a12, _b12, TooManyEmbeddingValuesForCallError, name12 = "AI_TypeValidationError", marker13, symbol13, _a13, _b13, TypeValidationError, name13 = "AI_UnsupportedFunctionalityError", marker14, symbol14, _a14, _b14, UnsupportedFunctionalityError, init_dist2, NEVER2, $brand, $ZodAsyncError, globalConfig, init_core3, exports_util2, captureStackTrace, allowsEval, getParsedType2 = (data) => {
53327
53367
  const t = typeof data;
53328
53368
  switch (t) {
53329
53369
  case "undefined":
@@ -95747,14 +95787,14 @@ ${stack.split(`
95747
95787
  return interrupt2;
95748
95788
  } else if (this.targetSize > this.activeSize) {
95749
95789
  const self2 = this;
95750
- return flatMap12(this.resizeSemaphore.withPermitsIfAvailable(1)(forkIn2(interruptible2(this.resize), this.scope)), function loop() {
95790
+ return flatMap12(this.resizeSemaphore.withPermitsIfAvailable(1)(forkIn2(interruptible2(this.resize), this.scope)), function loop4() {
95751
95791
  if (self2.isShuttingDown) {
95752
95792
  return interrupt2;
95753
95793
  } else if (self2.available.size > 0) {
95754
95794
  return succeed(unsafeHead(self2.available));
95755
95795
  }
95756
95796
  self2.availableLatch.unsafeClose();
95757
- return flatMap12(self2.availableLatch.await, loop);
95797
+ return flatMap12(self2.availableLatch.await, loop4);
95758
95798
  });
95759
95799
  }
95760
95800
  return succeed(unsafeHead(this.available));
@@ -121060,9 +121100,212 @@ ${stack.split(`
121060
121100
  DROP INDEX IF EXISTS memories_content_idx;
121061
121101
  DROP INDEX IF EXISTS idx_memories_collection;
121062
121102
  DROP TABLE IF EXISTS memories;
121103
+ `
121104
+ };
121105
+ memoryMigrationLibSQL = {
121106
+ version: 9,
121107
+ description: "Add semantic memory tables (memories with vector support, FTS5)",
121108
+ up: `
121109
+ -- ========================================================================
121110
+ -- Memories Table
121111
+ -- ========================================================================
121112
+ CREATE TABLE IF NOT EXISTS memories (
121113
+ id TEXT PRIMARY KEY NOT NULL,
121114
+ content TEXT NOT NULL,
121115
+ metadata TEXT DEFAULT '{}',
121116
+ collection TEXT DEFAULT 'default',
121117
+ created_at TEXT DEFAULT (datetime('now')),
121118
+ confidence REAL DEFAULT 0.7,
121119
+ embedding F32_BLOB(1024)
121120
+ );
121121
+
121122
+ -- Collection filtering index
121123
+ CREATE INDEX IF NOT EXISTS idx_memories_collection ON memories(collection);
121124
+
121125
+ -- Vector embedding index for fast similarity search
121126
+ CREATE INDEX IF NOT EXISTS idx_memories_embedding ON memories(libsql_vector_idx(embedding));
121127
+
121128
+ -- ========================================================================
121129
+ -- FTS5 virtual table for full-text search
121130
+ -- ========================================================================
121131
+ CREATE VIRTUAL TABLE IF NOT EXISTS memories_fts
121132
+ USING fts5(id UNINDEXED, content, content=memories, content_rowid=rowid);
121133
+
121134
+ -- Triggers to keep FTS5 in sync
121135
+ CREATE TRIGGER IF NOT EXISTS memories_fts_insert
121136
+ AFTER INSERT ON memories
121137
+ BEGIN
121138
+ INSERT INTO memories_fts(rowid, id, content)
121139
+ VALUES (new.rowid, new.id, new.content);
121140
+ END;
121141
+
121142
+ CREATE TRIGGER IF NOT EXISTS memories_fts_update
121143
+ AFTER UPDATE ON memories
121144
+ BEGIN
121145
+ UPDATE memories_fts
121146
+ SET content = new.content
121147
+ WHERE rowid = new.rowid;
121148
+ END;
121149
+
121150
+ CREATE TRIGGER IF NOT EXISTS memories_fts_delete
121151
+ AFTER DELETE ON memories
121152
+ BEGIN
121153
+ DELETE FROM memories_fts WHERE rowid = old.rowid;
121154
+ END;
121155
+ `,
121156
+ down: `
121157
+ -- Drop in reverse order
121158
+ DROP TRIGGER IF EXISTS memories_fts_delete;
121159
+ DROP TRIGGER IF EXISTS memories_fts_update;
121160
+ DROP TRIGGER IF EXISTS memories_fts_insert;
121161
+ DROP TABLE IF EXISTS memories_fts;
121162
+ DROP INDEX IF EXISTS idx_memories_embedding;
121163
+ DROP INDEX IF EXISTS idx_memories_collection;
121164
+ DROP TABLE IF EXISTS memories;
121165
+ `
121166
+ };
121167
+ memorySchemaOverhaulLibSQL = {
121168
+ version: 10,
121169
+ description: "Memory schema overhaul: links, entities, relationships, temporal fields",
121170
+ up: `
121171
+ -- ========================================================================
121172
+ -- Add temporal and metadata columns to memories table
121173
+ -- ========================================================================
121174
+ ALTER TABLE memories ADD COLUMN valid_from TEXT;
121175
+ ALTER TABLE memories ADD COLUMN valid_until TEXT;
121176
+ ALTER TABLE memories ADD COLUMN superseded_by TEXT REFERENCES memories(id);
121177
+ ALTER TABLE memories ADD COLUMN auto_tags TEXT;
121178
+ ALTER TABLE memories ADD COLUMN keywords TEXT;
121179
+
121180
+ -- ========================================================================
121181
+ -- Memory Links Table (Zettelkasten-style bidirectional connections)
121182
+ -- ========================================================================
121183
+ CREATE TABLE IF NOT EXISTS memory_links (
121184
+ id TEXT PRIMARY KEY,
121185
+ source_id TEXT NOT NULL REFERENCES memories(id) ON DELETE CASCADE,
121186
+ target_id TEXT NOT NULL REFERENCES memories(id) ON DELETE CASCADE,
121187
+ link_type TEXT NOT NULL,
121188
+ strength REAL DEFAULT 1.0,
121189
+ created_at TEXT DEFAULT (datetime('now')),
121190
+ UNIQUE(source_id, target_id, link_type)
121191
+ );
121192
+
121193
+ CREATE INDEX IF NOT EXISTS idx_memory_links_source ON memory_links(source_id);
121194
+ CREATE INDEX IF NOT EXISTS idx_memory_links_target ON memory_links(target_id);
121195
+
121196
+ -- ========================================================================
121197
+ -- Entities Table (Named entities extracted from memories)
121198
+ -- ========================================================================
121199
+ CREATE TABLE IF NOT EXISTS entities (
121200
+ id TEXT PRIMARY KEY,
121201
+ name TEXT NOT NULL,
121202
+ entity_type TEXT NOT NULL,
121203
+ canonical_name TEXT,
121204
+ created_at TEXT DEFAULT (datetime('now')),
121205
+ updated_at TEXT DEFAULT (datetime('now')),
121206
+ UNIQUE(name, entity_type)
121207
+ );
121208
+
121209
+ CREATE INDEX IF NOT EXISTS idx_entities_type ON entities(entity_type);
121210
+ CREATE INDEX IF NOT EXISTS idx_entities_name ON entities(name);
121211
+
121212
+ -- ========================================================================
121213
+ -- Relationships Table (Entity-entity triples)
121214
+ -- ========================================================================
121215
+ CREATE TABLE IF NOT EXISTS relationships (
121216
+ id TEXT PRIMARY KEY,
121217
+ subject_id TEXT NOT NULL REFERENCES entities(id) ON DELETE CASCADE,
121218
+ predicate TEXT NOT NULL,
121219
+ object_id TEXT NOT NULL REFERENCES entities(id) ON DELETE CASCADE,
121220
+ memory_id TEXT REFERENCES memories(id) ON DELETE SET NULL,
121221
+ confidence REAL DEFAULT 1.0,
121222
+ created_at TEXT DEFAULT (datetime('now')),
121223
+ UNIQUE(subject_id, predicate, object_id)
121224
+ );
121225
+
121226
+ CREATE INDEX IF NOT EXISTS idx_relationships_subject ON relationships(subject_id);
121227
+ CREATE INDEX IF NOT EXISTS idx_relationships_object ON relationships(object_id);
121228
+ CREATE INDEX IF NOT EXISTS idx_relationships_predicate ON relationships(predicate);
121229
+
121230
+ -- ========================================================================
121231
+ -- Memory-Entities Junction Table
121232
+ -- ========================================================================
121233
+ CREATE TABLE IF NOT EXISTS memory_entities (
121234
+ memory_id TEXT NOT NULL REFERENCES memories(id) ON DELETE CASCADE,
121235
+ entity_id TEXT NOT NULL REFERENCES entities(id) ON DELETE CASCADE,
121236
+ role TEXT,
121237
+ PRIMARY KEY(memory_id, entity_id)
121238
+ );
121239
+ `,
121240
+ down: `
121241
+ -- Drop tables in dependency order
121242
+ DROP TABLE IF EXISTS memory_entities;
121243
+ DROP TABLE IF EXISTS relationships;
121244
+ DROP INDEX IF EXISTS idx_memory_links_source;
121245
+ DROP INDEX IF EXISTS idx_memory_links_target;
121246
+ DROP TABLE IF EXISTS memory_links;
121247
+ DROP INDEX IF EXISTS idx_entities_type;
121248
+ DROP INDEX IF EXISTS idx_entities_name;
121249
+ DROP TABLE IF EXISTS entities;
121250
+
121251
+ -- Remove columns from memories table (SQLite doesn't support DROP COLUMN until 3.35.0)
121252
+ -- In production, these columns can be left as NULL if downgrade is needed
121253
+ -- Or recreate table without these columns
121254
+ `
121255
+ };
121256
+ sessionMetadataExtensionLibSQL = {
121257
+ version: 11,
121258
+ description: "Add session metadata columns (agent_type, session_id, message_role, message_idx, source_path)",
121259
+ up: `
121260
+ -- ========================================================================
121261
+ -- Add session metadata columns to memories table
121262
+ -- ========================================================================
121263
+ ALTER TABLE memories ADD COLUMN agent_type TEXT;
121264
+ ALTER TABLE memories ADD COLUMN session_id TEXT;
121265
+ ALTER TABLE memories ADD COLUMN message_role TEXT CHECK(message_role IN ('user', 'assistant', 'system'));
121266
+ ALTER TABLE memories ADD COLUMN message_idx INTEGER;
121267
+ ALTER TABLE memories ADD COLUMN source_path TEXT;
121268
+
121269
+ -- Index for session-based queries
121270
+ CREATE INDEX IF NOT EXISTS idx_memories_session ON memories(session_id, message_idx);
121271
+
121272
+ -- Index for agent filtering
121273
+ CREATE INDEX IF NOT EXISTS idx_memories_agent_type ON memories(agent_type);
121274
+
121275
+ -- Index for role filtering
121276
+ CREATE INDEX IF NOT EXISTS idx_memories_role ON memories(message_role);
121277
+ `,
121278
+ down: `
121279
+ -- Drop indexes first
121280
+ DROP INDEX IF EXISTS idx_memories_role;
121281
+ DROP INDEX IF EXISTS idx_memories_agent_type;
121282
+ DROP INDEX IF EXISTS idx_memories_session;
121283
+
121284
+ -- SQLite doesn't support DROP COLUMN until 3.35.0
121285
+ -- In production, these columns can be left as NULL if downgrade is needed
121286
+ -- Or recreate table without these columns
121287
+ `
121288
+ };
121289
+ memorySelfHealColumnsLibSQL = {
121290
+ version: 12,
121291
+ description: "Schema convergence: self-heal missing columns (tags, updated_at, decay_factor, access_count, last_accessed, category, status)",
121292
+ up: `
121293
+ -- No-op: actual column additions handled by healMemorySchema() post-migration.
121294
+ -- This migration just bumps the version number.
121295
+ SELECT 1;
121296
+ `,
121297
+ down: `
121298
+ -- Cannot remove columns in older SQLite versions
121299
+ SELECT 1;
121063
121300
  `
121064
121301
  };
121065
121302
  memoryMigrations = [memoryMigration];
121303
+ memoryMigrationsLibSQL = [
121304
+ memoryMigrationLibSQL,
121305
+ memorySchemaOverhaulLibSQL,
121306
+ sessionMetadataExtensionLibSQL,
121307
+ memorySelfHealColumnsLibSQL
121308
+ ];
121066
121309
  });
121067
121310
  exports_migrations2 = {};
121068
121311
  __export2(exports_migrations2, {
@@ -121402,7 +121645,7 @@ ${stack.split(`
121402
121645
  `
121403
121646
  },
121404
121647
  ...hiveMigrations,
121405
- ...memoryMigrations
121648
+ ...memoryMigrationsLibSQL
121406
121649
  ];
121407
121650
  });
121408
121651
  init_decision_trace_store = __esm2(() => {
@@ -136962,7 +137205,7 @@ function possiblyAsyncStringify2(value10) {
136962
137205
  return { delay: delay6, cancel };
136963
137206
  }
136964
137207
  const unknownState = { state: "unknown", value: undefined };
136965
- const getAsyncContent = function getAsyncContent(data) {
137208
+ const getAsyncContent = function getAsyncContent2(data) {
136966
137209
  const cacheKey = data;
136967
137210
  if (cache.has(cacheKey)) {
136968
137211
  return cache.get(cacheKey);
@@ -140431,13 +140674,13 @@ class CommandWrapper2 {
140431
140674
  this.hasRan = false;
140432
140675
  if (hasToStringMethod2(cmd)) {
140433
140676
  const method = cmd[toStringMethod2];
140434
- this[toStringMethod2] = function toStringMethod() {
140677
+ this[toStringMethod2] = function toStringMethod22() {
140435
140678
  return method.call(cmd);
140436
140679
  };
140437
140680
  }
140438
140681
  if (hasAsyncToStringMethod2(cmd)) {
140439
140682
  const method = cmd[asyncToStringMethod2];
140440
- this[asyncToStringMethod2] = function asyncToStringMethod() {
140683
+ this[asyncToStringMethod2] = function asyncToStringMethod22() {
140441
140684
  return method.call(cmd);
140442
140685
  };
140443
140686
  }
@@ -151655,8 +151898,48 @@ async function runMigrations2(db2) {
151655
151898
  }
151656
151899
  }
151657
151900
  const finalVersion = await getCurrentVersion32(db2);
151901
+ await healMemorySchema2(db2);
151658
151902
  return { applied, current: finalVersion };
151659
151903
  }
151904
+ async function healMemorySchema2(db2) {
151905
+ try {
151906
+ const tableCheck = await db2.query(`SELECT name FROM sqlite_master WHERE type='table' AND name='memories'`);
151907
+ if (tableCheck.rows.length === 0)
151908
+ return;
151909
+ const columnsResult = await db2.query(`SELECT name FROM pragma_table_info('memories')`);
151910
+ const existingColumns = new Set(columnsResult.rows.map((r) => r.name));
151911
+ const expectedColumns = [
151912
+ { name: "tags", type: "TEXT", defaultVal: "'[]'" },
151913
+ { name: "updated_at", type: "TEXT", defaultVal: "(datetime('now'))" },
151914
+ { name: "decay_factor", type: "REAL", defaultVal: "1.0" },
151915
+ { name: "access_count", type: "TEXT", defaultVal: "'0'" },
151916
+ { name: "last_accessed", type: "TEXT", defaultVal: "(datetime('now'))" },
151917
+ { name: "category", type: "TEXT", defaultVal: "NULL" },
151918
+ { name: "status", type: "TEXT", defaultVal: "'active'" },
151919
+ { name: "valid_from", type: "TEXT", defaultVal: "NULL" },
151920
+ { name: "valid_until", type: "TEXT", defaultVal: "NULL" },
151921
+ { name: "superseded_by", type: "TEXT", defaultVal: "NULL" },
151922
+ { name: "auto_tags", type: "TEXT", defaultVal: "NULL" },
151923
+ { name: "keywords", type: "TEXT", defaultVal: "NULL" }
151924
+ ];
151925
+ let healed = 0;
151926
+ for (const col of expectedColumns) {
151927
+ if (!existingColumns.has(col.name)) {
151928
+ try {
151929
+ const defaultClause = col.defaultVal === "NULL" ? "" : ` DEFAULT ${col.defaultVal}`;
151930
+ await db2.exec(`ALTER TABLE memories ADD COLUMN ${col.name} ${col.type}${defaultClause}`);
151931
+ healed++;
151932
+ console.log(`[migrations] healed: added missing column memories.${col.name}`);
151933
+ } catch {}
151934
+ }
151935
+ }
151936
+ if (healed > 0) {
151937
+ console.log(`[migrations] self-heal: added ${healed} missing column(s) to memories table`);
151938
+ }
151939
+ } catch (error410) {
151940
+ console.warn("[migrations] self-heal failed (non-fatal):", error410.message);
151941
+ }
151942
+ }
151660
151943
  async function rollbackTo2(db2, targetVersion) {
151661
151944
  const currentVersion = await getCurrentVersion32(db2);
151662
151945
  const rolledBack = [];
@@ -184877,7 +185160,7 @@ ${prefix}}`;
184877
185160
  entry.expiresAt = clock32.unsafeCurrentTimeMillis() + toMillis3(self2.idleTimeToLive);
184878
185161
  if (entry.fiber)
184879
185162
  return void_32;
184880
- return interruptibleMask5(function loop(restore) {
185163
+ return interruptibleMask5(function loop42(restore) {
184881
185164
  const now32 = clock32.unsafeCurrentTimeMillis();
184882
185165
  const remaining = entry.expiresAt - now32;
184883
185166
  if (remaining <= 0) {
@@ -184886,7 +185169,7 @@ ${prefix}}`;
184886
185169
  remove82(self2.state.map, key);
184887
185170
  return restore(scopeClose3(entry.scope, exitVoid5));
184888
185171
  }
184889
- return flatMap122(clock32.sleep(millis3(remaining)), () => loop(restore));
185172
+ return flatMap122(clock32.sleep(millis3(remaining)), () => loop42(restore));
184890
185173
  }).pipe(ensuring23(sync25(() => {
184891
185174
  entry.fiber = undefined;
184892
185175
  })), forkIn23(self2.scope), tap23((fiber) => {
@@ -188316,7 +188599,7 @@ ${prefix}}`;
188316
188599
  fromDriver(value102) {
188317
188600
  return Array.from(new Float32Array(value102.buffer));
188318
188601
  }
188319
- }), memories2, memoryLinks2, entities2, entityTaxonomy2, relationships2, memoryEntities2, init_memory3, init_expressions22, exports_drizzle_orm2, init_drizzle_orm2, exports_streams3, eventsTable2, agentsTable2, messagesTable2, messageRecipientsTable2, reservationsTable2, locksTable2, cursorsTable2, evalRecordsTable2, swarmContextsTable2, decisionTracesTable2, entityLinksTable2, init_streams3, exports_hive2, beads2, cells2, cellEvents2, beadLabels2, cellLabels2, beadComments2, cellComments2, beadDependencies2, cellDependencies2, blockedBeadsCache2, dirtyBeads2, schemaVersion2, init_hive2, exports_schema2, init_schema2, init_drizzle2, require_entity2, require_logger2, require_query_promise2, require_column2, require_column_builder2, require_table_utils2, require_foreign_keys2, require_tracing_utils2, require_unique_constraint2, require_array2, require_common22, require_enum2, require_subquery3, require_version3, require_tracing2, require_view_common3, require_table3, require_sql3, require_alias3, require_selection_proxy2, require_utils9, require_delete2, require_casing2, require_errors2, require_int_common2, require_bigint2, require_bigserial2, require_boolean2, require_char2, require_cidr2, require_custom2, require_date_common2, require_date2, require_double_precision2, require_inet2, require_integer2, require_interval2, require_json3, require_jsonb2, require_line2, require_macaddr2, require_macaddr82, require_numeric2, require_point2, require_utils22, require_geometry2, require_real2, require_serial2, require_smallint2, require_smallserial2, require_text2, require_time2, require_timestamp3, require_uuid2, require_varchar2, require_bit2, require_halfvec2, require_sparsevec2, require_vector3, require_columns2, require_all2, require_table22, require_primary_keys2, require_conditions2, require_select3, require_expressions2, require_relations2, require_aggregate2, require_vector22, require_functions2, require_sql22, require_view_base2, require_dialect2, require_query_builder3, require_select22, require_query_builder22, require_insert2, require_refresh_materialized_view2, require_select_types2, require_update2, require_query_builders2, require_count2, require_query2, require_raw2, require_db2, require_alias22, require_checks2, require_indexes2, require_policies2, require_roles2, require_sequence2, require_view_common22, require_view2, require_schema3, require_session3, require_subquery22, require_utils32, require_utils42, require_pg_core2, require_session22, require_driver2, require_pglite2, exports_libsql_convenience2, instances2, init_libsql_convenience2, exports_lock2, DurableLock2, DurableLockLive2, init_lock2, exports_reservation_utils2, init_reservation_utils2, init_projections_drizzle3, exports_store_drizzle2, init_store_drizzle2, exports_swarm_mail2, MAX_INBOX_LIMIT3 = 5, DEFAULT_TTL_SECONDS3 = 3600, ADJECTIVES3, NOUNS3, init_swarm_mail2, MAX_INBOX_LIMIT22 = 5, DEFAULT_TTL_SECONDS22 = 3600, ADJECTIVES22, NOUNS22, init_agent_mail2, exports_migrations3, beadsMigration2, cellsViewMigration2, cellsViewMigrationLibSQL2, beadsMigrationLibSQL2, beadsResultColumnsMigration2, beadsResultColumnsMigrationLibSQL2, beadsMigrations2, hiveMigrations2, sessionsMigrationLibSQL2, hiveMigrationsLibSQL2, init_migrations4, memoryMigration2, memoryMigrations2, init_migrations22, exports_migrations22, migrations2, init_migrations32, urlAlphabet2 = "useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict", POOL_SIZE_MULTIPLIER2 = 128, pool2, poolOffset2, init_nanoid2 = () => {}, init_decision_trace_store2, ClientBuffer2, init_client_buffer2, exports_streams22, SLOW_QUERY_THRESHOLD_MS2 = 100, init_streams22, exports_store2, adapterCache4, TIMESTAMP_SAFE_UNTIL2, init_store3, init_adapter3, exports_dependencies_drizzle2, MAX_DEPENDENCY_DEPTH3 = 100, init_dependencies_drizzle2, exports_projections_drizzle2, init_projections_drizzle22, exports_dependencies2, MAX_DEPENDENCY_DEPTH22 = 100, init_store22, FIELD_SETS2, init_pagination2, marker21 = "vercel.ai.error", symbol65, _a24, _b16, AISDKError2, name25 = "AI_APICallError", marker24, symbol222, _a25, _b23, APICallError2, name222 = "AI_EmptyResponseBodyError", marker34, symbol322, _a34, _b33, EmptyResponseBodyError2, name34 = "AI_InvalidArgumentError", marker44, symbol422, _a44, _b43, InvalidArgumentError3, name44 = "AI_InvalidPromptError", marker54, symbol522, _a54, _b53, InvalidPromptError2, name54 = "AI_InvalidResponseDataError", marker64, symbol622, _a64, _b63, InvalidResponseDataError2, name64 = "AI_JSONParseError", marker74, symbol74, _a74, _b73, JSONParseError2, name73 = "AI_LoadAPIKeyError", marker83, symbol83, _a83, _b82, LoadAPIKeyError2, name83 = "AI_LoadSettingError", marker93, symbol93, _a93, _b92, LoadSettingError2, name93 = "AI_NoContentGeneratedError", marker103, symbol103, _a103, _b102, NoContentGeneratedError2, name103 = "AI_NoSuchModelError", marker113, symbol113, _a113, _b112, NoSuchModelError2, name113 = "AI_TooManyEmbeddingValuesForCallError", marker123, symbol123, _a123, _b122, TooManyEmbeddingValuesForCallError2, name123 = "AI_TypeValidationError", marker133, symbol133, _a133, _b132, TypeValidationError2, name133 = "AI_UnsupportedFunctionalityError", marker143, symbol143, _a143, _b142, UnsupportedFunctionalityError2, init_dist11, NEVER22, $brand6, $ZodAsyncError6, globalConfig6, init_core33, exports_util22, captureStackTrace6, allowsEval6, getParsedType22 = (data) => {
188602
+ }), memories2, memoryLinks2, entities2, entityTaxonomy2, relationships2, memoryEntities2, init_memory3, init_expressions22, exports_drizzle_orm2, init_drizzle_orm2, exports_streams3, eventsTable2, agentsTable2, messagesTable2, messageRecipientsTable2, reservationsTable2, locksTable2, cursorsTable2, evalRecordsTable2, swarmContextsTable2, decisionTracesTable2, entityLinksTable2, init_streams3, exports_hive2, beads2, cells2, cellEvents2, beadLabels2, cellLabels2, beadComments2, cellComments2, beadDependencies2, cellDependencies2, blockedBeadsCache2, dirtyBeads2, schemaVersion2, init_hive2, exports_schema2, init_schema2, init_drizzle2, require_entity2, require_logger2, require_query_promise2, require_column2, require_column_builder2, require_table_utils2, require_foreign_keys2, require_tracing_utils2, require_unique_constraint2, require_array2, require_common22, require_enum2, require_subquery3, require_version3, require_tracing2, require_view_common3, require_table3, require_sql3, require_alias3, require_selection_proxy2, require_utils9, require_delete2, require_casing2, require_errors2, require_int_common2, require_bigint2, require_bigserial2, require_boolean2, require_char2, require_cidr2, require_custom2, require_date_common2, require_date2, require_double_precision2, require_inet2, require_integer2, require_interval2, require_json3, require_jsonb2, require_line2, require_macaddr2, require_macaddr82, require_numeric2, require_point2, require_utils22, require_geometry2, require_real2, require_serial2, require_smallint2, require_smallserial2, require_text2, require_time2, require_timestamp3, require_uuid2, require_varchar2, require_bit2, require_halfvec2, require_sparsevec2, require_vector3, require_columns2, require_all2, require_table22, require_primary_keys2, require_conditions2, require_select3, require_expressions2, require_relations2, require_aggregate2, require_vector22, require_functions2, require_sql22, require_view_base2, require_dialect2, require_query_builder3, require_select22, require_query_builder22, require_insert2, require_refresh_materialized_view2, require_select_types2, require_update2, require_query_builders2, require_count2, require_query2, require_raw2, require_db2, require_alias22, require_checks2, require_indexes2, require_policies2, require_roles2, require_sequence2, require_view_common22, require_view2, require_schema3, require_session3, require_subquery22, require_utils32, require_utils42, require_pg_core2, require_session22, require_driver2, require_pglite2, exports_libsql_convenience2, instances2, init_libsql_convenience2, exports_lock2, DurableLock2, DurableLockLive2, init_lock2, exports_reservation_utils2, init_reservation_utils2, init_projections_drizzle3, exports_store_drizzle2, init_store_drizzle2, exports_swarm_mail2, MAX_INBOX_LIMIT3 = 5, DEFAULT_TTL_SECONDS3 = 3600, ADJECTIVES3, NOUNS3, init_swarm_mail2, MAX_INBOX_LIMIT22 = 5, DEFAULT_TTL_SECONDS22 = 3600, ADJECTIVES22, NOUNS22, init_agent_mail2, exports_migrations3, beadsMigration2, cellsViewMigration2, cellsViewMigrationLibSQL2, beadsMigrationLibSQL2, beadsResultColumnsMigration2, beadsResultColumnsMigrationLibSQL2, beadsMigrations2, hiveMigrations2, sessionsMigrationLibSQL2, hiveMigrationsLibSQL2, init_migrations4, memoryMigration2, memoryMigrationLibSQL2, memorySchemaOverhaulLibSQL2, sessionMetadataExtensionLibSQL2, memorySelfHealColumnsLibSQL2, memoryMigrations2, memoryMigrationsLibSQL2, init_migrations22, exports_migrations22, migrations2, init_migrations32, urlAlphabet2 = "useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict", POOL_SIZE_MULTIPLIER2 = 128, pool2, poolOffset2, init_nanoid2 = () => {}, init_decision_trace_store2, ClientBuffer2, init_client_buffer2, exports_streams22, SLOW_QUERY_THRESHOLD_MS2 = 100, init_streams22, exports_store2, adapterCache4, TIMESTAMP_SAFE_UNTIL2, init_store3, init_adapter3, exports_dependencies_drizzle2, MAX_DEPENDENCY_DEPTH3 = 100, init_dependencies_drizzle2, exports_projections_drizzle2, init_projections_drizzle22, exports_dependencies2, MAX_DEPENDENCY_DEPTH22 = 100, init_store22, FIELD_SETS2, init_pagination2, marker21 = "vercel.ai.error", symbol65, _a24, _b16, AISDKError2, name25 = "AI_APICallError", marker24, symbol222, _a25, _b23, APICallError2, name222 = "AI_EmptyResponseBodyError", marker34, symbol322, _a34, _b33, EmptyResponseBodyError2, name34 = "AI_InvalidArgumentError", marker44, symbol422, _a44, _b43, InvalidArgumentError3, name44 = "AI_InvalidPromptError", marker54, symbol522, _a54, _b53, InvalidPromptError2, name54 = "AI_InvalidResponseDataError", marker64, symbol622, _a64, _b63, InvalidResponseDataError2, name64 = "AI_JSONParseError", marker74, symbol74, _a74, _b73, JSONParseError2, name73 = "AI_LoadAPIKeyError", marker83, symbol83, _a83, _b82, LoadAPIKeyError2, name83 = "AI_LoadSettingError", marker93, symbol93, _a93, _b92, LoadSettingError2, name93 = "AI_NoContentGeneratedError", marker103, symbol103, _a103, _b102, NoContentGeneratedError2, name103 = "AI_NoSuchModelError", marker113, symbol113, _a113, _b112, NoSuchModelError2, name113 = "AI_TooManyEmbeddingValuesForCallError", marker123, symbol123, _a123, _b122, TooManyEmbeddingValuesForCallError2, name123 = "AI_TypeValidationError", marker133, symbol133, _a133, _b132, TypeValidationError2, name133 = "AI_UnsupportedFunctionalityError", marker143, symbol143, _a143, _b142, UnsupportedFunctionalityError2, init_dist11, NEVER22, $brand6, $ZodAsyncError6, globalConfig6, init_core33, exports_util22, captureStackTrace6, allowsEval6, getParsedType22 = (data) => {
188320
188603
  const t = typeof data;
188321
188604
  switch (t) {
188322
188605
  case "undefined":
@@ -230740,14 +231023,14 @@ ${stack.split(`
230740
231023
  return interrupt23;
230741
231024
  } else if (this.targetSize > this.activeSize) {
230742
231025
  const self2 = this;
230743
- return flatMap122(this.resizeSemaphore.withPermitsIfAvailable(1)(forkIn23(interruptible23(this.resize), this.scope)), function loop() {
231026
+ return flatMap122(this.resizeSemaphore.withPermitsIfAvailable(1)(forkIn23(interruptible23(this.resize), this.scope)), function loop42() {
230744
231027
  if (self2.isShuttingDown) {
230745
231028
  return interrupt23;
230746
231029
  } else if (self2.available.size > 0) {
230747
231030
  return succeed34(unsafeHead6(self2.available));
230748
231031
  }
230749
231032
  self2.availableLatch.unsafeClose();
230750
- return flatMap122(self2.availableLatch.await, loop);
231033
+ return flatMap122(self2.availableLatch.await, loop42);
230751
231034
  });
230752
231035
  }
230753
231036
  return succeed34(unsafeHead6(this.available));
@@ -256053,9 +256336,212 @@ ${stack.split(`
256053
256336
  DROP INDEX IF EXISTS memories_content_idx;
256054
256337
  DROP INDEX IF EXISTS idx_memories_collection;
256055
256338
  DROP TABLE IF EXISTS memories;
256339
+ `
256340
+ };
256341
+ memoryMigrationLibSQL2 = {
256342
+ version: 9,
256343
+ description: "Add semantic memory tables (memories with vector support, FTS5)",
256344
+ up: `
256345
+ -- ========================================================================
256346
+ -- Memories Table
256347
+ -- ========================================================================
256348
+ CREATE TABLE IF NOT EXISTS memories (
256349
+ id TEXT PRIMARY KEY NOT NULL,
256350
+ content TEXT NOT NULL,
256351
+ metadata TEXT DEFAULT '{}',
256352
+ collection TEXT DEFAULT 'default',
256353
+ created_at TEXT DEFAULT (datetime('now')),
256354
+ confidence REAL DEFAULT 0.7,
256355
+ embedding F32_BLOB(1024)
256356
+ );
256357
+
256358
+ -- Collection filtering index
256359
+ CREATE INDEX IF NOT EXISTS idx_memories_collection ON memories(collection);
256360
+
256361
+ -- Vector embedding index for fast similarity search
256362
+ CREATE INDEX IF NOT EXISTS idx_memories_embedding ON memories(libsql_vector_idx(embedding));
256363
+
256364
+ -- ========================================================================
256365
+ -- FTS5 virtual table for full-text search
256366
+ -- ========================================================================
256367
+ CREATE VIRTUAL TABLE IF NOT EXISTS memories_fts
256368
+ USING fts5(id UNINDEXED, content, content=memories, content_rowid=rowid);
256369
+
256370
+ -- Triggers to keep FTS5 in sync
256371
+ CREATE TRIGGER IF NOT EXISTS memories_fts_insert
256372
+ AFTER INSERT ON memories
256373
+ BEGIN
256374
+ INSERT INTO memories_fts(rowid, id, content)
256375
+ VALUES (new.rowid, new.id, new.content);
256376
+ END;
256377
+
256378
+ CREATE TRIGGER IF NOT EXISTS memories_fts_update
256379
+ AFTER UPDATE ON memories
256380
+ BEGIN
256381
+ UPDATE memories_fts
256382
+ SET content = new.content
256383
+ WHERE rowid = new.rowid;
256384
+ END;
256385
+
256386
+ CREATE TRIGGER IF NOT EXISTS memories_fts_delete
256387
+ AFTER DELETE ON memories
256388
+ BEGIN
256389
+ DELETE FROM memories_fts WHERE rowid = old.rowid;
256390
+ END;
256391
+ `,
256392
+ down: `
256393
+ -- Drop in reverse order
256394
+ DROP TRIGGER IF EXISTS memories_fts_delete;
256395
+ DROP TRIGGER IF EXISTS memories_fts_update;
256396
+ DROP TRIGGER IF EXISTS memories_fts_insert;
256397
+ DROP TABLE IF EXISTS memories_fts;
256398
+ DROP INDEX IF EXISTS idx_memories_embedding;
256399
+ DROP INDEX IF EXISTS idx_memories_collection;
256400
+ DROP TABLE IF EXISTS memories;
256401
+ `
256402
+ };
256403
+ memorySchemaOverhaulLibSQL2 = {
256404
+ version: 10,
256405
+ description: "Memory schema overhaul: links, entities, relationships, temporal fields",
256406
+ up: `
256407
+ -- ========================================================================
256408
+ -- Add temporal and metadata columns to memories table
256409
+ -- ========================================================================
256410
+ ALTER TABLE memories ADD COLUMN valid_from TEXT;
256411
+ ALTER TABLE memories ADD COLUMN valid_until TEXT;
256412
+ ALTER TABLE memories ADD COLUMN superseded_by TEXT REFERENCES memories(id);
256413
+ ALTER TABLE memories ADD COLUMN auto_tags TEXT;
256414
+ ALTER TABLE memories ADD COLUMN keywords TEXT;
256415
+
256416
+ -- ========================================================================
256417
+ -- Memory Links Table (Zettelkasten-style bidirectional connections)
256418
+ -- ========================================================================
256419
+ CREATE TABLE IF NOT EXISTS memory_links (
256420
+ id TEXT PRIMARY KEY,
256421
+ source_id TEXT NOT NULL REFERENCES memories(id) ON DELETE CASCADE,
256422
+ target_id TEXT NOT NULL REFERENCES memories(id) ON DELETE CASCADE,
256423
+ link_type TEXT NOT NULL,
256424
+ strength REAL DEFAULT 1.0,
256425
+ created_at TEXT DEFAULT (datetime('now')),
256426
+ UNIQUE(source_id, target_id, link_type)
256427
+ );
256428
+
256429
+ CREATE INDEX IF NOT EXISTS idx_memory_links_source ON memory_links(source_id);
256430
+ CREATE INDEX IF NOT EXISTS idx_memory_links_target ON memory_links(target_id);
256431
+
256432
+ -- ========================================================================
256433
+ -- Entities Table (Named entities extracted from memories)
256434
+ -- ========================================================================
256435
+ CREATE TABLE IF NOT EXISTS entities (
256436
+ id TEXT PRIMARY KEY,
256437
+ name TEXT NOT NULL,
256438
+ entity_type TEXT NOT NULL,
256439
+ canonical_name TEXT,
256440
+ created_at TEXT DEFAULT (datetime('now')),
256441
+ updated_at TEXT DEFAULT (datetime('now')),
256442
+ UNIQUE(name, entity_type)
256443
+ );
256444
+
256445
+ CREATE INDEX IF NOT EXISTS idx_entities_type ON entities(entity_type);
256446
+ CREATE INDEX IF NOT EXISTS idx_entities_name ON entities(name);
256447
+
256448
+ -- ========================================================================
256449
+ -- Relationships Table (Entity-entity triples)
256450
+ -- ========================================================================
256451
+ CREATE TABLE IF NOT EXISTS relationships (
256452
+ id TEXT PRIMARY KEY,
256453
+ subject_id TEXT NOT NULL REFERENCES entities(id) ON DELETE CASCADE,
256454
+ predicate TEXT NOT NULL,
256455
+ object_id TEXT NOT NULL REFERENCES entities(id) ON DELETE CASCADE,
256456
+ memory_id TEXT REFERENCES memories(id) ON DELETE SET NULL,
256457
+ confidence REAL DEFAULT 1.0,
256458
+ created_at TEXT DEFAULT (datetime('now')),
256459
+ UNIQUE(subject_id, predicate, object_id)
256460
+ );
256461
+
256462
+ CREATE INDEX IF NOT EXISTS idx_relationships_subject ON relationships(subject_id);
256463
+ CREATE INDEX IF NOT EXISTS idx_relationships_object ON relationships(object_id);
256464
+ CREATE INDEX IF NOT EXISTS idx_relationships_predicate ON relationships(predicate);
256465
+
256466
+ -- ========================================================================
256467
+ -- Memory-Entities Junction Table
256468
+ -- ========================================================================
256469
+ CREATE TABLE IF NOT EXISTS memory_entities (
256470
+ memory_id TEXT NOT NULL REFERENCES memories(id) ON DELETE CASCADE,
256471
+ entity_id TEXT NOT NULL REFERENCES entities(id) ON DELETE CASCADE,
256472
+ role TEXT,
256473
+ PRIMARY KEY(memory_id, entity_id)
256474
+ );
256475
+ `,
256476
+ down: `
256477
+ -- Drop tables in dependency order
256478
+ DROP TABLE IF EXISTS memory_entities;
256479
+ DROP TABLE IF EXISTS relationships;
256480
+ DROP INDEX IF EXISTS idx_memory_links_source;
256481
+ DROP INDEX IF EXISTS idx_memory_links_target;
256482
+ DROP TABLE IF EXISTS memory_links;
256483
+ DROP INDEX IF EXISTS idx_entities_type;
256484
+ DROP INDEX IF EXISTS idx_entities_name;
256485
+ DROP TABLE IF EXISTS entities;
256486
+
256487
+ -- Remove columns from memories table (SQLite doesn't support DROP COLUMN until 3.35.0)
256488
+ -- In production, these columns can be left as NULL if downgrade is needed
256489
+ -- Or recreate table without these columns
256490
+ `
256491
+ };
256492
+ sessionMetadataExtensionLibSQL2 = {
256493
+ version: 11,
256494
+ description: "Add session metadata columns (agent_type, session_id, message_role, message_idx, source_path)",
256495
+ up: `
256496
+ -- ========================================================================
256497
+ -- Add session metadata columns to memories table
256498
+ -- ========================================================================
256499
+ ALTER TABLE memories ADD COLUMN agent_type TEXT;
256500
+ ALTER TABLE memories ADD COLUMN session_id TEXT;
256501
+ ALTER TABLE memories ADD COLUMN message_role TEXT CHECK(message_role IN ('user', 'assistant', 'system'));
256502
+ ALTER TABLE memories ADD COLUMN message_idx INTEGER;
256503
+ ALTER TABLE memories ADD COLUMN source_path TEXT;
256504
+
256505
+ -- Index for session-based queries
256506
+ CREATE INDEX IF NOT EXISTS idx_memories_session ON memories(session_id, message_idx);
256507
+
256508
+ -- Index for agent filtering
256509
+ CREATE INDEX IF NOT EXISTS idx_memories_agent_type ON memories(agent_type);
256510
+
256511
+ -- Index for role filtering
256512
+ CREATE INDEX IF NOT EXISTS idx_memories_role ON memories(message_role);
256513
+ `,
256514
+ down: `
256515
+ -- Drop indexes first
256516
+ DROP INDEX IF EXISTS idx_memories_role;
256517
+ DROP INDEX IF EXISTS idx_memories_agent_type;
256518
+ DROP INDEX IF EXISTS idx_memories_session;
256519
+
256520
+ -- SQLite doesn't support DROP COLUMN until 3.35.0
256521
+ -- In production, these columns can be left as NULL if downgrade is needed
256522
+ -- Or recreate table without these columns
256523
+ `
256524
+ };
256525
+ memorySelfHealColumnsLibSQL2 = {
256526
+ version: 12,
256527
+ description: "Schema convergence: self-heal missing columns (tags, updated_at, decay_factor, access_count, last_accessed, category, status)",
256528
+ up: `
256529
+ -- No-op: actual column additions handled by healMemorySchema() post-migration.
256530
+ -- This migration just bumps the version number.
256531
+ SELECT 1;
256532
+ `,
256533
+ down: `
256534
+ -- Cannot remove columns in older SQLite versions
256535
+ SELECT 1;
256056
256536
  `
256057
256537
  };
256058
256538
  memoryMigrations2 = [memoryMigration2];
256539
+ memoryMigrationsLibSQL2 = [
256540
+ memoryMigrationLibSQL2,
256541
+ memorySchemaOverhaulLibSQL2,
256542
+ sessionMetadataExtensionLibSQL2,
256543
+ memorySelfHealColumnsLibSQL2
256544
+ ];
256059
256545
  });
256060
256546
  exports_migrations22 = {};
256061
256547
  __export7(exports_migrations22, {
@@ -256395,7 +256881,7 @@ ${stack.split(`
256395
256881
  `
256396
256882
  },
256397
256883
  ...hiveMigrations2,
256398
- ...memoryMigrations2
256884
+ ...memoryMigrationsLibSQL2
256399
256885
  ];
256400
256886
  });
256401
256887
  init_decision_trace_store2 = __esm5(() => {
@@ -303638,7 +304124,7 @@ var require_lib = __commonJS((exports2, module2) => {
303638
304124
  3793,
303639
304125
  7920
303640
304126
  ];
303641
- var toUTF8Array = function toUTF8Array(str2) {
304127
+ var toUTF8Array = function toUTF8Array2(str2) {
303642
304128
  var char3;
303643
304129
  var i = 0;
303644
304130
  var p = 0;
@@ -303665,7 +304151,7 @@ var require_lib = __commonJS((exports2, module2) => {
303665
304151
  }
303666
304152
  return utf8;
303667
304153
  };
303668
- var generate = module2.exports = function generate(str2) {
304154
+ var generate = module2.exports = function generate2(str2) {
303669
304155
  var char3;
303670
304156
  var i = 0;
303671
304157
  var start6 = -1;
@@ -304893,7 +305379,7 @@ WD9f
304893
305379
 
304894
305380
  // ../../node_modules/.bun/ioredis@5.9.2/node_modules/ioredis/built/utils/index.js
304895
305381
  var require_utils11 = __commonJS((exports2) => {
304896
- var __dirname = "/Users/joel/Code/joelhooks/opencode-swarm-plugin/node_modules/.bun/ioredis@5.9.2/node_modules/ioredis/built/utils";
305382
+ var __dirname = "/home/runner/work/swarm-tools/swarm-tools/node_modules/.bun/ioredis@5.9.2/node_modules/ioredis/built/utils";
304897
305383
  Object.defineProperty(exports2, "__esModule", { value: true });
304898
305384
  exports2.noop = exports2.defaults = exports2.Debug = exports2.getPackageMeta = exports2.zipMap = exports2.CONNECTION_CLOSED_ERROR_MSG = exports2.shuffle = exports2.sample = exports2.resolveTLSProfile = exports2.parseURL = exports2.optimizeErrorStack = exports2.toArg = exports2.convertMapToArray = exports2.convertObjectToArray = exports2.timeout = exports2.packObject = exports2.isInt = exports2.wrapMultiResult = exports2.convertBufferToString = undefined;
304899
305385
  var fs_1 = __require("fs");
@@ -305179,7 +305665,7 @@ var require_argumentParsers = __commonJS((exports2) => {
305179
305665
 
305180
305666
  // ../../node_modules/.bun/ioredis@5.9.2/node_modules/ioredis/built/Command.js
305181
305667
  var require_Command = __commonJS((exports2) => {
305182
- var __dirname = "/Users/joel/Code/joelhooks/opencode-swarm-plugin/node_modules/.bun/ioredis@5.9.2/node_modules/ioredis/built";
305668
+ var __dirname = "/home/runner/work/swarm-tools/swarm-tools/node_modules/.bun/ioredis@5.9.2/node_modules/ioredis/built";
305183
305669
  Object.defineProperty(exports2, "__esModule", { value: true });
305184
305670
  var commands_1 = require_built();
305185
305671
  var calculateSlot = require_lib();
@@ -306732,10 +307218,10 @@ var require_denque = __commonJS((exports2, module2) => {
306732
307218
  i = this._head + i & this._capacityMask;
306733
307219
  return this._list[i];
306734
307220
  };
306735
- Denque.prototype.get = function get(i) {
307221
+ Denque.prototype.get = function get51(i) {
306736
307222
  return this.peekAt(i);
306737
307223
  };
306738
- Denque.prototype.peek = function peek() {
307224
+ Denque.prototype.peek = function peek6() {
306739
307225
  if (this._head === this._tail)
306740
307226
  return;
306741
307227
  return this._list[this._head];
@@ -306747,11 +307233,11 @@ var require_denque = __commonJS((exports2, module2) => {
306747
307233
  return this.peekAt(-1);
306748
307234
  };
306749
307235
  Object.defineProperty(Denque.prototype, "length", {
306750
- get: function length() {
307236
+ get: function length7() {
306751
307237
  return this.size();
306752
307238
  }
306753
307239
  });
306754
- Denque.prototype.size = function size() {
307240
+ Denque.prototype.size = function size41() {
306755
307241
  if (this._head === this._tail)
306756
307242
  return 0;
306757
307243
  if (this._head < this._tail)
@@ -306774,7 +307260,7 @@ var require_denque = __commonJS((exports2, module2) => {
306774
307260
  else
306775
307261
  return this._capacityMask + 1 - (this._head - this._tail);
306776
307262
  };
306777
- Denque.prototype.shift = function shift() {
307263
+ Denque.prototype.shift = function shift5() {
306778
307264
  var head14 = this._head;
306779
307265
  if (head14 === this._tail)
306780
307266
  return;
@@ -306802,7 +307288,7 @@ var require_denque = __commonJS((exports2, module2) => {
306802
307288
  else
306803
307289
  return this._capacityMask + 1 - (this._head - this._tail);
306804
307290
  };
306805
- Denque.prototype.pop = function pop() {
307291
+ Denque.prototype.pop = function pop4() {
306806
307292
  var tail6 = this._tail;
306807
307293
  if (tail6 === this._head)
306808
307294
  return;
@@ -306845,7 +307331,7 @@ var require_denque = __commonJS((exports2, module2) => {
306845
307331
  }
306846
307332
  return item;
306847
307333
  };
306848
- Denque.prototype.remove = function remove(index4, count11) {
307334
+ Denque.prototype.remove = function remove31(index4, count11) {
306849
307335
  var i = index4;
306850
307336
  var removed;
306851
307337
  var del_count = count11;
@@ -306984,15 +307470,15 @@ var require_denque = __commonJS((exports2, module2) => {
306984
307470
  return this.remove(i, count11);
306985
307471
  }
306986
307472
  };
306987
- Denque.prototype.clear = function clear() {
307473
+ Denque.prototype.clear = function clear9() {
306988
307474
  this._list = new Array(this._list.length);
306989
307475
  this._head = 0;
306990
307476
  this._tail = 0;
306991
307477
  };
306992
- Denque.prototype.isEmpty = function isEmpty() {
307478
+ Denque.prototype.isEmpty = function isEmpty37() {
306993
307479
  return this._head === this._tail;
306994
307480
  };
306995
- Denque.prototype.toArray = function toArray() {
307481
+ Denque.prototype.toArray = function toArray13() {
306996
307482
  return this._copyArray(false);
306997
307483
  };
306998
307484
  Denque.prototype._fromArray = function _fromArray(array12) {
@@ -311422,7 +311908,7 @@ var require_is_extendable2 = __commonJS((exports2, module2) => {
311422
311908
  // ../../node_modules/.bun/extend-shallow@2.0.1/node_modules/extend-shallow/index.js
311423
311909
  var require_extend_shallow2 = __commonJS((exports2, module2) => {
311424
311910
  var isObject5 = require_is_extendable2();
311425
- module2.exports = function extend(o) {
311911
+ module2.exports = function extend8(o) {
311426
311912
  if (!isObject5(o)) {
311427
311913
  o = {};
311428
311914
  }
@@ -311616,7 +312102,7 @@ var require_exception2 = __commonJS((exports2, module2) => {
311616
312102
  }
311617
312103
  YAMLException.prototype = Object.create(Error.prototype);
311618
312104
  YAMLException.prototype.constructor = YAMLException;
311619
- YAMLException.prototype.toString = function toString(compact8) {
312105
+ YAMLException.prototype.toString = function toString3(compact8) {
311620
312106
  var result = this.name + ": ";
311621
312107
  result += this.reason || "(unknown reason)";
311622
312108
  if (!compact8 && this.mark) {
@@ -311669,7 +312155,7 @@ var require_mark2 = __commonJS((exports2, module2) => {
311669
312155
  return common.repeat(" ", indent) + head14 + snippet + tail6 + `
311670
312156
  ` + common.repeat(" ", indent + this.position - start6 + head14.length) + "^";
311671
312157
  };
311672
- Mark.prototype.toString = function toString(compact8) {
312158
+ Mark.prototype.toString = function toString3(compact8) {
311673
312159
  var snippet, where = "";
311674
312160
  if (this.name) {
311675
312161
  where += 'in "' + this.name + '" ';
@@ -329185,7 +329671,7 @@ var require_node_gyp_build_optional_packages = __commonJS((exports2, module2) =>
329185
329671
 
329186
329672
  // ../../node_modules/.bun/msgpackr-extract@3.0.3/node_modules/msgpackr-extract/index.js
329187
329673
  var require_msgpackr_extract = __commonJS((exports2, module2) => {
329188
- var __dirname = "/Users/joel/Code/joelhooks/opencode-swarm-plugin/node_modules/.bun/msgpackr-extract@3.0.3/node_modules/msgpackr-extract";
329674
+ var __dirname = "/home/runner/work/swarm-tools/swarm-tools/node_modules/.bun/msgpackr-extract@3.0.3/node_modules/msgpackr-extract";
329189
329675
  module2.exports = require_node_gyp_build_optional_packages()(__dirname);
329190
329676
  });
329191
329677
 
@@ -329719,7 +330205,7 @@ var require_node6 = __commonJS((exports2) => {
329719
330205
  readString16 = readString2(3);
329720
330206
  readString32 = readString2(5);
329721
330207
  function readString2(headerLength) {
329722
- return function readString(length7) {
330208
+ return function readString3(length7) {
329723
330209
  let string13 = strings[stringPosition++];
329724
330210
  if (string13 == null) {
329725
330211
  if (bundledStrings$1)
@@ -348626,7 +349112,7 @@ var require_expression = __commonJS((exports2, module2) => {
348626
349112
  this._hasIterated = true;
348627
349113
  return currentDate;
348628
349114
  };
348629
- CronExpression.prototype.next = function next() {
349115
+ CronExpression.prototype.next = function next7() {
348630
349116
  var schedule5 = this._findSchedule();
348631
349117
  if (this._isIterator) {
348632
349118
  return {
@@ -348672,7 +349158,7 @@ var require_expression = __commonJS((exports2, module2) => {
348672
349158
  this._hasIterated = hasIterated;
348673
349159
  }
348674
349160
  };
348675
- CronExpression.prototype.iterate = function iterate(steps, callback) {
349161
+ CronExpression.prototype.iterate = function iterate8(steps, callback) {
348676
349162
  var dates = [];
348677
349163
  if (steps >= 0) {
348678
349164
  for (var i = 0, c = steps;i < c; i++) {
@@ -348701,10 +349187,10 @@ var require_expression = __commonJS((exports2, module2) => {
348701
349187
  }
348702
349188
  return dates;
348703
349189
  };
348704
- CronExpression.prototype.reset = function reset(newDate) {
349190
+ CronExpression.prototype.reset = function reset4(newDate) {
348705
349191
  this._currentDate = new CronDate(newDate || this._options.currentDate);
348706
349192
  };
348707
- CronExpression.prototype.stringify = function stringify(includeSeconds) {
349193
+ CronExpression.prototype.stringify = function stringify4(includeSeconds) {
348708
349194
  var resultArr = [];
348709
349195
  for (var i = includeSeconds ? 0 : 1, c = CronExpression.map.length;i < c; ++i) {
348710
349196
  var field = CronExpression.map[i];
@@ -348720,12 +349206,12 @@ var require_expression = __commonJS((exports2, module2) => {
348720
349206
  }
348721
349207
  return resultArr.join(" ");
348722
349208
  };
348723
- CronExpression.parse = function parse(expression, options2) {
349209
+ CronExpression.parse = function parse9(expression, options2) {
348724
349210
  var self2 = this;
348725
349211
  if (typeof options2 === "function") {
348726
349212
  options2 = {};
348727
349213
  }
348728
- function parse9(expression2, options3) {
349214
+ function parse13(expression2, options3) {
348729
349215
  if (!options3) {
348730
349216
  options3 = {};
348731
349217
  }
@@ -348781,7 +349267,7 @@ var require_expression = __commonJS((exports2, module2) => {
348781
349267
  return val2;
348782
349268
  }
348783
349269
  }
348784
- return parse9(expression, options2);
349270
+ return parse13(expression, options2);
348785
349271
  };
348786
349272
  CronExpression.fieldsToExpression = function fieldsToExpression(fields, options2) {
348787
349273
  function validateConstraints(field2, values20, constraints) {
@@ -350455,7 +350941,7 @@ var require_sandbox = __commonJS((exports2) => {
350455
350941
  Object.defineProperty(exports2, "__esModule", { value: true });
350456
350942
  var enums_1 = require_enums();
350457
350943
  var sandbox5 = (processFile, childPool) => {
350458
- return async function process(job, token) {
350944
+ return async function process3(job, token) {
350459
350945
  let child;
350460
350946
  let msgHandler;
350461
350947
  let exitHandler;
@@ -352338,7 +352824,7 @@ var require_redact = __commonJS((exports2, module2) => {
352338
352824
  } = options2;
352339
352825
  validatePaths(paths);
352340
352826
  const pathStructure = buildPathStructure(paths);
352341
- return function redact(obj) {
352827
+ return function redact5(obj) {
352342
352828
  if (strict5 && (obj === null || typeof obj !== "object")) {
352343
352829
  if (obj === null || obj === undefined) {
352344
352830
  return serialize3 ? serialize3(obj) : obj;
@@ -353488,7 +353974,7 @@ var require_indexes3 = __commonJS((exports2, module2) => {
353488
353974
 
353489
353975
  // ../../node_modules/.bun/thread-stream@3.1.0/node_modules/thread-stream/index.js
353490
353976
  var require_thread_stream = __commonJS((exports2, module2) => {
353491
- var __dirname = "/Users/joel/Code/joelhooks/opencode-swarm-plugin/node_modules/.bun/thread-stream@3.1.0/node_modules/thread-stream";
353977
+ var __dirname = "/home/runner/work/swarm-tools/swarm-tools/node_modules/.bun/thread-stream@3.1.0/node_modules/thread-stream";
353492
353978
  var { version: version6 } = require_package();
353493
353979
  var { EventEmitter: EventEmitter5 } = __require("events");
353494
353980
  var { Worker: Worker3 } = __require("worker_threads");
@@ -353909,7 +354395,7 @@ var require_thread_stream = __commonJS((exports2, module2) => {
353909
354395
 
353910
354396
  // ../../node_modules/.bun/pino@9.14.0/node_modules/pino/lib/transport.js
353911
354397
  var require_transport = __commonJS((exports2, module2) => {
353912
- var __dirname = "/Users/joel/Code/joelhooks/opencode-swarm-plugin/node_modules/.bun/pino@9.14.0/node_modules/pino/lib";
354398
+ var __dirname = "/home/runner/work/swarm-tools/swarm-tools/node_modules/.bun/pino@9.14.0/node_modules/pino/lib";
353913
354399
  var { createRequire: createRequire6 } = __require("module");
353914
354400
  var getCallers = require_caller();
353915
354401
  var { join: join18, isAbsolute: isAbsolute5, sep: sep4 } = __require("node:path");
@@ -384927,7 +385413,7 @@ var require_is_extendable = __commonJS3((exports2, module2) => {
384927
385413
  });
384928
385414
  var require_extend_shallow = __commonJS3((exports2, module2) => {
384929
385415
  var isObject22 = require_is_extendable();
384930
- module2.exports = function extend(o) {
385416
+ module2.exports = function extend22(o) {
384931
385417
  if (!isObject22(o)) {
384932
385418
  o = {};
384933
385419
  }
@@ -385115,7 +385601,7 @@ var require_exception = __commonJS3((exports2, module2) => {
385115
385601
  }
385116
385602
  YAMLException.prototype = Object.create(Error.prototype);
385117
385603
  YAMLException.prototype.constructor = YAMLException;
385118
- YAMLException.prototype.toString = function toString(compact7) {
385604
+ YAMLException.prototype.toString = function toString2(compact7) {
385119
385605
  var result = this.name + ": ";
385120
385606
  result += this.reason || "(unknown reason)";
385121
385607
  if (!compact7 && this.mark) {
@@ -385166,7 +385652,7 @@ var require_mark = __commonJS3((exports2, module2) => {
385166
385652
  return common.repeat(" ", indent) + head13 + snippet + tail5 + `
385167
385653
  ` + common.repeat(" ", indent + this.position - start5 + head13.length) + "^";
385168
385654
  };
385169
- Mark.prototype.toString = function toString(compact7) {
385655
+ Mark.prototype.toString = function toString2(compact7) {
385170
385656
  var snippet, where = "";
385171
385657
  if (this.name) {
385172
385658
  where += 'in "' + this.name + '" ';