@soddong/agentic-runtime 0.16.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.
Files changed (114) hide show
  1. package/.tbls.yml +103 -0
  2. package/CHANGELOG.md +229 -0
  3. package/README.md +707 -0
  4. package/dist/agent-router.d.ts +39 -0
  5. package/dist/agent-router.d.ts.map +1 -0
  6. package/dist/agent-router.js +175 -0
  7. package/dist/agent-router.js.map +1 -0
  8. package/dist/bundle-installer.d.ts +25 -0
  9. package/dist/bundle-installer.d.ts.map +1 -0
  10. package/dist/bundle-installer.js +149 -0
  11. package/dist/bundle-installer.js.map +1 -0
  12. package/dist/bundle-registry.d.ts +30 -0
  13. package/dist/bundle-registry.d.ts.map +1 -0
  14. package/dist/bundle-registry.js +102 -0
  15. package/dist/bundle-registry.js.map +1 -0
  16. package/dist/claude-code-adapter.d.ts +27 -0
  17. package/dist/claude-code-adapter.d.ts.map +1 -0
  18. package/dist/claude-code-adapter.js +177 -0
  19. package/dist/claude-code-adapter.js.map +1 -0
  20. package/dist/cli.d.ts +3 -0
  21. package/dist/cli.d.ts.map +1 -0
  22. package/dist/cli.js +1731 -0
  23. package/dist/cli.js.map +1 -0
  24. package/dist/codex-adapter.d.ts +23 -0
  25. package/dist/codex-adapter.d.ts.map +1 -0
  26. package/dist/codex-adapter.js +264 -0
  27. package/dist/codex-adapter.js.map +1 -0
  28. package/dist/database.d.ts +22 -0
  29. package/dist/database.d.ts.map +1 -0
  30. package/dist/database.js +184 -0
  31. package/dist/database.js.map +1 -0
  32. package/dist/execution-projects.d.ts +71 -0
  33. package/dist/execution-projects.d.ts.map +1 -0
  34. package/dist/execution-projects.js +333 -0
  35. package/dist/execution-projects.js.map +1 -0
  36. package/dist/execution-query.d.ts +73 -0
  37. package/dist/execution-query.d.ts.map +1 -0
  38. package/dist/execution-query.js +370 -0
  39. package/dist/execution-query.js.map +1 -0
  40. package/dist/execution.d.ts +47 -0
  41. package/dist/execution.d.ts.map +1 -0
  42. package/dist/execution.js +153 -0
  43. package/dist/execution.js.map +1 -0
  44. package/dist/hook-command.d.ts +3 -0
  45. package/dist/hook-command.d.ts.map +1 -0
  46. package/dist/hook-command.js +13 -0
  47. package/dist/hook-command.js.map +1 -0
  48. package/dist/hook-record.d.ts +16 -0
  49. package/dist/hook-record.d.ts.map +1 -0
  50. package/dist/hook-record.js +427 -0
  51. package/dist/hook-record.js.map +1 -0
  52. package/dist/index.d.ts +29 -0
  53. package/dist/index.d.ts.map +1 -0
  54. package/dist/index.js +15 -0
  55. package/dist/index.js.map +1 -0
  56. package/dist/kiro-adapter.d.ts +38 -0
  57. package/dist/kiro-adapter.d.ts.map +1 -0
  58. package/dist/kiro-adapter.js +374 -0
  59. package/dist/kiro-adapter.js.map +1 -0
  60. package/dist/module-registry.d.ts +21 -0
  61. package/dist/module-registry.d.ts.map +1 -0
  62. package/dist/module-registry.js +75 -0
  63. package/dist/module-registry.js.map +1 -0
  64. package/dist/runtime-info.d.ts +8 -0
  65. package/dist/runtime-info.d.ts.map +1 -0
  66. package/dist/runtime-info.js +15 -0
  67. package/dist/runtime-info.js.map +1 -0
  68. package/dist/seed-importer.d.ts +77 -0
  69. package/dist/seed-importer.d.ts.map +1 -0
  70. package/dist/seed-importer.js +570 -0
  71. package/dist/seed-importer.js.map +1 -0
  72. package/docs/build.md +129 -0
  73. package/docs/configuration.md +61 -0
  74. package/docs/delivery.md +90 -0
  75. package/docs/operations.md +112 -0
  76. package/docs/publishing.md +196 -0
  77. package/docs/schema/generated/README.md +31 -0
  78. package/docs/schema/generated/agentic_execution_logs.md +90 -0
  79. package/docs/schema/generated/agentic_execution_logs.svg +52 -0
  80. package/docs/schema/generated/agentic_execution_outputs.md +85 -0
  81. package/docs/schema/generated/agentic_execution_outputs.svg +52 -0
  82. package/docs/schema/generated/agentic_execution_project_activities.md +83 -0
  83. package/docs/schema/generated/agentic_execution_project_activities.svg +71 -0
  84. package/docs/schema/generated/agentic_execution_project_stages.md +69 -0
  85. package/docs/schema/generated/agentic_execution_project_stages.svg +71 -0
  86. package/docs/schema/generated/agentic_execution_projects.md +82 -0
  87. package/docs/schema/generated/agentic_execution_projects.svg +92 -0
  88. package/docs/schema/generated/agentic_execution_runs.md +111 -0
  89. package/docs/schema/generated/agentic_execution_runs.svg +92 -0
  90. package/docs/schema/generated/agentic_project_bundles.md +106 -0
  91. package/docs/schema/generated/agentic_project_bundles.svg +91 -0
  92. package/docs/schema/generated/agentic_project_modules.md +77 -0
  93. package/docs/schema/generated/agentic_project_modules.svg +49 -0
  94. package/docs/schema/generated/agentic_runtime_metadata.md +62 -0
  95. package/docs/schema/generated/agentic_runtime_metadata.svg +28 -0
  96. package/docs/schema/generated/agentic_schema_migrations.md +65 -0
  97. package/docs/schema/generated/agentic_schema_migrations.svg +32 -0
  98. package/docs/schema/generated/agentic_seed_import_items.md +85 -0
  99. package/docs/schema/generated/agentic_seed_import_items.svg +47 -0
  100. package/docs/schema/generated/agentic_seed_import_runs.md +103 -0
  101. package/docs/schema/generated/agentic_seed_import_runs.svg +68 -0
  102. package/docs/schema/generated/agentic_user_requests.md +66 -0
  103. package/docs/schema/generated/agentic_user_requests.svg +52 -0
  104. package/docs/schema/generated/schema.json +1976 -0
  105. package/docs/schema/generated/schema.mmd +167 -0
  106. package/docs/schema/generated/schema.svg +266 -0
  107. package/docs/schema/migrations.md +163 -0
  108. package/docs/usage.md +774 -0
  109. package/package.json +32 -0
  110. package/src/database/migrations/0001_runtime_base.sql +231 -0
  111. package/src/database/migrations/0002_runtime_bundles.sql +61 -0
  112. package/src/database/migrations/0003_runtime_seed_imports.sql +121 -0
  113. package/src/database/migrations/0004_runtime_seed_apply_status.sql +76 -0
  114. package/src/database/migrations/0005_runtime_execution_projects.sql +92 -0
