@signetai/core 0.216.7 → 0.217.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +321 -5
- package/dist/migrations/146-source-transcript-import.d.ts +4 -0
- package/dist/migrations/146-source-transcript-import.d.ts.map +1 -0
- package/dist/migrations/147-source-import-replay-file-slots.d.ts +9 -0
- package/dist/migrations/147-source-import-replay-file-slots.d.ts.map +1 -0
- package/dist/migrations/148-source-import-attempt-provenance.d.ts +4 -0
- package/dist/migrations/148-source-import-attempt-provenance.d.ts.map +1 -0
- package/dist/migrations/149-transcript-import-state-machine.d.ts +4 -0
- package/dist/migrations/149-transcript-import-state-machine.d.ts.map +1 -0
- package/dist/migrations/150-memory-head-freshness.d.ts +4 -0
- package/dist/migrations/150-memory-head-freshness.d.ts.map +1 -0
- package/dist/migrations/index.d.ts.map +1 -1
- package/dist/sources-config.d.ts.map +1 -1
- package/dist/workspace-source-repo.d.ts +2 -0
- package/dist/workspace-source-repo.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -16881,6 +16881,251 @@ function up145(db) {
|
|
|
16881
16881
|
`);
|
|
16882
16882
|
}
|
|
16883
16883
|
|
|
16884
|
+
// src/migrations/146-source-transcript-import.ts
|
|
16885
|
+
function up146(db) {
|
|
16886
|
+
db.exec(`
|
|
16887
|
+
CREATE TABLE IF NOT EXISTS source_import_jobs (
|
|
16888
|
+
id TEXT PRIMARY KEY, kind TEXT NOT NULL CHECK (kind = 'import'), agent_id TEXT NOT NULL,
|
|
16889
|
+
schema_id TEXT NOT NULL, adapter_version INTEGER NOT NULL CHECK (adapter_version = 1),
|
|
16890
|
+
state TEXT NOT NULL CHECK (state IN ('staging','inventorying','queued','running','paused','completed','completed_with_rejections','cancelled','failed')),
|
|
16891
|
+
control_request TEXT CHECK (control_request IN ('pause','resume','retry','cancel') OR control_request IS NULL),
|
|
16892
|
+
generation INTEGER NOT NULL DEFAULT 0, total INTEGER NOT NULL DEFAULT 0, imported INTEGER NOT NULL DEFAULT 0,
|
|
16893
|
+
duplicate INTEGER NOT NULL DEFAULT 0, rejected INTEGER NOT NULL DEFAULT 0, pending INTEGER NOT NULL DEFAULT 0,
|
|
16894
|
+
lease_token TEXT, lease_expires_at TEXT, error TEXT, created_at TEXT NOT NULL DEFAULT (datetime('now')),
|
|
16895
|
+
updated_at TEXT NOT NULL DEFAULT (datetime('now')), started_at TEXT, completed_at TEXT, reconciled_at TEXT
|
|
16896
|
+
);
|
|
16897
|
+
CREATE INDEX IF NOT EXISTS idx_source_import_jobs_agent_state ON source_import_jobs(agent_id, state);
|
|
16898
|
+
|
|
16899
|
+
CREATE TABLE IF NOT EXISTS source_import_files (
|
|
16900
|
+
id TEXT PRIMARY KEY, job_id TEXT NOT NULL REFERENCES source_import_jobs(id) ON DELETE CASCADE,
|
|
16901
|
+
source_id TEXT NOT NULL, agent_id TEXT NOT NULL, ordinal INTEGER NOT NULL, name TEXT NOT NULL,
|
|
16902
|
+
managed_path TEXT NOT NULL, size_bytes INTEGER NOT NULL DEFAULT 0, content_hash TEXT,
|
|
16903
|
+
state TEXT NOT NULL CHECK (state IN ('staging','ready','inventorying','completed','failed')),
|
|
16904
|
+
record_count INTEGER NOT NULL DEFAULT 0, blank_count INTEGER NOT NULL DEFAULT 0, malformed_count INTEGER NOT NULL DEFAULT 0,
|
|
16905
|
+
inventory_version INTEGER NOT NULL DEFAULT 1, checkpoint_ordinal INTEGER NOT NULL DEFAULT 0,
|
|
16906
|
+
checkpoint_byte_offset INTEGER NOT NULL DEFAULT 0, created_at TEXT NOT NULL DEFAULT (datetime('now')), updated_at TEXT NOT NULL DEFAULT (datetime('now')),
|
|
16907
|
+
UNIQUE(job_id, ordinal)
|
|
16908
|
+
);
|
|
16909
|
+
CREATE INDEX IF NOT EXISTS idx_source_import_files_job_state ON source_import_files(job_id, state);
|
|
16910
|
+
|
|
16911
|
+
CREATE TABLE IF NOT EXISTS source_import_records (
|
|
16912
|
+
id TEXT PRIMARY KEY, job_id TEXT NOT NULL REFERENCES source_import_jobs(id) ON DELETE CASCADE,
|
|
16913
|
+
file_id TEXT NOT NULL REFERENCES source_import_files(id) ON DELETE CASCADE, source_id TEXT NOT NULL, agent_id TEXT NOT NULL,
|
|
16914
|
+
ordinal INTEGER NOT NULL, line_number INTEGER NOT NULL, byte_offset INTEGER NOT NULL, byte_length INTEGER NOT NULL,
|
|
16915
|
+
raw_hash TEXT NOT NULL, external_identity TEXT, conversation_fingerprint TEXT, status TEXT NOT NULL CHECK (status IN ('pending','imported','duplicate','rejected','cancelled')),
|
|
16916
|
+
canonical_id TEXT, canonical_key TEXT, rejection_code TEXT, attempt_count INTEGER NOT NULL DEFAULT 0,
|
|
16917
|
+
created_at TEXT NOT NULL DEFAULT (datetime('now')), updated_at TEXT NOT NULL DEFAULT (datetime('now')),
|
|
16918
|
+
UNIQUE(file_id, ordinal), UNIQUE(file_id, byte_offset)
|
|
16919
|
+
);
|
|
16920
|
+
CREATE INDEX IF NOT EXISTS idx_source_import_records_job_status ON source_import_records(job_id, status);
|
|
16921
|
+
CREATE INDEX IF NOT EXISTS idx_source_import_records_source_status ON source_import_records(agent_id, source_id, status);
|
|
16922
|
+
|
|
16923
|
+
CREATE TABLE IF NOT EXISTS transcript_import_conversations (
|
|
16924
|
+
agent_id TEXT NOT NULL, external_identity TEXT NOT NULL, canonical_key TEXT NOT NULL,
|
|
16925
|
+
conversation_fingerprint TEXT NOT NULL, canonical_id TEXT NOT NULL, owner_source_id TEXT NOT NULL,
|
|
16926
|
+
owner_record_id TEXT NOT NULL, state TEXT NOT NULL CHECK (state IN ('committing','committed','removed')),
|
|
16927
|
+
content_hash TEXT NOT NULL, harness TEXT NOT NULL, timestamp TEXT NOT NULL,
|
|
16928
|
+
created_at TEXT NOT NULL DEFAULT (datetime('now')), updated_at TEXT NOT NULL DEFAULT (datetime('now')),
|
|
16929
|
+
PRIMARY KEY (agent_id, external_identity), UNIQUE(agent_id, canonical_key)
|
|
16930
|
+
);
|
|
16931
|
+
CREATE INDEX IF NOT EXISTS idx_transcript_import_conversations_source ON transcript_import_conversations(agent_id, owner_source_id);
|
|
16932
|
+
|
|
16933
|
+
CREATE TABLE IF NOT EXISTS source_import_record_attempts (
|
|
16934
|
+
id INTEGER PRIMARY KEY AUTOINCREMENT, agent_id TEXT NOT NULL, job_id TEXT NOT NULL, file_id TEXT NOT NULL,
|
|
16935
|
+
record_id TEXT NOT NULL, generation INTEGER NOT NULL, outcome TEXT NOT NULL, error_code TEXT, created_at TEXT NOT NULL DEFAULT (datetime('now'))
|
|
16936
|
+
);
|
|
16937
|
+
CREATE INDEX IF NOT EXISTS idx_source_import_attempts_record ON source_import_record_attempts(agent_id, record_id, created_at);
|
|
16938
|
+
`);
|
|
16939
|
+
for (const column of ["source_id", "source_record_id", "source_meta_json"]) {
|
|
16940
|
+
const exists = db.prepare("SELECT 1 AS found FROM pragma_table_info('session_transcripts') WHERE name = ?").get(column);
|
|
16941
|
+
if (exists == null)
|
|
16942
|
+
db.exec(`ALTER TABLE session_transcripts ADD COLUMN ${column} TEXT`);
|
|
16943
|
+
}
|
|
16944
|
+
db.exec("CREATE INDEX IF NOT EXISTS idx_session_transcripts_agent_source ON session_transcripts(agent_id, source_id)");
|
|
16945
|
+
}
|
|
16946
|
+
|
|
16947
|
+
// src/migrations/147-source-import-replay-file-slots.ts
|
|
16948
|
+
function up147(db) {
|
|
16949
|
+
db.exec("CREATE INDEX IF NOT EXISTS idx_source_import_files_job_state ON source_import_files(job_id, state)");
|
|
16950
|
+
}
|
|
16951
|
+
|
|
16952
|
+
// src/migrations/148-source-import-attempt-provenance.ts
|
|
16953
|
+
function up148(db) {
|
|
16954
|
+
const columns = db.prepare("PRAGMA table_info(source_import_record_attempts)").all();
|
|
16955
|
+
if (!columns.some((column) => column.name === "source_id")) {
|
|
16956
|
+
db.exec("ALTER TABLE source_import_record_attempts ADD COLUMN source_id TEXT");
|
|
16957
|
+
}
|
|
16958
|
+
}
|
|
16959
|
+
|
|
16960
|
+
// src/migrations/149-transcript-import-state-machine.ts
|
|
16961
|
+
function up149(db) {
|
|
16962
|
+
const addColumn = (table, column, definition) => {
|
|
16963
|
+
const exists = db.prepare("SELECT 1 AS found FROM pragma_table_info(?) WHERE name = ?").get(table, column);
|
|
16964
|
+
if (exists == null)
|
|
16965
|
+
db.exec(`ALTER TABLE ${table} ADD COLUMN ${column} ${definition}`);
|
|
16966
|
+
};
|
|
16967
|
+
addColumn("source_import_jobs", "duplicate_mode", "TEXT NOT NULL DEFAULT 'skip' CHECK (duplicate_mode IN ('skip','replace','reimport'))");
|
|
16968
|
+
addColumn("source_import_jobs", "next_attempt_at", "TEXT");
|
|
16969
|
+
addColumn("source_import_files", "error", "TEXT");
|
|
16970
|
+
}
|
|
16971
|
+
|
|
16972
|
+
// src/migrations/150-memory-head-freshness.ts
|
|
16973
|
+
function addColumnIfMissing28(db, table, column, definition) {
|
|
16974
|
+
const columns = db.prepare(`PRAGMA table_info(${table})`).all();
|
|
16975
|
+
if (!columns.some((row) => row.name === column))
|
|
16976
|
+
db.exec(`ALTER TABLE ${table} ADD COLUMN ${column} ${definition}`);
|
|
16977
|
+
}
|
|
16978
|
+
function up150(db) {
|
|
16979
|
+
addColumnIfMissing28(db, "memory_md_heads", "is_current", "INTEGER NOT NULL DEFAULT 0");
|
|
16980
|
+
addColumnIfMissing28(db, "dreaming_passes", "head_base_revision", "INTEGER");
|
|
16981
|
+
db.exec("CREATE INDEX IF NOT EXISTS idx_memory_head_revisions_content_hash ON memory_head_revisions(content_hash)");
|
|
16982
|
+
db.exec("CREATE INDEX IF NOT EXISTS idx_memory_md_heads_content_hash ON memory_md_heads(content_hash)");
|
|
16983
|
+
db.exec(`
|
|
16984
|
+
CREATE TRIGGER IF NOT EXISTS dreaming_passes_head_fence_ai
|
|
16985
|
+
AFTER INSERT ON dreaming_passes
|
|
16986
|
+
WHEN NEW.mode = 'incremental-content'
|
|
16987
|
+
BEGIN
|
|
16988
|
+
INSERT OR IGNORE INTO memory_md_heads (agent_id, content, content_hash, revision, updated_at, is_current)
|
|
16989
|
+
VALUES (NEW.agent_id, '', '', 0, datetime('now'), 0);
|
|
16990
|
+
UPDATE dreaming_passes
|
|
16991
|
+
SET head_base_revision = (SELECT revision FROM memory_md_heads WHERE agent_id = NEW.agent_id)
|
|
16992
|
+
WHERE id = NEW.id;
|
|
16993
|
+
END;
|
|
16994
|
+
|
|
16995
|
+
CREATE TRIGGER IF NOT EXISTS memories_head_freshness_au
|
|
16996
|
+
AFTER UPDATE OF content, superseded_by, stale_at, is_deleted, agent_id, visibility, scope, memory_kind ON memories
|
|
16997
|
+
WHEN OLD.content IS NOT NEW.content OR OLD.superseded_by IS NOT NEW.superseded_by
|
|
16998
|
+
OR OLD.stale_at IS NOT NEW.stale_at OR OLD.is_deleted IS NOT NEW.is_deleted
|
|
16999
|
+
OR OLD.agent_id IS NOT NEW.agent_id OR OLD.visibility IS NOT NEW.visibility OR OLD.scope IS NOT NEW.scope OR OLD.memory_kind IS NOT NEW.memory_kind
|
|
17000
|
+
BEGIN
|
|
17001
|
+
UPDATE memory_md_heads SET revision = revision + 1, is_current = 0
|
|
17002
|
+
WHERE agent_id IN (OLD.agent_id, NEW.agent_id)
|
|
17003
|
+
OR (COALESCE(OLD.visibility, 'global') = 'global' OR COALESCE(NEW.visibility, 'global') = 'global')
|
|
17004
|
+
AND (agent_id IN (SELECT id FROM agents WHERE read_policy = 'shared')
|
|
17005
|
+
OR agent_id IN (SELECT id FROM agents WHERE read_policy = 'group' AND policy_group IN
|
|
17006
|
+
(SELECT policy_group FROM agents WHERE id IN (OLD.agent_id, NEW.agent_id))));
|
|
17007
|
+
END;
|
|
17008
|
+
|
|
17009
|
+
CREATE TRIGGER IF NOT EXISTS memories_head_freshness_ad
|
|
17010
|
+
AFTER DELETE ON memories
|
|
17011
|
+
BEGIN
|
|
17012
|
+
UPDATE memory_md_heads SET revision = revision + 1, is_current = 0
|
|
17013
|
+
WHERE agent_id = OLD.agent_id
|
|
17014
|
+
OR (COALESCE(OLD.visibility, 'global') = 'global'
|
|
17015
|
+
AND (agent_id IN (SELECT id FROM agents WHERE read_policy = 'shared')
|
|
17016
|
+
OR agent_id IN (SELECT id FROM agents WHERE read_policy = 'group' AND policy_group IN
|
|
17017
|
+
(SELECT policy_group FROM agents WHERE id = OLD.agent_id))));
|
|
17018
|
+
END;
|
|
17019
|
+
|
|
17020
|
+
CREATE TRIGGER IF NOT EXISTS agents_head_freshness_ad
|
|
17021
|
+
AFTER DELETE ON agents
|
|
17022
|
+
BEGIN
|
|
17023
|
+
UPDATE memory_md_heads SET revision = revision + 1, is_current = 0
|
|
17024
|
+
WHERE agent_id = OLD.id OR agent_id IN (SELECT id FROM agents WHERE read_policy='group' AND policy_group=OLD.policy_group);
|
|
17025
|
+
END;
|
|
17026
|
+
|
|
17027
|
+
CREATE TRIGGER IF NOT EXISTS agents_head_freshness_au
|
|
17028
|
+
AFTER UPDATE OF read_policy, policy_group ON agents
|
|
17029
|
+
WHEN OLD.read_policy IS NOT NEW.read_policy OR OLD.policy_group IS NOT NEW.policy_group
|
|
17030
|
+
BEGIN
|
|
17031
|
+
UPDATE memory_md_heads SET revision = revision + 1, is_current = 0
|
|
17032
|
+
WHERE agent_id IN (OLD.id, NEW.id)
|
|
17033
|
+
OR agent_id IN (SELECT id FROM agents WHERE read_policy = 'shared')
|
|
17034
|
+
OR agent_id IN (SELECT id FROM agents WHERE read_policy = 'group' AND policy_group IN (OLD.policy_group, NEW.policy_group));
|
|
17035
|
+
END;
|
|
17036
|
+
`);
|
|
17037
|
+
for (const table of ["memory_artifacts", "session_transcripts"]) {
|
|
17038
|
+
const exists = db.prepare("SELECT 1 FROM sqlite_master WHERE type='table' AND name=?").get(table);
|
|
17039
|
+
if (!exists)
|
|
17040
|
+
continue;
|
|
17041
|
+
const hasIsDeleted = db.prepare(`PRAGMA table_info(${table})`).all().some((row) => row.name === "is_deleted");
|
|
17042
|
+
const updateColumns = table === "session_transcripts" ? "content, agent_id, completed_at" : hasIsDeleted ? "content, agent_id, is_deleted" : "content, agent_id";
|
|
17043
|
+
const contentChanged = table === "session_transcripts" ? "OLD.completed_at IS NOT NULL AND (OLD.content IS NOT NEW.content OR NEW.completed_at IS NULL)" : `OLD.content IS NOT NEW.content${hasIsDeleted ? " OR OLD.is_deleted IS NOT NEW.is_deleted" : ""}`;
|
|
17044
|
+
db.exec(`
|
|
17045
|
+
CREATE TRIGGER IF NOT EXISTS ${table}_head_freshness_au
|
|
17046
|
+
AFTER UPDATE OF ${updateColumns} ON ${table}
|
|
17047
|
+
WHEN OLD.agent_id IS NOT NEW.agent_id OR ${contentChanged}
|
|
17048
|
+
BEGIN
|
|
17049
|
+
UPDATE memory_md_heads SET revision = revision + 1, is_current = 0
|
|
17050
|
+
WHERE agent_id IN (OLD.agent_id, NEW.agent_id);
|
|
17051
|
+
END;
|
|
17052
|
+
CREATE TRIGGER IF NOT EXISTS ${table}_head_freshness_ad
|
|
17053
|
+
AFTER DELETE ON ${table}
|
|
17054
|
+
BEGIN
|
|
17055
|
+
UPDATE memory_md_heads SET revision = revision + 1, is_current = 0 WHERE agent_id = OLD.agent_id;
|
|
17056
|
+
END;
|
|
17057
|
+
`);
|
|
17058
|
+
}
|
|
17059
|
+
if (db.prepare("SELECT 1 FROM sqlite_master WHERE type='table' AND name='session_summaries'").get()) {
|
|
17060
|
+
db.exec(`
|
|
17061
|
+
CREATE TRIGGER IF NOT EXISTS session_summaries_head_freshness_au
|
|
17062
|
+
AFTER UPDATE OF content, source_ref, source_type, depth, agent_id ON session_summaries
|
|
17063
|
+
WHEN OLD.depth = 0 AND (OLD.content IS NOT NEW.content OR OLD.source_ref IS NOT NEW.source_ref OR OLD.source_type IS NOT NEW.source_type OR OLD.depth IS NOT NEW.depth OR OLD.agent_id IS NOT NEW.agent_id)
|
|
17064
|
+
BEGIN
|
|
17065
|
+
UPDATE memory_md_heads SET revision = revision + 1, is_current = 0 WHERE agent_id IN (OLD.agent_id, NEW.agent_id);
|
|
17066
|
+
END;
|
|
17067
|
+
CREATE TRIGGER IF NOT EXISTS session_summaries_head_freshness_ad
|
|
17068
|
+
AFTER DELETE ON session_summaries
|
|
17069
|
+
WHEN OLD.depth = 0
|
|
17070
|
+
BEGIN
|
|
17071
|
+
UPDATE memory_md_heads SET revision = revision + 1, is_current = 0 WHERE agent_id = OLD.agent_id;
|
|
17072
|
+
END;
|
|
17073
|
+
`);
|
|
17074
|
+
}
|
|
17075
|
+
const safetyExists = db.prepare("SELECT 1 FROM sqlite_master WHERE type='table' AND name='memory_content_safety'").get();
|
|
17076
|
+
if (safetyExists) {
|
|
17077
|
+
db.exec(`
|
|
17078
|
+
CREATE TRIGGER IF NOT EXISTS memory_content_safety_head_freshness_ai
|
|
17079
|
+
AFTER INSERT ON memory_content_safety
|
|
17080
|
+
WHEN NEW.status IS NOT 'clean' OR NEW.context_eligible IS NOT 1
|
|
17081
|
+
BEGIN
|
|
17082
|
+
UPDATE memory_md_heads SET revision = revision + 1, is_current = 0
|
|
17083
|
+
WHERE agent_id IN (NEW.agent_id)
|
|
17084
|
+
OR agent_id IN (SELECT id FROM agents WHERE read_policy IN ('shared', 'group'));
|
|
17085
|
+
END;
|
|
17086
|
+
|
|
17087
|
+
CREATE TRIGGER IF NOT EXISTS memory_content_safety_head_freshness_au
|
|
17088
|
+
AFTER UPDATE OF context_eligible, agent_id, status ON memory_content_safety
|
|
17089
|
+
WHEN (OLD.context_eligible IS NOT NEW.context_eligible OR OLD.agent_id IS NOT NEW.agent_id OR OLD.status IS NOT NEW.status)
|
|
17090
|
+
AND (OLD.status IS NOT 'clean' OR NEW.status IS NOT 'clean' OR OLD.context_eligible IS NOT 1 OR NEW.context_eligible IS NOT 1)
|
|
17091
|
+
BEGIN
|
|
17092
|
+
UPDATE memory_md_heads SET revision = revision + 1, is_current = 0
|
|
17093
|
+
WHERE agent_id IN (OLD.agent_id, NEW.agent_id)
|
|
17094
|
+
OR agent_id IN (SELECT id FROM agents WHERE read_policy = 'shared')
|
|
17095
|
+
OR agent_id IN (SELECT id FROM agents WHERE read_policy = 'group');
|
|
17096
|
+
END;
|
|
17097
|
+
`);
|
|
17098
|
+
}
|
|
17099
|
+
for (const table of ["memory_artifact_tombstones", "imported_source_lifecycle"]) {
|
|
17100
|
+
const exists = db.prepare("SELECT 1 FROM sqlite_master WHERE type='table' AND name=?").get(table);
|
|
17101
|
+
if (!exists)
|
|
17102
|
+
continue;
|
|
17103
|
+
const lifecycleClause = table === "imported_source_lifecycle" ? " WHEN NEW.status = 'unsupported'" : "";
|
|
17104
|
+
const updateColumns = table === "imported_source_lifecycle" ? "agent_id, status" : "agent_id";
|
|
17105
|
+
const lifecycleUpdateClause = table === "imported_source_lifecycle" ? " AND NEW.status = 'unsupported'" : "";
|
|
17106
|
+
const lifecycleWhen = table === "imported_source_lifecycle" ? `(OLD.agent_id IS NOT NEW.agent_id OR OLD.status IS NOT NEW.status)${lifecycleUpdateClause}` : "OLD.agent_id IS NOT NEW.agent_id";
|
|
17107
|
+
db.exec(`
|
|
17108
|
+
CREATE TRIGGER IF NOT EXISTS ${table}_head_freshness_ai
|
|
17109
|
+
AFTER INSERT ON ${table}${lifecycleClause}
|
|
17110
|
+
BEGIN
|
|
17111
|
+
UPDATE memory_md_heads SET revision = revision + 1, is_current = 0 WHERE agent_id = NEW.agent_id;
|
|
17112
|
+
END;
|
|
17113
|
+
CREATE TRIGGER IF NOT EXISTS ${table}_head_freshness_au
|
|
17114
|
+
AFTER UPDATE OF ${updateColumns} ON ${table}
|
|
17115
|
+
WHEN ${lifecycleWhen}
|
|
17116
|
+
BEGIN
|
|
17117
|
+
UPDATE memory_md_heads SET revision = revision + 1, is_current = 0
|
|
17118
|
+
WHERE agent_id IN (OLD.agent_id, NEW.agent_id);
|
|
17119
|
+
END;
|
|
17120
|
+
CREATE TRIGGER IF NOT EXISTS ${table}_head_freshness_ad
|
|
17121
|
+
AFTER DELETE ON ${table}
|
|
17122
|
+
BEGIN
|
|
17123
|
+
UPDATE memory_md_heads SET revision = revision + 1, is_current = 0 WHERE agent_id = OLD.agent_id;
|
|
17124
|
+
END;
|
|
17125
|
+
`);
|
|
17126
|
+
}
|
|
17127
|
+
}
|
|
17128
|
+
|
|
16884
17129
|
// src/migrations/index.ts
|
|
16885
17130
|
var MIGRATIONS = [
|
|
16886
17131
|
{
|
|
@@ -18031,6 +18276,60 @@ var MIGRATIONS = [
|
|
|
18031
18276
|
name: "dreaming-evidence-reviews",
|
|
18032
18277
|
up: up145,
|
|
18033
18278
|
artifacts: { tables: ["dreaming_evidence_reviews"] }
|
|
18279
|
+
},
|
|
18280
|
+
{
|
|
18281
|
+
version: 146,
|
|
18282
|
+
name: "source-transcript-import",
|
|
18283
|
+
up: up146,
|
|
18284
|
+
artifacts: {
|
|
18285
|
+
tables: [
|
|
18286
|
+
"source_import_jobs",
|
|
18287
|
+
"source_import_files",
|
|
18288
|
+
"source_import_records",
|
|
18289
|
+
"transcript_import_conversations",
|
|
18290
|
+
"source_import_record_attempts"
|
|
18291
|
+
],
|
|
18292
|
+
columns: [
|
|
18293
|
+
{ table: "session_transcripts", column: "source_id" },
|
|
18294
|
+
{ table: "session_transcripts", column: "source_record_id" },
|
|
18295
|
+
{ table: "session_transcripts", column: "source_meta_json" }
|
|
18296
|
+
]
|
|
18297
|
+
}
|
|
18298
|
+
},
|
|
18299
|
+
{
|
|
18300
|
+
version: 147,
|
|
18301
|
+
name: "source-import-replay-file-slots",
|
|
18302
|
+
up: up147,
|
|
18303
|
+
artifacts: { tables: ["source_import_files"] }
|
|
18304
|
+
},
|
|
18305
|
+
{
|
|
18306
|
+
version: 148,
|
|
18307
|
+
name: "source-import-attempt-provenance",
|
|
18308
|
+
up: up148,
|
|
18309
|
+
artifacts: { columns: [{ table: "source_import_record_attempts", column: "source_id" }] }
|
|
18310
|
+
},
|
|
18311
|
+
{
|
|
18312
|
+
version: 149,
|
|
18313
|
+
name: "transcript-import-state-machine",
|
|
18314
|
+
up: up149,
|
|
18315
|
+
artifacts: {
|
|
18316
|
+
columns: [
|
|
18317
|
+
{ table: "source_import_jobs", column: "duplicate_mode" },
|
|
18318
|
+
{ table: "source_import_jobs", column: "next_attempt_at" },
|
|
18319
|
+
{ table: "source_import_files", column: "error" }
|
|
18320
|
+
]
|
|
18321
|
+
}
|
|
18322
|
+
},
|
|
18323
|
+
{
|
|
18324
|
+
version: 150,
|
|
18325
|
+
name: "memory-head-freshness",
|
|
18326
|
+
up: up150,
|
|
18327
|
+
artifacts: {
|
|
18328
|
+
columns: [
|
|
18329
|
+
{ table: "memory_md_heads", column: "is_current" },
|
|
18330
|
+
{ table: "dreaming_passes", column: "head_base_revision" }
|
|
18331
|
+
]
|
|
18332
|
+
}
|
|
18034
18333
|
}
|
|
18035
18334
|
];
|
|
18036
18335
|
function checksum(m) {
|
|
@@ -22036,12 +22335,15 @@ function resolveWorkspaceSourceRepoPath(workspaceDir, repoDirName = SIGNET_SOURC
|
|
|
22036
22335
|
return join9(resolve4(workspaceDir), repoDirName);
|
|
22037
22336
|
}
|
|
22038
22337
|
function syncWorkspaceSourceRepo(workspaceDir, options = {}) {
|
|
22338
|
+
const clone = options.cloneIfMissing === true;
|
|
22039
22339
|
const timeoutMs = options.gitTimeoutMs ?? DEFAULT_GIT_TIMEOUT_MS;
|
|
22040
22340
|
const remoteUrl = options.remoteUrl ?? SIGNET_SOURCE_REMOTE_URL;
|
|
22041
22341
|
const repoPath = resolveWorkspaceSourceRepoPath(workspaceDir, options.repoDirName);
|
|
22042
22342
|
if (!isSafeCloneSource(remoteUrl)) {
|
|
22043
22343
|
return unsafeRemoteResult(repoPath);
|
|
22044
22344
|
}
|
|
22345
|
+
if (!clone && !existsSync8(repoPath))
|
|
22346
|
+
return missingCheckoutResult(repoPath);
|
|
22045
22347
|
if (!isGitAvailable(timeoutMs)) {
|
|
22046
22348
|
return gitUnavailableResult(repoPath);
|
|
22047
22349
|
}
|
|
@@ -22053,18 +22355,21 @@ function syncWorkspaceSourceRepo(workspaceDir, options = {}) {
|
|
|
22053
22355
|
return sourceRepoSyncLockErrorResult(repoPath, lock.message);
|
|
22054
22356
|
}
|
|
22055
22357
|
try {
|
|
22056
|
-
return syncWorkspaceSourceRepoLocked(runGit, workspaceDir, repoPath, remoteUrl, timeoutMs);
|
|
22358
|
+
return syncWorkspaceSourceRepoLocked(runGit, workspaceDir, repoPath, remoteUrl, timeoutMs, clone);
|
|
22057
22359
|
} finally {
|
|
22058
22360
|
releaseSourceRepoSyncLock(lock.lock);
|
|
22059
22361
|
}
|
|
22060
22362
|
}
|
|
22061
22363
|
async function syncWorkspaceSourceRepoAsync(workspaceDir, options = {}) {
|
|
22364
|
+
const clone = options.cloneIfMissing === true;
|
|
22062
22365
|
const timeoutMs = options.gitTimeoutMs ?? DEFAULT_GIT_TIMEOUT_MS;
|
|
22063
22366
|
const remoteUrl = options.remoteUrl ?? SIGNET_SOURCE_REMOTE_URL;
|
|
22064
22367
|
const repoPath = resolveWorkspaceSourceRepoPath(workspaceDir, options.repoDirName);
|
|
22065
22368
|
if (!isSafeCloneSource(remoteUrl)) {
|
|
22066
22369
|
return unsafeRemoteResult(repoPath);
|
|
22067
22370
|
}
|
|
22371
|
+
if (!clone && !existsSync8(repoPath))
|
|
22372
|
+
return missingCheckoutResult(repoPath);
|
|
22068
22373
|
if (!await isGitAvailableAsync(timeoutMs)) {
|
|
22069
22374
|
return gitUnavailableResult(repoPath);
|
|
22070
22375
|
}
|
|
@@ -22076,13 +22381,15 @@ async function syncWorkspaceSourceRepoAsync(workspaceDir, options = {}) {
|
|
|
22076
22381
|
return sourceRepoSyncLockErrorResult(repoPath, lock.message);
|
|
22077
22382
|
}
|
|
22078
22383
|
try {
|
|
22079
|
-
return await syncWorkspaceSourceRepoLocked(runGitAsync, workspaceDir, repoPath, remoteUrl, timeoutMs);
|
|
22384
|
+
return await syncWorkspaceSourceRepoLocked(runGitAsync, workspaceDir, repoPath, remoteUrl, timeoutMs, clone);
|
|
22080
22385
|
} finally {
|
|
22081
22386
|
releaseSourceRepoSyncLock(lock.lock);
|
|
22082
22387
|
}
|
|
22083
22388
|
}
|
|
22084
|
-
function syncWorkspaceSourceRepoLocked(run, workspaceDir, repoPath, remoteUrl, timeoutMs) {
|
|
22389
|
+
function syncWorkspaceSourceRepoLocked(run, workspaceDir, repoPath, remoteUrl, timeoutMs, cloneIfMissing) {
|
|
22085
22390
|
if (!existsSync8(repoPath) || isEmptyDirectory(repoPath)) {
|
|
22391
|
+
if (!cloneIfMissing)
|
|
22392
|
+
return missingCheckoutResult(repoPath);
|
|
22086
22393
|
const workspaceReady = ensureWorkspaceDir(workspaceDir);
|
|
22087
22394
|
if (workspaceReady.ok === false) {
|
|
22088
22395
|
return errorResult(repoPath, workspaceReady.message);
|
|
@@ -22396,6 +22703,15 @@ function releaseSourceRepoSyncLock(lock) {
|
|
|
22396
22703
|
async function sleep(ms) {
|
|
22397
22704
|
await new Promise((resolve5) => setTimeout(resolve5, ms));
|
|
22398
22705
|
}
|
|
22706
|
+
function missingCheckoutResult(repoPath) {
|
|
22707
|
+
return {
|
|
22708
|
+
status: "skipped",
|
|
22709
|
+
path: repoPath,
|
|
22710
|
+
message: "No Signet source checkout; source builds can create one explicitly",
|
|
22711
|
+
branch: null,
|
|
22712
|
+
defaultBranch: null
|
|
22713
|
+
};
|
|
22714
|
+
}
|
|
22399
22715
|
function unsafeRemoteResult(repoPath) {
|
|
22400
22716
|
return {
|
|
22401
22717
|
status: "error",
|
|
@@ -22587,7 +22903,7 @@ function parsePorcelainStatusPath(line) {
|
|
|
22587
22903
|
const rawPath = line.slice(3);
|
|
22588
22904
|
const renameSeparator = " -> ";
|
|
22589
22905
|
const path = rawPath.includes(renameSeparator) ? rawPath.slice(rawPath.lastIndexOf(renameSeparator) + renameSeparator.length) : rawPath;
|
|
22590
|
-
return path.replace(
|
|
22906
|
+
return path.replace(/^"|"$/g, "");
|
|
22591
22907
|
}
|
|
22592
22908
|
function readUpstreamBranchWith(run, repoPath, timeoutMs) {
|
|
22593
22909
|
return mapMaybePromise(run(["rev-parse", "--abbrev-ref", "--symbolic-full-name", "@{upstream}"], repoPath, timeoutMs), (result) => readTrimmedValue(result));
|
|
@@ -22783,7 +23099,7 @@ var DEFAULT_GITHUB_MAX_ITEMS_PER_REPO = 500;
|
|
|
22783
23099
|
var MAX_GITHUB_MAX_ITEMS_PER_REPO = 1e4;
|
|
22784
23100
|
var VALID_GITHUB_RESOURCE_TYPES = new Set(DEFAULT_GITHUB_RESOURCE_TYPES);
|
|
22785
23101
|
function getAgentsDir2() {
|
|
22786
|
-
return
|
|
23102
|
+
return resolveDefaultBasePath();
|
|
22787
23103
|
}
|
|
22788
23104
|
function getSourcesConfigPath(agentsDir = getAgentsDir2()) {
|
|
22789
23105
|
return `${agentsDir.replace(/\/$/, "")}/sources.json`;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"146-source-transcript-import.d.ts","sourceRoot":"","sources":["../../src/migrations/146-source-transcript-import.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,sEAAsE;AACtE,wBAAgB,EAAE,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI,CA+DxC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { MigrationDb } from "./contract";
|
|
2
|
+
/**
|
|
3
|
+
* Migration 147: one configured Source may own multiple auditable replay file
|
|
4
|
+
* slots. Migration 146 already creates that schema. Keep this migration
|
|
5
|
+
* additive: rebuilding the parent table here would cascade-delete existing
|
|
6
|
+
* source_import_records while foreign keys are enabled.
|
|
7
|
+
*/
|
|
8
|
+
export declare function up(db: MigrationDb): void;
|
|
9
|
+
//# sourceMappingURL=147-source-import-replay-file-slots.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"147-source-import-replay-file-slots.d.ts","sourceRoot":"","sources":["../../src/migrations/147-source-import-replay-file-slots.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C;;;;;GAKG;AACH,wBAAgB,EAAE,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI,CAExC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"148-source-import-attempt-provenance.d.ts","sourceRoot":"","sources":["../../src/migrations/148-source-import-attempt-provenance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,sFAAsF;AACtF,wBAAgB,EAAE,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI,CAKxC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"149-transcript-import-state-machine.d.ts","sourceRoot":"","sources":["../../src/migrations/149-transcript-import-state-machine.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,gFAAgF;AAChF,wBAAgB,EAAE,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI,CAYxC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"150-memory-head-freshness.d.ts","sourceRoot":"","sources":["../../src/migrations/150-memory-head-freshness.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAO9C,0EAA0E;AAC1E,wBAAgB,EAAE,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI,CAoKxC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/migrations/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/migrations/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAyJzD,YAAY,EAAE,SAAS,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE7E,oEAAoE;AACpE,eAAO,MAAM,UAAU,EAAE,SAAS,SAAS,EA0rC1C,CAAC;AAqOF;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,WAAW,GAAG,OAAO,CAiB7D;AAED,6CAA6C;AAC7C,eAAO,MAAM,qBAAqB,QAAkD,CAAC;AAsBrF;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI,CAiDnD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sources-config.d.ts","sourceRoot":"","sources":["../src/sources-config.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"sources-config.d.ts","sourceRoot":"","sources":["../src/sources-config.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,8 @@ export declare const SIGNET_SOURCE_CHECKOUT_DIRNAME = "signetai";
|
|
|
2
2
|
export declare const SIGNET_SOURCE_REMOTE_URL = "https://github.com/Signet-AI/signetai.git";
|
|
3
3
|
export type WorkspaceSourceRepoStatus = "cloned" | "pulled" | "fetched" | "current" | "skipped" | "error";
|
|
4
4
|
export interface WorkspaceSourceRepoSyncOptions {
|
|
5
|
+
/** Only explicit source builds may create a checkout; routine sync updates existing repositories. */
|
|
6
|
+
readonly cloneIfMissing?: boolean;
|
|
5
7
|
readonly gitTimeoutMs?: number;
|
|
6
8
|
readonly remoteUrl?: string;
|
|
7
9
|
readonly repoDirName?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-source-repo.d.ts","sourceRoot":"","sources":["../src/workspace-source-repo.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,8BAA8B,aAAa,CAAC;AACzD,eAAO,MAAM,wBAAwB,8CAA8C,CAAC;AAOpF,MAAM,MAAM,yBAAyB,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC;AAE1G,MAAM,WAAW,8BAA8B;IAC9C,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,6BAA6B;IAC7C,QAAQ,CAAC,MAAM,EAAE,yBAAyB,CAAC;IAC3C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;CACtC;AAuCD,wBAAgB,8BAA8B,CAC7C,YAAY,EAAE,MAAM,EACpB,WAAW,SAAiC,GAC1C,MAAM,CAER;AAED,wBAAgB,uBAAuB,CACtC,YAAY,EAAE,MAAM,EACpB,OAAO,GAAE,8BAAmC,GAC1C,6BAA6B,
|
|
1
|
+
{"version":3,"file":"workspace-source-repo.d.ts","sourceRoot":"","sources":["../src/workspace-source-repo.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,8BAA8B,aAAa,CAAC;AACzD,eAAO,MAAM,wBAAwB,8CAA8C,CAAC;AAOpF,MAAM,MAAM,yBAAyB,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC;AAE1G,MAAM,WAAW,8BAA8B;IAC9C,qGAAqG;IACrG,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC;IAClC,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,6BAA6B;IAC7C,QAAQ,CAAC,MAAM,EAAE,yBAAyB,CAAC;IAC3C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;CACtC;AAuCD,wBAAgB,8BAA8B,CAC7C,YAAY,EAAE,MAAM,EACpB,WAAW,SAAiC,GAC1C,MAAM,CAER;AAED,wBAAgB,uBAAuB,CACtC,YAAY,EAAE,MAAM,EACpB,OAAO,GAAE,8BAAmC,GAC1C,6BAA6B,CA0B/B;AAED,wBAAsB,4BAA4B,CACjD,YAAY,EAAE,MAAM,EACpB,OAAO,GAAE,8BAAmC,GAC1C,OAAO,CAAC,6BAA6B,CAAC,CA0BxC"}
|