@ariso-ai/ivan 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +412 -0
- package/dist/agent.d.ts +11 -0
- package/dist/agent.d.ts.map +1 -0
- package/dist/agent.js +48 -0
- package/dist/agent.js.map +1 -0
- package/dist/config/config.d.ts +20 -0
- package/dist/config/config.d.ts.map +1 -0
- package/dist/config/config.js +187 -0
- package/dist/config/config.js.map +1 -0
- package/dist/config.d.ts +46 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +414 -0
- package/dist/config.js.map +1 -0
- package/dist/database/database.d.ts +12 -0
- package/dist/database/database.d.ts.map +1 -0
- package/dist/database/database.js +45 -0
- package/dist/database/database.js.map +1 -0
- package/dist/database/migration.d.ts +11 -0
- package/dist/database/migration.d.ts.map +1 -0
- package/dist/database/migration.js +64 -0
- package/dist/database/migration.js.map +1 -0
- package/dist/database/migrations/001_create_jobs_table.d.ts +3 -0
- package/dist/database/migrations/001_create_jobs_table.d.ts.map +1 -0
- package/dist/database/migrations/001_create_jobs_table.js +14 -0
- package/dist/database/migrations/001_create_jobs_table.js.map +1 -0
- package/dist/database/migrations/001_initial_schema.d.ts +3 -0
- package/dist/database/migrations/001_initial_schema.d.ts.map +1 -0
- package/dist/database/migrations/001_initial_schema.js +66 -0
- package/dist/database/migrations/001_initial_schema.js.map +1 -0
- package/dist/database/migrations/002_create_tasks_table.d.ts +3 -0
- package/dist/database/migrations/002_create_tasks_table.d.ts.map +1 -0
- package/dist/database/migrations/002_create_tasks_table.js +16 -0
- package/dist/database/migrations/002_create_tasks_table.js.map +1 -0
- package/dist/database/migrations/003_add_log_to_tasks.d.ts +3 -0
- package/dist/database/migrations/003_add_log_to_tasks.d.ts.map +1 -0
- package/dist/database/migrations/003_add_log_to_tasks.js +11 -0
- package/dist/database/migrations/003_add_log_to_tasks.js.map +1 -0
- package/dist/database/migrations/004_add_branch_to_tasks.d.ts +3 -0
- package/dist/database/migrations/004_add_branch_to_tasks.d.ts.map +1 -0
- package/dist/database/migrations/004_add_branch_to_tasks.js +11 -0
- package/dist/database/migrations/004_add_branch_to_tasks.js.map +1 -0
- package/dist/database/migrations/005_add_type_to_tasks.d.ts +3 -0
- package/dist/database/migrations/005_add_type_to_tasks.d.ts.map +1 -0
- package/dist/database/migrations/005_add_type_to_tasks.js +11 -0
- package/dist/database/migrations/005_add_type_to_tasks.js.map +1 -0
- package/dist/database/migrations/006_add_comment_url_and_commit_to_tasks.d.ts +3 -0
- package/dist/database/migrations/006_add_comment_url_and_commit_to_tasks.d.ts.map +1 -0
- package/dist/database/migrations/006_add_comment_url_and_commit_to_tasks.js +15 -0
- package/dist/database/migrations/006_add_comment_url_and_commit_to_tasks.js.map +1 -0
- package/dist/database/migrations/006_add_comment_url_to_tasks.d.ts +3 -0
- package/dist/database/migrations/006_add_comment_url_to_tasks.d.ts.map +1 -0
- package/dist/database/migrations/006_add_comment_url_to_tasks.js +14 -0
- package/dist/database/migrations/006_add_comment_url_to_tasks.js.map +1 -0
- package/dist/database/migrations/007_add_commit_to_tasks.d.ts +3 -0
- package/dist/database/migrations/007_add_commit_to_tasks.d.ts.map +1 -0
- package/dist/database/migrations/007_add_commit_to_tasks.js +13 -0
- package/dist/database/migrations/007_add_commit_to_tasks.js.map +1 -0
- package/dist/database/migrations/008_add_lint_and_test_task_type.d.ts +3 -0
- package/dist/database/migrations/008_add_lint_and_test_task_type.d.ts.map +1 -0
- package/dist/database/migrations/008_add_lint_and_test_task_type.js +42 -0
- package/dist/database/migrations/008_add_lint_and_test_task_type.js.map +1 -0
- package/dist/database/migrations/index.d.ts +3 -0
- package/dist/database/migrations/index.d.ts.map +1 -0
- package/dist/database/migrations/index.js +19 -0
- package/dist/database/migrations/index.js.map +1 -0
- package/dist/database/types.d.ts +34 -0
- package/dist/database/types.d.ts.map +1 -0
- package/dist/database/types.js +2 -0
- package/dist/database/types.js.map +1 -0
- package/dist/database.d.ts +13 -0
- package/dist/database.d.ts.map +1 -0
- package/dist/database.js +32 -0
- package/dist/database.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +285 -0
- package/dist/index.js.map +1 -0
- package/dist/scripts/task-executor.d.ts +3 -0
- package/dist/scripts/task-executor.d.ts.map +1 -0
- package/dist/scripts/task-executor.js +139 -0
- package/dist/scripts/task-executor.js.map +1 -0
- package/dist/scripts/task-planner.d.ts +3 -0
- package/dist/scripts/task-planner.d.ts.map +1 -0
- package/dist/scripts/task-planner.js +81 -0
- package/dist/scripts/task-planner.js.map +1 -0
- package/dist/services/address-executor.d.ts +13 -0
- package/dist/services/address-executor.d.ts.map +1 -0
- package/dist/services/address-executor.js +202 -0
- package/dist/services/address-executor.js.map +1 -0
- package/dist/services/address-task-executor.d.ts +19 -0
- package/dist/services/address-task-executor.d.ts.map +1 -0
- package/dist/services/address-task-executor.js +736 -0
- package/dist/services/address-task-executor.js.map +1 -0
- package/dist/services/claude-cli-executor.d.ts +14 -0
- package/dist/services/claude-cli-executor.d.ts.map +1 -0
- package/dist/services/claude-cli-executor.js +241 -0
- package/dist/services/claude-cli-executor.js.map +1 -0
- package/dist/services/claude-executor.d.ts +14 -0
- package/dist/services/claude-executor.d.ts.map +1 -0
- package/dist/services/claude-executor.js +274 -0
- package/dist/services/claude-executor.js.map +1 -0
- package/dist/services/claude-planner.d.ts +15 -0
- package/dist/services/claude-planner.d.ts.map +1 -0
- package/dist/services/claude-planner.js +107 -0
- package/dist/services/claude-planner.js.map +1 -0
- package/dist/services/docker-orchestrator.d.ts +11 -0
- package/dist/services/docker-orchestrator.d.ts.map +1 -0
- package/dist/services/docker-orchestrator.js +85 -0
- package/dist/services/docker-orchestrator.js.map +1 -0
- package/dist/services/executor-factory.d.ts +14 -0
- package/dist/services/executor-factory.d.ts.map +1 -0
- package/dist/services/executor-factory.js +14 -0
- package/dist/services/executor-factory.js.map +1 -0
- package/dist/services/git-manager.d.ts +36 -0
- package/dist/services/git-manager.d.ts.map +1 -0
- package/dist/services/git-manager.js +728 -0
- package/dist/services/git-manager.js.map +1 -0
- package/dist/services/index.d.ts +9 -0
- package/dist/services/index.d.ts.map +1 -0
- package/dist/services/index.js +9 -0
- package/dist/services/index.js.map +1 -0
- package/dist/services/job-manager.d.ts +30 -0
- package/dist/services/job-manager.d.ts.map +1 -0
- package/dist/services/job-manager.js +337 -0
- package/dist/services/job-manager.js.map +1 -0
- package/dist/services/openai-service.d.ts +14 -0
- package/dist/services/openai-service.d.ts.map +1 -0
- package/dist/services/openai-service.js +186 -0
- package/dist/services/openai-service.js.map +1 -0
- package/dist/services/pr-service.d.ts +31 -0
- package/dist/services/pr-service.d.ts.map +1 -0
- package/dist/services/pr-service.js +291 -0
- package/dist/services/pr-service.js.map +1 -0
- package/dist/services/repository-manager.d.ts +12 -0
- package/dist/services/repository-manager.d.ts.map +1 -0
- package/dist/services/repository-manager.js +101 -0
- package/dist/services/repository-manager.js.map +1 -0
- package/dist/services/task-executor.d.ts +20 -0
- package/dist/services/task-executor.d.ts.map +1 -0
- package/dist/services/task-executor.js +717 -0
- package/dist/services/task-executor.js.map +1 -0
- package/dist/types/non-interactive-config.d.ts +28 -0
- package/dist/types/non-interactive-config.d.ts.map +1 -0
- package/dist/types/non-interactive-config.js +2 -0
- package/dist/types/non-interactive-config.js.map +1 -0
- package/dist/web-server.d.ts +16 -0
- package/dist/web-server.d.ts.map +1 -0
- package/dist/web-server.js +488 -0
- package/dist/web-server.js.map +1 -0
- package/package.json +71 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"001_create_jobs_table.d.ts","sourceRoot":"","sources":["../../../src/database/migrations/001_create_jobs_table.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,eAAO,MAAM,SAAS,EAAE,SAYvB,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export const migration = {
|
|
2
|
+
id: 1,
|
|
3
|
+
name: 'create_jobs_table',
|
|
4
|
+
up: `
|
|
5
|
+
CREATE TABLE IF NOT EXISTS jobs (
|
|
6
|
+
uuid TEXT PRIMARY KEY,
|
|
7
|
+
description TEXT NOT NULL,
|
|
8
|
+
created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
|
|
9
|
+
directory TEXT NOT NULL
|
|
10
|
+
)
|
|
11
|
+
`,
|
|
12
|
+
down: `DROP TABLE IF EXISTS jobs`
|
|
13
|
+
};
|
|
14
|
+
//# sourceMappingURL=001_create_jobs_table.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"001_create_jobs_table.js","sourceRoot":"","sources":["../../../src/database/migrations/001_create_jobs_table.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,SAAS,GAAc;IAClC,EAAE,EAAE,CAAC;IACL,IAAI,EAAE,mBAAmB;IACzB,EAAE,EAAE;;;;;;;GAOH;IACD,IAAI,EAAE,2BAA2B;CAClC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"001_initial_schema.d.ts","sourceRoot":"","sources":["../../../src/database/migrations/001_initial_schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,eAAO,MAAM,aAAa,EAAE,SAuE3B,CAAC"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
export const initialSchema = {
|
|
2
|
+
id: '001_initial_schema',
|
|
3
|
+
name: 'Create initial schema with jobs, tasks, agents, and executions',
|
|
4
|
+
async up(db) {
|
|
5
|
+
await db.schema
|
|
6
|
+
.createTable('jobs')
|
|
7
|
+
.addColumn('id', 'integer', (col) => col.primaryKey().autoIncrement())
|
|
8
|
+
.addColumn('title', 'text', (col) => col.notNull())
|
|
9
|
+
.addColumn('description', 'text')
|
|
10
|
+
.addColumn('status', 'text', (col) => col.notNull().defaultTo('pending'))
|
|
11
|
+
.addColumn('repository', 'text', (col) => col.notNull())
|
|
12
|
+
.addColumn('created_at', 'text', (col) => col.notNull().defaultTo('CURRENT_TIMESTAMP'))
|
|
13
|
+
.addColumn('updated_at', 'text', (col) => col.notNull().defaultTo('CURRENT_TIMESTAMP'))
|
|
14
|
+
.addColumn('completed_at', 'text')
|
|
15
|
+
.execute();
|
|
16
|
+
await db.schema
|
|
17
|
+
.createTable('tasks')
|
|
18
|
+
.addColumn('id', 'integer', (col) => col.primaryKey().autoIncrement())
|
|
19
|
+
.addColumn('job_id', 'integer', (col) => col.notNull().references('jobs.id').onDelete('cascade'))
|
|
20
|
+
.addColumn('title', 'text', (col) => col.notNull())
|
|
21
|
+
.addColumn('description', 'text')
|
|
22
|
+
.addColumn('status', 'text', (col) => col.notNull().defaultTo('pending'))
|
|
23
|
+
.addColumn('order_index', 'integer', (col) => col.notNull().defaultTo(0))
|
|
24
|
+
.addColumn('created_at', 'text', (col) => col.notNull().defaultTo('CURRENT_TIMESTAMP'))
|
|
25
|
+
.addColumn('updated_at', 'text', (col) => col.notNull().defaultTo('CURRENT_TIMESTAMP'))
|
|
26
|
+
.addColumn('completed_at', 'text')
|
|
27
|
+
.execute();
|
|
28
|
+
await db.schema
|
|
29
|
+
.createTable('agents')
|
|
30
|
+
.addColumn('id', 'integer', (col) => col.primaryKey().autoIncrement())
|
|
31
|
+
.addColumn('name', 'text', (col) => col.notNull())
|
|
32
|
+
.addColumn('type', 'text', (col) => col.notNull())
|
|
33
|
+
.addColumn('config', 'text')
|
|
34
|
+
.addColumn('created_at', 'text', (col) => col.notNull().defaultTo('CURRENT_TIMESTAMP'))
|
|
35
|
+
.execute();
|
|
36
|
+
await db.schema
|
|
37
|
+
.createTable('executions')
|
|
38
|
+
.addColumn('id', 'integer', (col) => col.primaryKey().autoIncrement())
|
|
39
|
+
.addColumn('task_id', 'integer', (col) => col.notNull().references('tasks.id').onDelete('cascade'))
|
|
40
|
+
.addColumn('agent_id', 'integer', (col) => col.notNull().references('agents.id'))
|
|
41
|
+
.addColumn('input', 'text', (col) => col.notNull())
|
|
42
|
+
.addColumn('output', 'text')
|
|
43
|
+
.addColumn('status', 'text', (col) => col.notNull().defaultTo('running'))
|
|
44
|
+
.addColumn('started_at', 'text', (col) => col.notNull().defaultTo('CURRENT_TIMESTAMP'))
|
|
45
|
+
.addColumn('completed_at', 'text')
|
|
46
|
+
.addColumn('error_message', 'text')
|
|
47
|
+
.execute();
|
|
48
|
+
await db.schema
|
|
49
|
+
.createIndex('idx_tasks_job_id')
|
|
50
|
+
.on('tasks')
|
|
51
|
+
.column('job_id')
|
|
52
|
+
.execute();
|
|
53
|
+
await db.schema
|
|
54
|
+
.createIndex('idx_executions_task_id')
|
|
55
|
+
.on('executions')
|
|
56
|
+
.column('task_id')
|
|
57
|
+
.execute();
|
|
58
|
+
},
|
|
59
|
+
async down(db) {
|
|
60
|
+
await db.schema.dropTable('executions').execute();
|
|
61
|
+
await db.schema.dropTable('tasks').execute();
|
|
62
|
+
await db.schema.dropTable('agents').execute();
|
|
63
|
+
await db.schema.dropTable('jobs').execute();
|
|
64
|
+
}
|
|
65
|
+
};
|
|
66
|
+
//# sourceMappingURL=001_initial_schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"001_initial_schema.js","sourceRoot":"","sources":["../../../src/database/migrations/001_initial_schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"002_create_tasks_table.d.ts","sourceRoot":"","sources":["../../../src/database/migrations/002_create_tasks_table.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,eAAO,MAAM,SAAS,EAAE,SAcvB,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export const migration = {
|
|
2
|
+
id: 2,
|
|
3
|
+
name: 'create_tasks_table',
|
|
4
|
+
up: `
|
|
5
|
+
CREATE TABLE IF NOT EXISTS tasks (
|
|
6
|
+
uuid TEXT PRIMARY KEY,
|
|
7
|
+
job_uuid TEXT NOT NULL,
|
|
8
|
+
description TEXT NOT NULL,
|
|
9
|
+
status TEXT CHECK(status IN ('active', 'not_started', 'completed')) DEFAULT 'not_started',
|
|
10
|
+
pr_link TEXT,
|
|
11
|
+
FOREIGN KEY (job_uuid) REFERENCES jobs (uuid) ON DELETE CASCADE
|
|
12
|
+
)
|
|
13
|
+
`,
|
|
14
|
+
down: `DROP TABLE IF EXISTS tasks`
|
|
15
|
+
};
|
|
16
|
+
//# sourceMappingURL=002_create_tasks_table.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"002_create_tasks_table.js","sourceRoot":"","sources":["../../../src/database/migrations/002_create_tasks_table.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,SAAS,GAAc;IAClC,EAAE,EAAE,CAAC;IACL,IAAI,EAAE,oBAAoB;IAC1B,EAAE,EAAE;;;;;;;;;GASH;IACD,IAAI,EAAE,4BAA4B;CACnC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"003_add_log_to_tasks.d.ts","sourceRoot":"","sources":["../../../src/database/migrations/003_add_log_to_tasks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,eAAO,MAAM,SAAS,EAAE,SASvB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"003_add_log_to_tasks.js","sourceRoot":"","sources":["../../../src/database/migrations/003_add_log_to_tasks.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,SAAS,GAAc;IAClC,EAAE,EAAE,CAAC;IACL,IAAI,EAAE,kBAAkB;IACxB,EAAE,EAAE;;GAEH;IACD,IAAI,EAAE;;GAEL;CACF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"004_add_branch_to_tasks.d.ts","sourceRoot":"","sources":["../../../src/database/migrations/004_add_branch_to_tasks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,eAAO,MAAM,SAAS,EAAE,SASvB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"004_add_branch_to_tasks.js","sourceRoot":"","sources":["../../../src/database/migrations/004_add_branch_to_tasks.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,SAAS,GAAc;IAClC,EAAE,EAAE,CAAC;IACL,IAAI,EAAE,qBAAqB;IAC3B,EAAE,EAAE;;GAEH;IACD,IAAI,EAAE;;GAEL;CACF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"005_add_type_to_tasks.d.ts","sourceRoot":"","sources":["../../../src/database/migrations/005_add_type_to_tasks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,eAAO,MAAM,SAAS,EAAE,SASvB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"005_add_type_to_tasks.js","sourceRoot":"","sources":["../../../src/database/migrations/005_add_type_to_tasks.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,SAAS,GAAc;IAClC,EAAE,EAAE,CAAC;IACL,IAAI,EAAE,mBAAmB;IACzB,EAAE,EAAE;;GAEH;IACD,IAAI,EAAE;;GAEL;CACF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"006_add_comment_url_and_commit_to_tasks.d.ts","sourceRoot":"","sources":["../../../src/database/migrations/006_add_comment_url_and_commit_to_tasks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,eAAO,MAAM,SAAS,EAAE,SAavB,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export const migration = {
|
|
2
|
+
id: 6,
|
|
3
|
+
name: 'add_comment_url_and_commit_to_tasks',
|
|
4
|
+
up: `
|
|
5
|
+
ALTER TABLE tasks
|
|
6
|
+
ADD COLUMN comment_url TEXT,
|
|
7
|
+
ADD COLUMN commit TEXT
|
|
8
|
+
`,
|
|
9
|
+
down: `
|
|
10
|
+
ALTER TABLE tasks
|
|
11
|
+
DROP COLUMN comment_url,
|
|
12
|
+
DROP COLUMN commit
|
|
13
|
+
`
|
|
14
|
+
};
|
|
15
|
+
//# sourceMappingURL=006_add_comment_url_and_commit_to_tasks.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"006_add_comment_url_and_commit_to_tasks.js","sourceRoot":"","sources":["../../../src/database/migrations/006_add_comment_url_and_commit_to_tasks.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,SAAS,GAAc;IAClC,EAAE,EAAE,CAAC;IACL,IAAI,EAAE,qCAAqC;IAC3C,EAAE,EAAE;;;;GAIH;IACD,IAAI,EAAE;;;;GAIL;CACF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"006_add_comment_url_to_tasks.d.ts","sourceRoot":"","sources":["../../../src/database/migrations/006_add_comment_url_to_tasks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,eAAO,MAAM,SAAS,EAAE,SAYvB,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export const migration = {
|
|
2
|
+
id: 6,
|
|
3
|
+
name: 'add_comment_url_to_tasks',
|
|
4
|
+
up: `
|
|
5
|
+
-- Column might already exist from a previous run
|
|
6
|
+
SELECT 'Column comment_url might already exist';
|
|
7
|
+
`,
|
|
8
|
+
down: `
|
|
9
|
+
-- SQLite doesn't support DROP COLUMN directly
|
|
10
|
+
-- Would need to recreate the table without this column
|
|
11
|
+
SELECT 'DROP COLUMN not supported in SQLite';
|
|
12
|
+
`
|
|
13
|
+
};
|
|
14
|
+
//# sourceMappingURL=006_add_comment_url_to_tasks.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"006_add_comment_url_to_tasks.js","sourceRoot":"","sources":["../../../src/database/migrations/006_add_comment_url_to_tasks.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,SAAS,GAAc;IAClC,EAAE,EAAE,CAAC;IACL,IAAI,EAAE,0BAA0B;IAChC,EAAE,EAAE;;;GAGH;IACD,IAAI,EAAE;;;;GAIL;CACF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"007_add_commit_to_tasks.d.ts","sourceRoot":"","sources":["../../../src/database/migrations/007_add_commit_to_tasks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,eAAO,MAAM,SAAS,EAAE,SAWvB,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export const migration = {
|
|
2
|
+
id: 7,
|
|
3
|
+
name: 'add_commit_sha_to_tasks',
|
|
4
|
+
up: `
|
|
5
|
+
ALTER TABLE tasks ADD COLUMN commit_sha TEXT
|
|
6
|
+
`,
|
|
7
|
+
down: `
|
|
8
|
+
-- SQLite doesn't support DROP COLUMN directly
|
|
9
|
+
-- Would need to recreate the table without this column
|
|
10
|
+
SELECT 'DROP COLUMN not supported in SQLite';
|
|
11
|
+
`
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=007_add_commit_to_tasks.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"007_add_commit_to_tasks.js","sourceRoot":"","sources":["../../../src/database/migrations/007_add_commit_to_tasks.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,SAAS,GAAc;IAClC,EAAE,EAAE,CAAC;IACL,IAAI,EAAE,yBAAyB;IAC/B,EAAE,EAAE;;GAEH;IACD,IAAI,EAAE;;;;GAIL;CACF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"008_add_lint_and_test_task_type.d.ts","sourceRoot":"","sources":["../../../src/database/migrations/008_add_lint_and_test_task_type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,eAAO,MAAM,YAAY,EAAE,SAwC1B,CAAC"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
export const migration008 = {
|
|
2
|
+
id: 8,
|
|
3
|
+
name: 'add_lint_and_test_task_type',
|
|
4
|
+
up: [
|
|
5
|
+
`CREATE TABLE tasks_new (
|
|
6
|
+
uuid TEXT PRIMARY KEY,
|
|
7
|
+
job_uuid TEXT NOT NULL,
|
|
8
|
+
description TEXT NOT NULL,
|
|
9
|
+
status TEXT NOT NULL CHECK(status IN ('active', 'not_started', 'completed')),
|
|
10
|
+
pr_link TEXT,
|
|
11
|
+
execution_log TEXT,
|
|
12
|
+
branch TEXT,
|
|
13
|
+
type TEXT NOT NULL CHECK(type IN ('build', 'address', 'lint_and_test')),
|
|
14
|
+
comment_url TEXT,
|
|
15
|
+
commit_sha TEXT,
|
|
16
|
+
FOREIGN KEY (job_uuid) REFERENCES jobs(uuid)
|
|
17
|
+
)`,
|
|
18
|
+
`INSERT INTO tasks_new (uuid, job_uuid, description, status, pr_link, execution_log, branch, type, comment_url, commit_sha)
|
|
19
|
+
SELECT uuid, job_uuid, description, status, pr_link, execution_log, branch, type, NULL as comment_url, commit_sha FROM tasks`,
|
|
20
|
+
`DROP TABLE tasks`,
|
|
21
|
+
`ALTER TABLE tasks_new RENAME TO tasks`
|
|
22
|
+
],
|
|
23
|
+
down: [
|
|
24
|
+
`CREATE TABLE tasks_new (
|
|
25
|
+
uuid TEXT PRIMARY KEY,
|
|
26
|
+
job_uuid TEXT NOT NULL,
|
|
27
|
+
description TEXT NOT NULL,
|
|
28
|
+
status TEXT NOT NULL CHECK(status IN ('active', 'not_started', 'completed')),
|
|
29
|
+
pr_link TEXT,
|
|
30
|
+
execution_log TEXT,
|
|
31
|
+
branch TEXT,
|
|
32
|
+
type TEXT NOT NULL CHECK(type IN ('build', 'address')),
|
|
33
|
+
comment_url TEXT,
|
|
34
|
+
commit_sha TEXT,
|
|
35
|
+
FOREIGN KEY (job_uuid) REFERENCES jobs(uuid)
|
|
36
|
+
)`,
|
|
37
|
+
`INSERT INTO tasks_new SELECT * FROM tasks WHERE type != 'lint_and_test'`,
|
|
38
|
+
`DROP TABLE tasks`,
|
|
39
|
+
`ALTER TABLE tasks_new RENAME TO tasks`
|
|
40
|
+
]
|
|
41
|
+
};
|
|
42
|
+
//# sourceMappingURL=008_add_lint_and_test_task_type.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"008_add_lint_and_test_task_type.js","sourceRoot":"","sources":["../../../src/database/migrations/008_add_lint_and_test_task_type.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,YAAY,GAAc;IACrC,EAAE,EAAE,CAAC;IACL,IAAI,EAAE,6BAA6B;IACnC,EAAE,EAAE;QACF;;;;;;;;;;;;MAYE;QACF;kIAC8H;QAC9H,kBAAkB;QAClB,uCAAuC;KACxC;IACD,IAAI,EAAE;QACJ;;;;;;;;;;;;MAYE;QACF,yEAAyE;QACzE,kBAAkB;QAClB,uCAAuC;KACxC;CACF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/database/migrations/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAUxC,eAAO,MAAM,UAAU,EAAE,SAAS,EASjC,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { migration as createJobsTable } from './001_create_jobs_table.js';
|
|
2
|
+
import { migration as createTasksTable } from './002_create_tasks_table.js';
|
|
3
|
+
import { migration as addLogToTasks } from './003_add_log_to_tasks.js';
|
|
4
|
+
import { migration as addBranchToTasks } from './004_add_branch_to_tasks.js';
|
|
5
|
+
import { migration as addTypeToTasks } from './005_add_type_to_tasks.js';
|
|
6
|
+
import { migration as addCommentUrlToTasks } from './006_add_comment_url_to_tasks.js';
|
|
7
|
+
import { migration as addCommitToTasks } from './007_add_commit_to_tasks.js';
|
|
8
|
+
import { migration008 as addLintAndTestTaskType } from './008_add_lint_and_test_task_type.js';
|
|
9
|
+
export const migrations = [
|
|
10
|
+
createJobsTable,
|
|
11
|
+
createTasksTable,
|
|
12
|
+
addLogToTasks,
|
|
13
|
+
addBranchToTasks,
|
|
14
|
+
addTypeToTasks,
|
|
15
|
+
addCommentUrlToTasks,
|
|
16
|
+
addCommitToTasks,
|
|
17
|
+
addLintAndTestTaskType
|
|
18
|
+
];
|
|
19
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/database/migrations/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,IAAI,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC1E,OAAO,EAAE,SAAS,IAAI,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC5E,OAAO,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,2BAA2B,CAAC;AACvE,OAAO,EAAE,SAAS,IAAI,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAC7E,OAAO,EAAE,SAAS,IAAI,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACzE,OAAO,EAAE,SAAS,IAAI,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACtF,OAAO,EAAE,SAAS,IAAI,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAC7E,OAAO,EAAE,YAAY,IAAI,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAE9F,MAAM,CAAC,MAAM,UAAU,GAAgB;IACrC,eAAe;IACf,gBAAgB;IAChB,aAAa;IACb,gBAAgB;IAChB,cAAc;IACd,oBAAoB;IACpB,gBAAgB;IAChB,sBAAsB;CACvB,CAAC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
export interface Job {
|
|
2
|
+
uuid: string;
|
|
3
|
+
description: string;
|
|
4
|
+
created_at: string;
|
|
5
|
+
directory: string;
|
|
6
|
+
}
|
|
7
|
+
export interface Task {
|
|
8
|
+
uuid: string;
|
|
9
|
+
job_uuid: string;
|
|
10
|
+
description: string;
|
|
11
|
+
status: 'active' | 'not_started' | 'completed';
|
|
12
|
+
pr_link: string | null;
|
|
13
|
+
execution_log: string | null;
|
|
14
|
+
branch: string | null;
|
|
15
|
+
type: 'build' | 'address' | 'lint_and_test';
|
|
16
|
+
comment_url: string | null;
|
|
17
|
+
commit_sha: string | null;
|
|
18
|
+
}
|
|
19
|
+
export interface Migration {
|
|
20
|
+
id: number;
|
|
21
|
+
name: string;
|
|
22
|
+
up: string | string[];
|
|
23
|
+
down: string | string[];
|
|
24
|
+
}
|
|
25
|
+
export interface Database {
|
|
26
|
+
jobs: Job;
|
|
27
|
+
tasks: Task;
|
|
28
|
+
migrations: {
|
|
29
|
+
id: number;
|
|
30
|
+
name: string;
|
|
31
|
+
executed_at: string;
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/database/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,GAAG;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,IAAI;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,QAAQ,GAAG,aAAa,GAAG,WAAW,CAAC;IAC/C,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,IAAI,EAAE,OAAO,GAAG,SAAS,GAAG,eAAe,CAAC;IAC5C,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACtB,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,GAAG,CAAC;IACV,KAAK,EAAE,IAAI,CAAC;IACZ,UAAU,EAAE;QACV,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;CACH"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/database/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { Kysely } from 'kysely';
|
|
2
|
+
import { Database as DatabaseSchema } from './database/types.js';
|
|
3
|
+
export * from './database/types.js';
|
|
4
|
+
export declare class DatabaseManager {
|
|
5
|
+
private sqlite;
|
|
6
|
+
private db;
|
|
7
|
+
private dbPath;
|
|
8
|
+
constructor();
|
|
9
|
+
runMigrations(): Promise<void>;
|
|
10
|
+
getKysely(): Kysely<DatabaseSchema>;
|
|
11
|
+
close(): void;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=database.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../src/database.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAiB,MAAM,QAAQ,CAAC;AAG/C,OAAO,EAAE,QAAQ,IAAI,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAGjE,cAAc,qBAAqB,CAAC;AAEpC,qBAAa,eAAe;IAC1B,OAAO,CAAC,MAAM,CAAoB;IAClC,OAAO,CAAC,EAAE,CAAyB;IACnC,OAAO,CAAC,MAAM,CAAS;;IAcjB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAKpC,SAAS,IAAI,MAAM,CAAC,cAAc,CAAC;IAInC,KAAK,IAAI,IAAI;CAGd"}
|
package/dist/database.js
ADDED
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import Database from 'better-sqlite3';
|
|
2
|
+
import { Kysely, SqliteDialect } from 'kysely';
|
|
3
|
+
import path from 'path';
|
|
4
|
+
import os from 'os';
|
|
5
|
+
import { MigrationManager } from './database/migration.js';
|
|
6
|
+
export * from './database/types.js';
|
|
7
|
+
export class DatabaseManager {
|
|
8
|
+
sqlite;
|
|
9
|
+
db;
|
|
10
|
+
dbPath;
|
|
11
|
+
constructor() {
|
|
12
|
+
this.dbPath = path.join(os.homedir(), '.ivan', 'db.sqlite');
|
|
13
|
+
this.sqlite = new Database(this.dbPath);
|
|
14
|
+
this.sqlite.pragma('journal_mode = WAL');
|
|
15
|
+
this.db = new Kysely({
|
|
16
|
+
dialect: new SqliteDialect({
|
|
17
|
+
database: this.sqlite,
|
|
18
|
+
}),
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
async runMigrations() {
|
|
22
|
+
const migrationManager = new MigrationManager(this.db);
|
|
23
|
+
await migrationManager.runMigrations();
|
|
24
|
+
}
|
|
25
|
+
getKysely() {
|
|
26
|
+
return this.db;
|
|
27
|
+
}
|
|
28
|
+
close() {
|
|
29
|
+
this.sqlite.close();
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=database.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"database.js","sourceRoot":"","sources":["../src/database.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAC/C,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,MAAM,IAAI,CAAC;AAEpB,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,cAAc,qBAAqB,CAAC;AAEpC,MAAM,OAAO,eAAe;IAClB,MAAM,CAAoB;IAC1B,EAAE,CAAyB;IAC3B,MAAM,CAAS;IAEvB;QACE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;QAC5D,IAAI,CAAC,MAAM,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACxC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC;QAEzC,IAAI,CAAC,EAAE,GAAG,IAAI,MAAM,CAAiB;YACnC,OAAO,EAAE,IAAI,aAAa,CAAC;gBACzB,QAAQ,EAAE,IAAI,CAAC,MAAM;aACtB,CAAC;SACH,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,aAAa;QACjB,MAAM,gBAAgB,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACvD,MAAM,gBAAgB,CAAC,aAAa,EAAE,CAAC;IACzC,CAAC;IAED,SAAS;QACP,OAAO,IAAI,CAAC,EAAE,CAAC;IACjB,CAAC;IAED,KAAK;QACH,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IACtB,CAAC;CACF"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":""}
|