@@ -0,0 +1,77 @@
1
+ # agentic_project_modules
2
+
3
+ ## Description
4
+
5
+ 현재 실행 프로젝트에 등록된 Agentic package 상태를 관리한다.
6
+
7
+ <details>
8
+ <summary><strong>Table Definition</strong></summary>
9
+
10
+ ```sql
11
+ CREATE TABLE agentic_project_modules (
12
+ -- Agentic package 이름
13
+ package_name VARCHAR(214) PRIMARY KEY,
14
+
15
+ -- 등록된 package version
16
+ package_version VARCHAR(64) NOT NULL,
17
+
18
+ -- runtime, domain, capability, application, support 등 패키지 계층
19
+ module_layer VARCHAR(32)
20
+ CHECK (
21
+ module_layer IS NULL OR
22
+ module_layer IN ('runtime', 'domain', 'capability', 'application', 'support')
23
+ ),
24
+
25
+ -- package manifest snapshot
26
+ manifest_json JSON NOT NULL DEFAULT '{}'
27
+ CHECK (json_valid(manifest_json)),
28
+
29
+ -- 프로젝트 내 활성화 여부. 1은 활성, 0은 비활성
30
+ is_enabled INTEGER NOT NULL DEFAULT 1
31
+ CHECK (is_enabled IN (0, 1)),
32
+
33
+ -- 프로젝트에 등록된 시각
34
+ registered_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
35
+
36
+ -- 등록 상태 최종 수정 시각
37
+ updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP
38
+ )
39
+ ```
40
+
41
+ </details>
42
+
43
+ ## Columns
44
+
45
+ | Name | Type | Default | Nullable | Children | Comment |
46
+ | --------------- | ------------ | ----------------- | -------- | ----------------------------------------------------- | ---------------------------------------------------------------- |
47
+ | package_name | VARCHAR(214) | | true | [agentic_project_bundles](agentic_project_bundles.md) | Agentic package 이름 |
48
+ | package_version | VARCHAR(64) | | false | | 등록된 package version |
49
+ | module_layer | VARCHAR(32) | | true | | runtime, domain, capability, application, support 등 패키지 계층 |
50
+ | manifest_json | JSON | '{}' | false | | package manifest snapshot |
51
+ | is_enabled | INTEGER | 1 | false | | 프로젝트 내 활성화 여부 |
52
+ | registered_at | DATETIME | CURRENT_TIMESTAMP | false | | 프로젝트에 등록된 시각 |
53
+ | updated_at | DATETIME | CURRENT_TIMESTAMP | false | | 등록 상태 최종 수정 시각 |
54
+
55
+ ## Constraints
56
+
57
+ | Name | Type | Definition |
58
+ | ------------------------------------------ | ----------- | --------------------------------------------------------------------------------------------------------------- |
59
+ | package_name | PRIMARY KEY | PRIMARY KEY (package_name) |
60
+ | sqlite_autoindex_agentic_project_modules_1 | PRIMARY KEY | PRIMARY KEY (package_name) |
61
+ | - | CHECK | CHECK ( module_layer IS NULL OR module_layer IN ('runtime', 'domain', 'capability', 'application', 'support') ) |
62
+ | - | CHECK | CHECK (json_valid(manifest_json)) |
63
+ | - | CHECK | CHECK (is_enabled IN (0, 1)) |
64
+
65
+ ## Indexes
66
+
67
+ | Name | Definition |
68
+ | ------------------------------------------ | -------------------------- |
69
+ | sqlite_autoindex_agentic_project_modules_1 | PRIMARY KEY (package_name) |
70
+
71
+ ## Relations
72
+
73
+ ![er](agentic_project_modules.svg)
74
+
75
+ ---
76
+
77
+ > Generated by [tbls](https://github.com/k1LoW/tbls)
@@ -0,0 +1,49 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
3
+ "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
4
+ <!-- Generated by graphviz version 12.1.2 (20240928.0832)
5
+ -->
6
+ <!-- Title: agentic_project_modules Pages: 1 -->
7
+ <svg width="480pt" height="397pt"
8
+ viewBox="0.00 0.00 480.26 396.80" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
9
+ <g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 392.8)">
10
+ <title>agentic_project_modules</title>
11
+ <polygon fill="white" stroke="none" points="-4,4 -4,-392.8 476.26,-392.8 476.26,4 -4,4"/>
12
+ <!-- agentic_project_modules -->
13
+ <g id="node1" class="node">
14
+ <title>agentic_project_modules</title>
15
+ <polygon fill="#efefef" stroke="none" points="46.2,-77 46.2,-123 412.65,-123 412.65,-77 46.2,-77"/>
16
+ <polygon fill="none" stroke="black" points="46.2,-77 46.2,-123 412.65,-123 412.65,-77 46.2,-77"/>
17
+ <text text-anchor="start" x="104.33" y="-100.8" font-family="Arial Bold" font-size="18.00">agentic_project_modules</text>
18
+ <text text-anchor="start" x="285.27" y="-100.8" font-family="Arial" font-size="14.00">    </text>
19
+ <text text-anchor="start" x="316.39" y="-100.8" font-family="Arial" font-size="14.00" fill="#666666">[table]</text>
20
+ <text text-anchor="start" x="53.2" y="-86.4" font-family="Arial" font-size="14.00" fill="#333333">현재 실행 프로젝트에 등록된 Agentic package 상태를 관리한다.</text>
21
+ <polygon fill="none" stroke="black" points="46.2,-46.2 46.2,-77 412.65,-77 412.65,-46.2 46.2,-46.2"/>
22
+ <text text-anchor="start" x="53.2" y="-58.4" font-family="Arial" font-size="14.00">package_name </text>
23
+ <text text-anchor="start" x="152.83" y="-58.4" font-family="Arial" font-size="14.00" fill="#666666">[VARCHAR(214)]</text>
24
+ <text text-anchor="start" x="261.74" y="-58.4" font-family="Arial" font-size="14.00"> Agentic package 이름</text>
25
+ <polygon fill="none" stroke="black" stroke-width="3" points="44.7,-44.7 44.7,-124.5 414.15,-124.5 414.15,-44.7 44.7,-44.7"/>
26
+ </g>
27
+ <!-- agentic_project_bundles -->
28
+ <g id="node2" class="node">
29
+ <title>agentic_project_bundles</title>
30
+ <polygon fill="#efefef" stroke="none" points="99.83,-310 99.83,-345.6 359.02,-345.6 359.02,-310 99.83,-310"/>
31
+ <polygon fill="none" stroke="black" points="99.83,-310 99.83,-345.6 359.02,-345.6 359.02,-310 99.83,-310"/>
32
+ <text text-anchor="start" x="106.83" y="-323.4" font-family="Arial Bold" font-size="18.00">agentic_project_bundles</text>
33
+ <text text-anchor="start" x="282.77" y="-323.4" font-family="Arial" font-size="14.00">    </text>
34
+ <text text-anchor="start" x="313.89" y="-323.4" font-family="Arial" font-size="14.00" fill="#666666">[table]</text>
35
+ <polygon fill="none" stroke="black" points="99.83,-279.2 99.83,-310 359.02,-310 359.02,-279.2 99.83,-279.2"/>
36
+ <text text-anchor="start" x="106.83" y="-291.4" font-family="Arial" font-size="14.00">bundle_id </text>
37
+ <text text-anchor="start" x="171.44" y="-291.4" font-family="Arial" font-size="14.00" fill="#666666">[INTEGER]</text>
38
+ <polygon fill="none" stroke="black" points="99.83,-248.4 99.83,-279.2 359.02,-279.2 359.02,-248.4 99.83,-248.4"/>
39
+ <text text-anchor="start" x="106.83" y="-260.6" font-family="Arial" font-size="14.00">package_name </text>
40
+ <text text-anchor="start" x="206.46" y="-260.6" font-family="Arial" font-size="14.00" fill="#666666">[VARCHAR(214)]</text>
41
+ </g>
42
+ <!-- agentic_project_bundles&#45;&gt;agentic_project_modules -->
43
+ <g id="edge1" class="edge">
44
+ <title>agentic_project_bundles:package_name&#45;&gt;agentic_project_modules:package_name</title>
45
+ <path fill="none" stroke="black" d="M230,-237.12C240.7,-147.44 398.3,-253.81 458.85,-169.2 474.76,-146.97 478.14,-65.57 458.85,-46.2 422.88,-10.07 229.43,5.78 229.43,-45.2"/>
46
+ <polygon fill="black" stroke="black" points="230,-237.08 224.95,-246.82 229.71,-242.41 229.46,-246.73 229.46,-246.73 229.46,-246.73 229.71,-242.41 233.94,-247.32 230,-237.08"/>
47
+ </g>
48
+ </g>
49
+ </svg>
@@ -0,0 +1,62 @@
1
+ # agentic_runtime_metadata
2
+
3
+ ## Description
4
+
5
+ 런타임 DB 식별과 runtime-level metadata를 관리한다.
6
+
7
+ <details>
8
+ <summary><strong>Table Definition</strong></summary>
9
+
10
+ ```sql
11
+ CREATE TABLE agentic_runtime_metadata (
12
+ -- metadata 항목 식별자
13
+ metadata_key VARCHAR(128) PRIMARY KEY,
14
+
15
+ -- metadata 값
16
+ metadata_value TEXT NOT NULL,
17
+
18
+ -- metadata 값의 논리 타입
19
+ value_type VARCHAR(16) NOT NULL DEFAULT 'string'
20
+ CHECK (value_type IN ('string', 'integer', 'boolean', 'json')),
21
+
22
+ -- metadata 항목 설명
23
+ metadata_description TEXT,
24
+
25
+ -- metadata 최종 수정 시각
26
+ updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP
27
+ )
28
+ ```
29
+
30
+ </details>
31
+
32
+ ## Columns
33
+
34
+ | Name | Type | Default | Nullable | Comment |
35
+ | -------------------- | ------------ | ----------------- | -------- | ----------------------- |
36
+ | metadata_key | VARCHAR(128) | | true | metadata 항목 식별자 |
37
+ | metadata_value | TEXT | | false | metadata 값 |
38
+ | value_type | VARCHAR(16) | 'string' | false | metadata 값의 논리 타입 |
39
+ | metadata_description | TEXT | | true | metadata 항목 설명 |
40
+ | updated_at | DATETIME | CURRENT_TIMESTAMP | false | metadata 최종 수정 시각 |
41
+
42
+ ## Constraints
43
+
44
+ | Name | Type | Definition |
45
+ | ------------------------------------------- | ----------- | -------------------------------------------------------------- |
46
+ | metadata_key | PRIMARY KEY | PRIMARY KEY (metadata_key) |
47
+ | sqlite_autoindex_agentic_runtime_metadata_1 | PRIMARY KEY | PRIMARY KEY (metadata_key) |
48
+ | - | CHECK | CHECK (value_type IN ('string', 'integer', 'boolean', 'json')) |
49
+
50
+ ## Indexes
51
+
52
+ | Name | Definition |
53
+ | ------------------------------------------- | -------------------------- |
54
+ | sqlite_autoindex_agentic_runtime_metadata_1 | PRIMARY KEY (metadata_key) |
55
+
56
+ ## Relations
57
+
58
+ ![er](agentic_runtime_metadata.svg)
59
+
60
+ ---
61
+
62
+ > Generated by [tbls](https://github.com/k1LoW/tbls)
@@ -0,0 +1,28 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
3
+ "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
4
+ <!-- Generated by graphviz version 12.1.2 (20240928.0832)
5
+ -->
6
+ <!-- Title: agentic_runtime_metadata Pages: 1 -->
7
+ <svg width="444pt" height="177pt"
8
+ viewBox="0.00 0.00 443.54 177.20" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
9
+ <g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 173.2)">
10
+ <title>agentic_runtime_metadata</title>
11
+ <polygon fill="white" stroke="none" points="-4,4 -4,-173.2 439.54,-173.2 439.54,4 -4,4"/>
12
+ <!-- agentic_runtime_metadata -->
13
+ <g id="node1" class="node">
14
+ <title>agentic_runtime_metadata</title>
15
+ <polygon fill="#efefef" stroke="none" points="46.2,-77 46.2,-123 389.34,-123 389.34,-77 46.2,-77"/>
16
+ <polygon fill="none" stroke="black" points="46.2,-77 46.2,-123 389.34,-123 389.34,-77 46.2,-77"/>
17
+ <text text-anchor="start" x="87.68" y="-100.8" font-family="Arial Bold" font-size="18.00">agentic_runtime_metadata</text>
18
+ <text text-anchor="start" x="278.6" y="-100.8" font-family="Arial" font-size="14.00">    </text>
19
+ <text text-anchor="start" x="309.72" y="-100.8" font-family="Arial" font-size="14.00" fill="#666666">[table]</text>
20
+ <text text-anchor="start" x="62.94" y="-86.4" font-family="Arial" font-size="14.00" fill="#333333">런타임 DB 식별과 runtime&#45;level metadata를 관리한다.</text>
21
+ <polygon fill="none" stroke="black" points="46.2,-46.2 46.2,-77 389.34,-77 389.34,-46.2 46.2,-46.2"/>
22
+ <text text-anchor="start" x="53.2" y="-58.4" font-family="Arial" font-size="14.00">metadata_key </text>
23
+ <text text-anchor="start" x="145.03" y="-58.4" font-family="Arial" font-size="14.00" fill="#666666">[VARCHAR(128)]</text>
24
+ <text text-anchor="start" x="253.95" y="-58.4" font-family="Arial" font-size="14.00"> metadata 항목 식별자</text>
25
+ <polygon fill="none" stroke="black" stroke-width="3" points="44.7,-44.7 44.7,-124.5 390.84,-124.5 390.84,-44.7 44.7,-44.7"/>
26
+ </g>
27
+ </g>
28
+ </svg>
@@ -0,0 +1,65 @@
1
+ # agentic_schema_migrations
2
+
3
+ ## Description
4
+
5
+ runtime 및 각 패키지의 SQLite schema migration 적용 이력을 관리한다.
6
+
7
+ <details>
8
+ <summary><strong>Table Definition</strong></summary>
9
+
10
+ ```sql
11
+ CREATE TABLE agentic_schema_migrations (
12
+ -- migration을 제공한 패키지명
13
+ package_name VARCHAR(214) NOT NULL,
14
+
15
+ -- migration 식별자
16
+ migration_id VARCHAR(128) NOT NULL,
17
+
18
+ -- migration 파일 내용 검증용 SHA-256 checksum
19
+ checksum_sha256 CHAR(64)
20
+ CHECK (checksum_sha256 IS NULL OR length(checksum_sha256) = 64),
21
+
22
+ -- migration을 적용한 runtime version
23
+ applied_by_runtime_version VARCHAR(64),
24
+
25
+ -- migration 적용 시각
26
+ applied_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
27
+
28
+ PRIMARY KEY (package_name, migration_id)
29
+ )
30
+ ```
31
+
32
+ </details>
33
+
34
+ ## Columns
35
+
36
+ | Name | Type | Default | Nullable | Comment |
37
+ | -------------------------- | ------------ | ----------------- | -------- | ------------------------------------------- |
38
+ | package_name | VARCHAR(214) | | false | migration을 제공한 패키지명 |
39
+ | migration_id | VARCHAR(128) | | false | migration 식별자 |
40
+ | checksum_sha256 | CHAR(64) | | true | migration 파일 내용 검증용 SHA-256 checksum |
41
+ | applied_by_runtime_version | VARCHAR(64) | | true | migration을 적용한 runtime version |
42
+ | applied_at | DATETIME | CURRENT_TIMESTAMP | false | migration 적용 시각 |
43
+
44
+ ## Constraints
45
+
46
+ | Name | Type | Definition |
47
+ | -------------------------------------------- | ----------- | --------------------------------------------------------------- |
48
+ | package_name | PRIMARY KEY | PRIMARY KEY (package_name) |
49
+ | migration_id | PRIMARY KEY | PRIMARY KEY (migration_id) |
50
+ | sqlite_autoindex_agentic_schema_migrations_1 | PRIMARY KEY | PRIMARY KEY (package_name, migration_id) |
51
+ | - | CHECK | CHECK (checksum_sha256 IS NULL OR length(checksum_sha256) = 64) |
52
+
53
+ ## Indexes
54
+
55
+ | Name | Definition |
56
+ | -------------------------------------------- | ---------------------------------------- |
57
+ | sqlite_autoindex_agentic_schema_migrations_1 | PRIMARY KEY (package_name, migration_id) |
58
+
59
+ ## Relations
60
+
61
+ ![er](agentic_schema_migrations.svg)
62
+
63
+ ---
64
+
65
+ > Generated by [tbls](https://github.com/k1LoW/tbls)
@@ -0,0 +1,32 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
3
+ "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
4
+ <!-- Generated by graphviz version 12.1.2 (20240928.0832)
5
+ -->
6
+ <!-- Title: agentic_schema_migrations Pages: 1 -->
7
+ <svg width="524pt" height="208pt"
8
+ viewBox="0.00 0.00 524.41 208.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
9
+ <g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 204)">
10
+ <title>agentic_schema_migrations</title>
11
+ <polygon fill="white" stroke="none" points="-4,4 -4,-204 520.41,-204 520.41,4 -4,4"/>
12
+ <!-- agentic_schema_migrations -->
13
+ <g id="node1" class="node">
14
+ <title>agentic_schema_migrations</title>
15
+ <polygon fill="#efefef" stroke="none" points="46.2,-107.8 46.2,-153.8 470.21,-153.8 470.21,-107.8 46.2,-107.8"/>
16
+ <polygon fill="none" stroke="black" points="46.2,-107.8 46.2,-153.8 470.21,-153.8 470.21,-107.8 46.2,-107.8"/>
17
+ <text text-anchor="start" x="123.11" y="-131.6" font-family="Arial Bold" font-size="18.00">agentic_schema_migrations</text>
18
+ <text text-anchor="start" x="324.05" y="-131.6" font-family="Arial" font-size="14.00">    </text>
19
+ <text text-anchor="start" x="355.16" y="-131.6" font-family="Arial" font-size="14.00" fill="#666666">[table]</text>
20
+ <text text-anchor="start" x="53.2" y="-117.2" font-family="Arial" font-size="14.00" fill="#333333">runtime 및 각 패키지의 SQLite schema migration 적용 이력을 관리한다.</text>
21
+ <polygon fill="none" stroke="black" points="46.2,-77 46.2,-107.8 470.21,-107.8 470.21,-77 46.2,-77"/>
22
+ <text text-anchor="start" x="53.2" y="-89.2" font-family="Arial" font-size="14.00">package_name </text>
23
+ <text text-anchor="start" x="152.83" y="-89.2" font-family="Arial" font-size="14.00" fill="#666666">[VARCHAR(214)]</text>
24
+ <text text-anchor="start" x="261.74" y="-89.2" font-family="Arial" font-size="14.00"> migration을 제공한 패키지명</text>
25
+ <polygon fill="none" stroke="black" points="46.2,-46.2 46.2,-77 470.21,-77 470.21,-46.2 46.2,-46.2"/>
26
+ <text text-anchor="start" x="53.2" y="-58.4" font-family="Arial" font-size="14.00">migration_id </text>
27
+ <text text-anchor="start" x="133.35" y="-58.4" font-family="Arial" font-size="14.00" fill="#666666">[VARCHAR(128)]</text>
28
+ <text text-anchor="start" x="242.27" y="-58.4" font-family="Arial" font-size="14.00"> migration 식별자</text>
29
+ <polygon fill="none" stroke="black" stroke-width="3" points="44.7,-44.7 44.7,-155.3 471.71,-155.3 471.71,-44.7 44.7,-44.7"/>
30
+ </g>
31
+ </g>
32
+ </svg>
@@ -0,0 +1,85 @@
1
+ # agentic_seed_import_items
2
+
3
+ ## Description
4
+
5
+ <details>
6
+ <summary><strong>Table Definition</strong></summary>
7
+
8
+ ```sql
9
+ CREATE TABLE "agentic_seed_import_items" (
10
+ seed_import_item_id INTEGER PRIMARY KEY AUTOINCREMENT,
11
+ seed_import_run_id INTEGER NOT NULL,
12
+ item_order INTEGER NOT NULL
13
+ CHECK (item_order >= 0),
14
+ source_section VARCHAR(64) NOT NULL,
15
+ target_package VARCHAR(214) NOT NULL,
16
+ target_domain VARCHAR(64),
17
+ target_operation VARCHAR(128) NOT NULL,
18
+ item_key VARCHAR(255),
19
+ item_count INTEGER NOT NULL DEFAULT 0
20
+ CHECK (item_count >= 0),
21
+ item_status VARCHAR(32) NOT NULL DEFAULT 'planned'
22
+ CHECK (item_status IN ('planned', 'blocked', 'warning', 'skipped', 'applied', 'failed')),
23
+ reason_code VARCHAR(128),
24
+ reason_message TEXT,
25
+ item_payload_json JSON
26
+ CHECK (item_payload_json IS NULL OR json_valid(item_payload_json)),
27
+ created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
28
+
29
+ FOREIGN KEY (seed_import_run_id)
30
+ REFERENCES agentic_seed_import_runs (seed_import_run_id)
31
+ ON DELETE CASCADE,
32
+
33
+ UNIQUE (seed_import_run_id, item_order)
34
+ )
35
+ ```
36
+
37
+ </details>
38
+
39
+ ## Columns
40
+
41
+ | Name | Type | Default | Nullable | Parents |
42
+ | ------------------- | ------------ | ----------------- | -------- | ------------------------------------------------------- |
43
+ | seed_import_item_id | INTEGER | | true | |
44
+ | seed_import_run_id | INTEGER | | false | [agentic_seed_import_runs](agentic_seed_import_runs.md) |
45
+ | item_order | INTEGER | | false | |
46
+ | source_section | VARCHAR(64) | | false | |
47
+ | target_package | VARCHAR(214) | | false | |
48
+ | target_domain | VARCHAR(64) | | true | |
49
+ | target_operation | VARCHAR(128) | | false | |
50
+ | item_key | VARCHAR(255) | | true | |
51
+ | item_count | INTEGER | 0 | false | |
52
+ | item_status | VARCHAR(32) | 'planned' | false | |
53
+ | reason_code | VARCHAR(128) | | true | |
54
+ | reason_message | TEXT | | true | |
55
+ | item_payload_json | JSON | | true | |
56
+ | created_at | DATETIME | CURRENT_TIMESTAMP | false | |
57
+
58
+ ## Constraints
59
+
60
+ | Name | Type | Definition |
61
+ | -------------------------------------------- | ----------- | ------------------------------------------------------------------------------------------------------------------------------------------ |
62
+ | seed_import_item_id | PRIMARY KEY | PRIMARY KEY (seed_import_item_id) |
63
+ | - (Foreign key ID: 0) | FOREIGN KEY | FOREIGN KEY (seed_import_run_id) REFERENCES agentic_seed_import_runs (seed_import_run_id) ON UPDATE NO ACTION ON DELETE CASCADE MATCH NONE |
64
+ | sqlite_autoindex_agentic_seed_import_items_1 | UNIQUE | UNIQUE (seed_import_run_id, item_order) |
65
+ | - | CHECK | CHECK (item_order >= 0) |
66
+ | - | CHECK | CHECK (item_count >= 0) |
67
+ | - | CHECK | CHECK (item_status IN ('planned', 'blocked', 'warning', 'skipped', 'applied', 'failed')) |
68
+ | - | CHECK | CHECK (item_payload_json IS NULL OR json_valid(item_payload_json)) |
69
+
70
+ ## Indexes
71
+
72
+ | Name | Definition |
73
+ | -------------------------------------------- | -------------------------------------------------------------------------------------------------------------- |
74
+ | idx_agentic_seed_import_items_status | CREATE INDEX idx_agentic_seed_import_items_status<br /> ON agentic_seed_import_items (item_status) |
75
+ | idx_agentic_seed_import_items_target_package | CREATE INDEX idx_agentic_seed_import_items_target_package<br /> ON agentic_seed_import_items (target_package) |
76
+ | idx_agentic_seed_import_items_run_id | CREATE INDEX idx_agentic_seed_import_items_run_id<br /> ON agentic_seed_import_items (seed_import_run_id) |
77
+ | sqlite_autoindex_agentic_seed_import_items_1 | UNIQUE (seed_import_run_id, item_order) |
78
+
79
+ ## Relations
80
+
81
+ ![er](agentic_seed_import_items.svg)
82
+
83
+ ---
84
+
85
+ > Generated by [tbls](https://github.com/k1LoW/tbls)
@@ -0,0 +1,47 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
3
+ "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
4
+ <!-- Generated by graphviz version 12.1.2 (20240928.0832)
5
+ -->
6
+ <!-- Title: agentic_seed_import_items Pages: 1 -->
7
+ <svg width="382pt" height="386pt"
8
+ viewBox="0.00 0.00 381.60 386.40" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
9
+ <g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 382.4)">
10
+ <title>agentic_seed_import_items</title>
11
+ <polygon fill="white" stroke="none" points="-4,4 -4,-382.4 377.6,-382.4 377.6,4 -4,4"/>
12
+ <!-- agentic_seed_import_items -->
13
+ <g id="node1" class="node">
14
+ <title>agentic_seed_import_items</title>
15
+ <polygon fill="#efefef" stroke="none" points="46.2,-296.6 46.2,-332.2 327.4,-332.2 327.4,-296.6 46.2,-296.6"/>
16
+ <polygon fill="none" stroke="black" points="46.2,-296.6 46.2,-332.2 327.4,-332.2 327.4,-296.6 46.2,-296.6"/>
17
+ <text text-anchor="start" x="53.2" y="-310" font-family="Arial Bold" font-size="18.00">agentic_seed_import_items</text>
18
+ <text text-anchor="start" x="251.15" y="-310" font-family="Arial" font-size="14.00">    </text>
19
+ <text text-anchor="start" x="282.26" y="-310" font-family="Arial" font-size="14.00" fill="#666666">[table]</text>
20
+ <polygon fill="none" stroke="black" points="46.2,-265.8 46.2,-296.6 327.4,-296.6 327.4,-265.8 46.2,-265.8"/>
21
+ <text text-anchor="start" x="53.2" y="-278" font-family="Arial" font-size="14.00">seed_import_run_id </text>
22
+ <text text-anchor="start" x="180.83" y="-278" font-family="Arial" font-size="14.00" fill="#666666">[INTEGER]</text>
23
+ <polygon fill="none" stroke="black" stroke-width="3" points="44.7,-264.3 44.7,-333.7 328.9,-333.7 328.9,-264.3 44.7,-264.3"/>
24
+ </g>
25
+ <!-- agentic_seed_import_runs -->
26
+ <g id="node2" class="node">
27
+ <title>agentic_seed_import_runs</title>
28
+ <polygon fill="#efefef" stroke="none" points="50.2,-104.8 50.2,-140.4 323.4,-140.4 323.4,-104.8 50.2,-104.8"/>
29
+ <polygon fill="none" stroke="black" points="50.2,-104.8 50.2,-140.4 323.4,-140.4 323.4,-104.8 50.2,-104.8"/>
30
+ <text text-anchor="start" x="57.2" y="-118.2" font-family="Arial Bold" font-size="18.00">agentic_seed_import_runs</text>
31
+ <text text-anchor="start" x="247.15" y="-118.2" font-family="Arial" font-size="14.00">    </text>
32
+ <text text-anchor="start" x="278.27" y="-118.2" font-family="Arial" font-size="14.00" fill="#666666">[table]</text>
33
+ <polygon fill="none" stroke="black" points="50.2,-74 50.2,-104.8 323.4,-104.8 323.4,-74 50.2,-74"/>
34
+ <text text-anchor="start" x="57.2" y="-86.2" font-family="Arial" font-size="14.00">seed_import_run_id </text>
35
+ <text text-anchor="start" x="184.83" y="-86.2" font-family="Arial" font-size="14.00" fill="#666666">[INTEGER]</text>
36
+ <polygon fill="none" stroke="black" points="50.2,-43.2 50.2,-74 323.4,-74 323.4,-43.2 50.2,-43.2"/>
37
+ <text text-anchor="start" x="57.2" y="-55.4" font-family="Arial" font-size="14.00">bundle_id </text>
38
+ <text text-anchor="start" x="121.81" y="-55.4" font-family="Arial" font-size="14.00" fill="#666666">[INTEGER]</text>
39
+ </g>
40
+ <!-- agentic_seed_import_items&#45;&gt;agentic_seed_import_runs -->
41
+ <g id="edge1" class="edge">
42
+ <title>agentic_seed_import_items:seed_import_run_id&#45;&gt;agentic_seed_import_runs:seed_import_run_id</title>
43
+ <path fill="none" stroke="black" d="M187.62,-254.6C197.31,-199.2 290.01,-241.58 323.4,-183.6 344.3,-147.32 366.27,-89.4 324.4,-89.4"/>
44
+ <polygon fill="black" stroke="black" points="187.63,-254.5 182.34,-264.11 187.2,-259.82 186.85,-264.13 186.85,-264.13 186.85,-264.13 187.2,-259.82 191.31,-264.83 187.63,-254.5"/>
45
+ </g>
46
+ </g>
47
+ </svg>
@@ -0,0 +1,103 @@
1
+ # agentic_seed_import_runs
2
+
3
+ ## Description
4
+
5
+ <details>
6
+ <summary><strong>Table Definition</strong></summary>
7
+
8
+ ```sql
9
+ CREATE TABLE agentic_seed_import_runs (
10
+ -- seed import run 식별자
11
+ seed_import_run_id INTEGER PRIMARY KEY AUTOINCREMENT,
12
+
13
+ -- import 대상 project bundle 식별자
14
+ bundle_id INTEGER NOT NULL,
15
+
16
+ -- bundle provider package 이름
17
+ package_name VARCHAR(214) NOT NULL,
18
+
19
+ -- bundle provider package version
20
+ package_version VARCHAR(64) NOT NULL,
21
+
22
+ -- package 내부 bundle 식별자
23
+ bundle_code VARCHAR(128) NOT NULL,
24
+
25
+ -- bundle 자체 version
26
+ bundle_version VARCHAR(64) NOT NULL,
27
+
28
+ -- bundle이 제공하는 methodology code
29
+ methodology_code VARCHAR(128),
30
+
31
+ -- import 실행 mode
32
+ import_mode VARCHAR(16) NOT NULL DEFAULT 'dry_run'
33
+ CHECK (import_mode IN ('dry_run', 'apply')),
34
+
35
+ -- import 계획 상태
36
+ import_status VARCHAR(32) NOT NULL DEFAULT 'planned'
37
+ CHECK (import_status IN ('planned', 'blocked', 'failed', 'applied')),
38
+
39
+ -- import plan summary snapshot
40
+ summary_json JSON NOT NULL DEFAULT '{}'
41
+ CHECK (json_valid(summary_json)),
42
+
43
+ -- bundle validation result snapshot
44
+ validation_result_json JSON NOT NULL DEFAULT '{}'
45
+ CHECK (json_valid(validation_result_json)),
46
+
47
+ -- run 생성 시각
48
+ created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
49
+
50
+ -- run 상태 최종 수정 시각
51
+ updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
52
+
53
+ FOREIGN KEY (bundle_id)
54
+ REFERENCES agentic_project_bundles (bundle_id)
55
+ ON DELETE CASCADE
56
+ )
57
+ ```
58
+
59
+ </details>
60
+
61
+ ## Columns
62
+
63
+ | Name | Type | Default | Nullable | Children | Parents |
64
+ | ---------------------- | ------------ | ----------------- | -------- | --------------------------------------------------------- | ----------------------------------------------------- |
65
+ | seed_import_run_id | INTEGER | | true | [agentic_seed_import_items](agentic_seed_import_items.md) | |
66
+ | bundle_id | INTEGER | | false | | [agentic_project_bundles](agentic_project_bundles.md) |
67
+ | package_name | VARCHAR(214) | | false | | |
68
+ | package_version | VARCHAR(64) | | false | | |
69
+ | bundle_code | VARCHAR(128) | | false | | |
70
+ | bundle_version | VARCHAR(64) | | false | | |
71
+ | methodology_code | VARCHAR(128) | | true | | |
72
+ | import_mode | VARCHAR(16) | 'dry_run' | false | | |
73
+ | import_status | VARCHAR(32) | 'planned' | false | | |
74
+ | summary_json | JSON | '{}' | false | | |
75
+ | validation_result_json | JSON | '{}' | false | | |
76
+ | created_at | DATETIME | CURRENT_TIMESTAMP | false | | |
77
+ | updated_at | DATETIME | CURRENT_TIMESTAMP | false | | |
78
+
79
+ ## Constraints
80
+
81
+ | Name | Type | Definition |
82
+ | --------------------- | ----------- | ----------------------------------------------------------------------------------------------------------------------- |
83
+ | seed_import_run_id | PRIMARY KEY | PRIMARY KEY (seed_import_run_id) |
84
+ | - (Foreign key ID: 0) | FOREIGN KEY | FOREIGN KEY (bundle_id) REFERENCES agentic_project_bundles (bundle_id) ON UPDATE NO ACTION ON DELETE CASCADE MATCH NONE |
85
+ | - | CHECK | CHECK (import_mode IN ('dry_run', 'apply')) |
86
+ | - | CHECK | CHECK (import_status IN ('planned', 'blocked', 'failed', 'applied')) |
87
+ | - | CHECK | CHECK (json_valid(summary_json)) |
88
+ | - | CHECK | CHECK (json_valid(validation_result_json)) |
89
+
90
+ ## Indexes
91
+
92
+ | Name | Definition |
93
+ | -------------------------------------- | --------------------------------------------------------------------------------------------------- |
94
+ | idx_agentic_seed_import_runs_status | CREATE INDEX idx_agentic_seed_import_runs_status<br /> ON agentic_seed_import_runs (import_status) |
95
+ | idx_agentic_seed_import_runs_bundle_id | CREATE INDEX idx_agentic_seed_import_runs_bundle_id<br /> ON agentic_seed_import_runs (bundle_id) |
96
+
97
+ ## Relations
98
+
99
+ ![er](agentic_seed_import_runs.svg)
100
+
101
+ ---
102
+
103
+ > Generated by [tbls](https://github.com/k1LoW/tbls)