@evermore.work/server 2026.511.0-canary.2 → 2026.513.0-canary.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/dist/adapters/builtin-adapter-types.d.ts.map +1 -1
- package/dist/adapters/builtin-adapter-types.js +1 -0
- package/dist/adapters/builtin-adapter-types.js.map +1 -1
- package/dist/adapters/registry.d.ts.map +1 -1
- package/dist/adapters/registry.js +20 -2
- package/dist/adapters/registry.js.map +1 -1
- package/dist/app.d.ts.map +1 -1
- package/dist/app.js +1 -3
- package/dist/app.js.map +1 -1
- package/dist/home-paths.d.ts +2 -4
- package/dist/home-paths.d.ts.map +1 -1
- package/dist/home-paths.js +8 -35
- package/dist/home-paths.js.map +1 -1
- package/dist/routes/agents.d.ts.map +1 -1
- package/dist/routes/agents.js +8 -2
- package/dist/routes/agents.js.map +1 -1
- package/dist/routes/issues.d.ts.map +1 -1
- package/dist/routes/issues.js +172 -11
- package/dist/routes/issues.js.map +1 -1
- package/dist/routes/plugins.d.ts.map +1 -1
- package/dist/routes/plugins.js +7 -21
- package/dist/routes/plugins.js.map +1 -1
- package/dist/services/environment-execution-target.d.ts.map +1 -1
- package/dist/services/environment-execution-target.js +2 -0
- package/dist/services/environment-execution-target.js.map +1 -1
- package/dist/services/environment-runtime.d.ts.map +1 -1
- package/dist/services/environment-runtime.js +30 -4
- package/dist/services/environment-runtime.js.map +1 -1
- package/dist/services/heartbeat.d.ts.map +1 -1
- package/dist/services/heartbeat.js +8 -3
- package/dist/services/heartbeat.js.map +1 -1
- package/dist/services/index.d.ts +1 -0
- package/dist/services/index.d.ts.map +1 -1
- package/dist/services/index.js +1 -0
- package/dist/services/index.js.map +1 -1
- package/dist/services/issue-recovery-actions.d.ts +40 -0
- package/dist/services/issue-recovery-actions.d.ts.map +1 -0
- package/dist/services/issue-recovery-actions.js +204 -0
- package/dist/services/issue-recovery-actions.js.map +1 -0
- package/dist/services/issues.d.ts +20 -0
- package/dist/services/issues.d.ts.map +1 -1
- package/dist/services/issues.js +160 -10
- package/dist/services/issues.js.map +1 -1
- package/dist/services/plugin-config-validator.js +1 -1
- package/dist/services/plugin-config-validator.js.map +1 -1
- package/dist/services/plugin-dev-watcher.d.ts.map +1 -1
- package/dist/services/plugin-dev-watcher.js +7 -2
- package/dist/services/plugin-dev-watcher.js.map +1 -1
- package/dist/services/plugin-environment-driver.d.ts +2 -0
- package/dist/services/plugin-environment-driver.d.ts.map +1 -1
- package/dist/services/plugin-environment-driver.js +2 -0
- package/dist/services/plugin-environment-driver.js.map +1 -1
- package/dist/services/plugin-host-services.d.ts.map +1 -1
- package/dist/services/plugin-host-services.js +31 -4
- package/dist/services/plugin-host-services.js.map +1 -1
- package/dist/services/plugin-loader.d.ts +2 -2
- package/dist/services/plugin-loader.js +3 -3
- package/dist/services/plugin-loader.js.map +1 -1
- package/dist/services/plugin-local-folders.d.ts +1 -0
- package/dist/services/plugin-local-folders.d.ts.map +1 -1
- package/dist/services/plugin-local-folders.js +45 -0
- package/dist/services/plugin-local-folders.js.map +1 -1
- package/dist/services/plugin-managed-agents.d.ts.map +1 -1
- package/dist/services/plugin-managed-agents.js +52 -9
- package/dist/services/plugin-managed-agents.js.map +1 -1
- package/dist/services/plugin-managed-skills.d.ts +14 -0
- package/dist/services/plugin-managed-skills.d.ts.map +1 -0
- package/dist/services/plugin-managed-skills.js +264 -0
- package/dist/services/plugin-managed-skills.js.map +1 -0
- package/dist/services/plugin-registry.d.ts +1 -1
- package/dist/services/plugin-registry.js +1 -1
- package/dist/services/recovery/service.d.ts.map +1 -1
- package/dist/services/recovery/service.js +225 -63
- package/dist/services/recovery/service.js.map +1 -1
- package/dist/services/recovery/successful-run-handoff.d.ts +2 -0
- package/dist/services/recovery/successful-run-handoff.d.ts.map +1 -1
- package/dist/services/recovery/successful-run-handoff.js +8 -1
- package/dist/services/recovery/successful-run-handoff.js.map +1 -1
- package/dist/services/recovery/successful-run-handoff.test.js +5 -2
- package/dist/services/recovery/successful-run-handoff.test.js.map +1 -1
- package/package.json +14 -13
- package/skills/evermore-converting-plans-to-tasks/SKILL.md +1 -1
- package/skills/evermore-create-plugin/SKILL.md +95 -42
- package/skills/terminal-bench-loop/SKILL.md +4 -4
- package/ui-dist/assets/{_basePickBy-CbmMN1RH.js → _basePickBy-k9wCTyNE.js} +1 -1
- package/ui-dist/assets/{_baseUniq-D5Spi0LU.js → _baseUniq-gqdJ9_M4.js} +1 -1
- package/ui-dist/assets/{arc-7n9-L5yV.js → arc-CZ5fTbi1.js} +1 -1
- package/ui-dist/assets/{architectureDiagram-VXUJARFQ-CaCkwTrk.js → architectureDiagram-VXUJARFQ-C1PmJabO.js} +1 -1
- package/ui-dist/assets/{blockDiagram-VD42YOAC-C_gMX5sE.js → blockDiagram-VD42YOAC-C31GBmZl.js} +1 -1
- package/ui-dist/assets/{c4Diagram-YG6GDRKO-DsIPHY3x.js → c4Diagram-YG6GDRKO-CXALeUm_.js} +1 -1
- package/ui-dist/assets/channel-BscBiA2B.js +1 -0
- package/ui-dist/assets/{chunk-4BX2VUAB-ConiONwq.js → chunk-4BX2VUAB-CI9ame_l.js} +1 -1
- package/ui-dist/assets/{chunk-55IACEB6-rN7J69fU.js → chunk-55IACEB6-X7CMs2bY.js} +1 -1
- package/ui-dist/assets/{chunk-B4BG7PRW-CWrv2W6l.js → chunk-B4BG7PRW-CRFGJGGj.js} +1 -1
- package/ui-dist/assets/{chunk-DI55MBZ5-DxMrfgRx.js → chunk-DI55MBZ5-pFj4tWf4.js} +1 -1
- package/ui-dist/assets/{chunk-FMBD7UC4-C3IEVrmU.js → chunk-FMBD7UC4-DwtEpJHS.js} +1 -1
- package/ui-dist/assets/{chunk-QN33PNHL-mY7dIxLL.js → chunk-QN33PNHL-O_GMkM_d.js} +1 -1
- package/ui-dist/assets/{chunk-QZHKN3VN-C57cpB6v.js → chunk-QZHKN3VN-DVQoxgmw.js} +1 -1
- package/ui-dist/assets/{chunk-TZMSLE5B-Bznk-429.js → chunk-TZMSLE5B-nYT9Oclu.js} +1 -1
- package/ui-dist/assets/classDiagram-2ON5EDUG-DRC1sToY.js +1 -0
- package/ui-dist/assets/classDiagram-v2-WZHVMYZB-DRC1sToY.js +1 -0
- package/ui-dist/assets/clone-djKk5h1v.js +1 -0
- package/ui-dist/assets/{cose-bilkent-S5V4N54A-WVNEjOkH.js → cose-bilkent-S5V4N54A-DrymQvjx.js} +1 -1
- package/ui-dist/assets/{dagre-6UL2VRFP-B5zFofAq.js → dagre-6UL2VRFP-BSMS-awI.js} +1 -1
- package/ui-dist/assets/{diagram-PSM6KHXK-B5uBquxq.js → diagram-PSM6KHXK-CKA4xpzT.js} +1 -1
- package/ui-dist/assets/{diagram-QEK2KX5R--vjH56tj.js → diagram-QEK2KX5R-D224Hw3l.js} +1 -1
- package/ui-dist/assets/{diagram-S2PKOQOG-BrRUS4fb.js → diagram-S2PKOQOG-QSLRBXq3.js} +1 -1
- package/ui-dist/assets/{erDiagram-Q2GNP2WA-DEz4OctV.js → erDiagram-Q2GNP2WA-BMb1ltru.js} +1 -1
- package/ui-dist/assets/{flowDiagram-NV44I4VS-B15VynOf.js → flowDiagram-NV44I4VS-DFO86CtG.js} +1 -1
- package/ui-dist/assets/{ganttDiagram-JELNMOA3-DMZlAptH.js → ganttDiagram-JELNMOA3-DqGmEMSm.js} +1 -1
- package/ui-dist/assets/{gitGraphDiagram-V2S2FVAM-CcxPbN5-.js → gitGraphDiagram-V2S2FVAM-C58nf2i-.js} +1 -1
- package/ui-dist/assets/{graph-BZIdisjp.js → graph-DosSwXzr.js} +1 -1
- package/ui-dist/assets/{index-ZU3cQRJ_.js → index-3RqTP3Wv.js} +1 -1
- package/ui-dist/assets/{index-CMFXrEKF.js → index-4nkrIR74.js} +154 -153
- package/ui-dist/assets/index-BNTUqCLB.css +1 -0
- package/ui-dist/assets/{index-JK3bQafC.js → index-BWnvh-op.js} +1 -1
- package/ui-dist/assets/{index-C_B62ZrS.js → index-BbNMaRBx.js} +1 -1
- package/ui-dist/assets/{index-D9_Jej4N.js → index-BfcmN5ZJ.js} +1 -1
- package/ui-dist/assets/{index-CLpI7eai.js → index-BgdsvI-o.js} +1 -1
- package/ui-dist/assets/{index-DPcKcWrz.js → index-BrTEhQHs.js} +1 -1
- package/ui-dist/assets/{index-CguyMMMe.js → index-C37UJrtl.js} +1 -1
- package/ui-dist/assets/{index-B8AK13gN.js → index-Ci5TGFP3.js} +1 -1
- package/ui-dist/assets/{index-CBsefjme.js → index-CqyFdYQi.js} +1 -1
- package/ui-dist/assets/{index-jrAeI9QO.js → index-Cu1tIzzo.js} +1 -1
- package/ui-dist/assets/{index-QcuAFhJE.js → index-CvQSsdq1.js} +1 -1
- package/ui-dist/assets/{index-CtbPMroJ.js → index-D6e8ieSZ.js} +1 -1
- package/ui-dist/assets/{index-Caiv3tFo.js → index-D9fEHHhi.js} +1 -1
- package/ui-dist/assets/{index-Br9DlaVa.js → index-DU3gaUtN.js} +1 -1
- package/ui-dist/assets/{index-B9gUF7Qo.js → index-DozqwUGT.js} +1 -1
- package/ui-dist/assets/{index-B2TuAYBk.js → index-DsbA9pOP.js} +1 -1
- package/ui-dist/assets/{index-BEgNCEf4.js → index-Dz0v0MS4.js} +1 -1
- package/ui-dist/assets/{index-DChtU7Y7.js → index-Oyl53tyz.js} +1 -1
- package/ui-dist/assets/{index-BXCWvVzU.js → index-ae2EPSbU.js} +1 -1
- package/ui-dist/assets/{index-C0ActS50.js → index-cxYbeASY.js} +1 -1
- package/ui-dist/assets/{index-CuiPTihA.js → index-gB4esTR_.js} +1 -1
- package/ui-dist/assets/{index-DZAJwG4j.js → index-uX_QygSO.js} +1 -1
- package/ui-dist/assets/{infoDiagram-HS3SLOUP-C2wYobHy.js → infoDiagram-HS3SLOUP-fH1KZK8Y.js} +1 -1
- package/ui-dist/assets/{journeyDiagram-XKPGCS4Q-BtfEQPBF.js → journeyDiagram-XKPGCS4Q-Bs6gBpT7.js} +1 -1
- package/ui-dist/assets/{kanban-definition-3W4ZIXB7-B4U_W3OQ.js → kanban-definition-3W4ZIXB7-CjXiZk7z.js} +1 -1
- package/ui-dist/assets/{layout-ZIWcjZTf.js → layout-BNsoNCJt.js} +1 -1
- package/ui-dist/assets/{linear-D7hp1mR1.js → linear-D4_nHGWF.js} +1 -1
- package/ui-dist/assets/{mermaid.core-npjWckTB.js → mermaid.core-QfFHliw3.js} +4 -4
- package/ui-dist/assets/{mindmap-definition-VGOIOE7T-Cno5l-kW.js → mindmap-definition-VGOIOE7T-B_dKQ4Qp.js} +1 -1
- package/ui-dist/assets/{pieDiagram-ADFJNKIX-Ce0R1e38.js → pieDiagram-ADFJNKIX-DflXWaiu.js} +1 -1
- package/ui-dist/assets/{quadrantDiagram-AYHSOK5B-BNZ-4uth.js → quadrantDiagram-AYHSOK5B-Bt3RB7oE.js} +1 -1
- package/ui-dist/assets/{requirementDiagram-UZGBJVZJ-BIdjI2CO.js → requirementDiagram-UZGBJVZJ-DxsHOEgt.js} +1 -1
- package/ui-dist/assets/{sankeyDiagram-TZEHDZUN-hYF-IP2X.js → sankeyDiagram-TZEHDZUN-DilTmstc.js} +1 -1
- package/ui-dist/assets/{sequenceDiagram-WL72ISMW-CBreF6um.js → sequenceDiagram-WL72ISMW-BYRLNxvZ.js} +1 -1
- package/ui-dist/assets/{stateDiagram-FKZM4ZOC-DOje8UoB.js → stateDiagram-FKZM4ZOC-D0jvEPoV.js} +1 -1
- package/ui-dist/assets/stateDiagram-v2-4FDKWEC3-D_kHbugj.js +1 -0
- package/ui-dist/assets/{timeline-definition-IT6M3QCI-Da_eKz_x.js → timeline-definition-IT6M3QCI-KyT1QpWq.js} +1 -1
- package/ui-dist/assets/{treemap-GDKQZRPO-BAFi4Uf3.js → treemap-GDKQZRPO-BEa3HnWS.js} +1 -1
- package/ui-dist/assets/{xychartDiagram-PRI3JC2R-Bc_vIoPh.js → xychartDiagram-PRI3JC2R-BUxqP2No.js} +1 -1
- package/ui-dist/index.html +2 -2
- package/ui-dist/assets/channel-zaN5fJQ5.js +0 -1
- package/ui-dist/assets/classDiagram-2ON5EDUG-CZ5AdJ2X.js +0 -1
- package/ui-dist/assets/classDiagram-v2-WZHVMYZB-CZ5AdJ2X.js +0 -1
- package/ui-dist/assets/clone-CgK10jEJ.js +0 -1
- package/ui-dist/assets/index-B7sbRkCH.css +0 -1
- package/ui-dist/assets/stateDiagram-v2-4FDKWEC3-BtMV8Rt1.js +0 -1
|
@@ -0,0 +1,264 @@
|
|
|
1
|
+
import { and, eq } from "drizzle-orm";
|
|
2
|
+
import { pluginManagedResources, } from "@evermore.work/db";
|
|
3
|
+
import { normalizeAgentUrlKey } from "@evermore.work/shared";
|
|
4
|
+
import { notFound } from "../errors.js";
|
|
5
|
+
import { logActivity } from "./activity-log.js";
|
|
6
|
+
import { companySkillService } from "./company-skills.js";
|
|
7
|
+
const MANAGED_SKILL_RESOURCE_KIND = "skill";
|
|
8
|
+
function pluginKeySlug(pluginKey) {
|
|
9
|
+
return normalizeAgentUrlKey(pluginKey) ?? "plugin";
|
|
10
|
+
}
|
|
11
|
+
function canonicalSkillKey(pluginKey, skillKey) {
|
|
12
|
+
return `plugin/${pluginKeySlug(pluginKey)}/${skillKey}`;
|
|
13
|
+
}
|
|
14
|
+
function yamlString(value) {
|
|
15
|
+
return JSON.stringify(value);
|
|
16
|
+
}
|
|
17
|
+
function buildDefaultMarkdown(pluginKey, declaration) {
|
|
18
|
+
const description = declaration.description?.trim() || `${declaration.displayName} plugin skill.`;
|
|
19
|
+
return [
|
|
20
|
+
"---",
|
|
21
|
+
`name: ${yamlString(declaration.displayName)}`,
|
|
22
|
+
`description: ${yamlString(description)}`,
|
|
23
|
+
`key: ${yamlString(canonicalSkillKey(pluginKey, declaration.skillKey))}`,
|
|
24
|
+
"---",
|
|
25
|
+
"",
|
|
26
|
+
`# ${declaration.displayName}`,
|
|
27
|
+
"",
|
|
28
|
+
description,
|
|
29
|
+
"",
|
|
30
|
+
].join("\n");
|
|
31
|
+
}
|
|
32
|
+
function withManagedSkillKey(markdown, canonicalKey) {
|
|
33
|
+
const keyLine = `key: ${yamlString(canonicalKey)}`;
|
|
34
|
+
const normalized = markdown.replace(/\r\n/g, "\n");
|
|
35
|
+
const frontmatter = /^---\n([\s\S]*?)\n---(\n?)/.exec(normalized);
|
|
36
|
+
if (!frontmatter) {
|
|
37
|
+
return [
|
|
38
|
+
"---",
|
|
39
|
+
keyLine,
|
|
40
|
+
"---",
|
|
41
|
+
"",
|
|
42
|
+
normalized,
|
|
43
|
+
].join("\n");
|
|
44
|
+
}
|
|
45
|
+
const currentBody = frontmatter[1] ?? "";
|
|
46
|
+
const nextBody = /^key\s*:/m.test(currentBody)
|
|
47
|
+
? currentBody.replace(/^key\s*:.*$/m, keyLine)
|
|
48
|
+
: [currentBody, keyLine].filter(Boolean).join("\n");
|
|
49
|
+
return `---\n${nextBody}\n---${frontmatter[2] ?? ""}${normalized.slice(frontmatter[0].length)}`;
|
|
50
|
+
}
|
|
51
|
+
function buildPackageFiles(pluginKey, declaration) {
|
|
52
|
+
const root = declaration.skillKey;
|
|
53
|
+
const canonicalKey = canonicalSkillKey(pluginKey, declaration.skillKey);
|
|
54
|
+
const files = {
|
|
55
|
+
[`${root}/SKILL.md`]: declaration.markdown?.trim()
|
|
56
|
+
? withManagedSkillKey(declaration.markdown, canonicalKey)
|
|
57
|
+
: buildDefaultMarkdown(pluginKey, declaration),
|
|
58
|
+
};
|
|
59
|
+
for (const file of declaration.files ?? []) {
|
|
60
|
+
files[`${root}/${file.path}`] = file.content;
|
|
61
|
+
}
|
|
62
|
+
return files;
|
|
63
|
+
}
|
|
64
|
+
function buildDeclaredSkillFiles(pluginKey, declaration) {
|
|
65
|
+
const packageFiles = buildPackageFiles(pluginKey, declaration);
|
|
66
|
+
const root = declaration.skillKey;
|
|
67
|
+
const prefix = `${root}/`;
|
|
68
|
+
const files = {};
|
|
69
|
+
for (const [filePath, content] of Object.entries(packageFiles)) {
|
|
70
|
+
files[filePath.startsWith(prefix) ? filePath.slice(prefix.length) : filePath] = content;
|
|
71
|
+
}
|
|
72
|
+
return files;
|
|
73
|
+
}
|
|
74
|
+
function buildSkillDefaults(pluginKey, declaration) {
|
|
75
|
+
return {
|
|
76
|
+
skillKey: declaration.skillKey,
|
|
77
|
+
displayName: declaration.displayName,
|
|
78
|
+
slug: declaration.slug ?? declaration.skillKey,
|
|
79
|
+
description: declaration.description ?? null,
|
|
80
|
+
canonicalKey: canonicalSkillKey(pluginKey, declaration.skillKey),
|
|
81
|
+
files: [
|
|
82
|
+
"SKILL.md",
|
|
83
|
+
...(declaration.files ?? []).map((file) => file.path),
|
|
84
|
+
],
|
|
85
|
+
};
|
|
86
|
+
}
|
|
87
|
+
function stableJson(value) {
|
|
88
|
+
if (Array.isArray(value))
|
|
89
|
+
return `[${value.map(stableJson).join(",")}]`;
|
|
90
|
+
if (value && typeof value === "object") {
|
|
91
|
+
return `{${Object.entries(value)
|
|
92
|
+
.sort(([left], [right]) => left.localeCompare(right))
|
|
93
|
+
.map(([key, entry]) => `${JSON.stringify(key)}:${stableJson(entry)}`)
|
|
94
|
+
.join(",")}}`;
|
|
95
|
+
}
|
|
96
|
+
return JSON.stringify(value);
|
|
97
|
+
}
|
|
98
|
+
function resolution(pluginKey, companyId, declaration, skill, status, defaultDrift = null) {
|
|
99
|
+
return {
|
|
100
|
+
pluginKey,
|
|
101
|
+
resourceKind: "skill",
|
|
102
|
+
resourceKey: declaration.skillKey,
|
|
103
|
+
companyId,
|
|
104
|
+
skillId: skill?.id ?? null,
|
|
105
|
+
skill,
|
|
106
|
+
status,
|
|
107
|
+
defaultDrift,
|
|
108
|
+
};
|
|
109
|
+
}
|
|
110
|
+
export function pluginManagedSkillService(db, options) {
|
|
111
|
+
const skills = companySkillService(db);
|
|
112
|
+
function declarationFor(skillKey) {
|
|
113
|
+
const declaration = options.manifest?.skills?.find((skill) => skill.skillKey === skillKey);
|
|
114
|
+
if (!declaration) {
|
|
115
|
+
throw notFound(`Managed skill declaration not found: ${skillKey}`);
|
|
116
|
+
}
|
|
117
|
+
return declaration;
|
|
118
|
+
}
|
|
119
|
+
async function getBinding(companyId, skillKey) {
|
|
120
|
+
return db
|
|
121
|
+
.select()
|
|
122
|
+
.from(pluginManagedResources)
|
|
123
|
+
.where(and(eq(pluginManagedResources.companyId, companyId), eq(pluginManagedResources.pluginId, options.pluginId), eq(pluginManagedResources.resourceKind, MANAGED_SKILL_RESOURCE_KIND), eq(pluginManagedResources.resourceKey, skillKey)))
|
|
124
|
+
.then((rows) => rows[0] ?? null);
|
|
125
|
+
}
|
|
126
|
+
async function upsertBinding(companyId, declaration, skillId) {
|
|
127
|
+
const defaultsJson = buildSkillDefaults(options.pluginKey, declaration);
|
|
128
|
+
const existing = await getBinding(companyId, declaration.skillKey);
|
|
129
|
+
if (existing) {
|
|
130
|
+
if (existing.resourceId === skillId &&
|
|
131
|
+
stableJson(existing.defaultsJson) === stableJson(defaultsJson)) {
|
|
132
|
+
return existing;
|
|
133
|
+
}
|
|
134
|
+
return db
|
|
135
|
+
.update(pluginManagedResources)
|
|
136
|
+
.set({
|
|
137
|
+
resourceId: skillId,
|
|
138
|
+
defaultsJson,
|
|
139
|
+
updatedAt: new Date(),
|
|
140
|
+
})
|
|
141
|
+
.where(eq(pluginManagedResources.id, existing.id))
|
|
142
|
+
.returning()
|
|
143
|
+
.then((rows) => rows[0]);
|
|
144
|
+
}
|
|
145
|
+
return db
|
|
146
|
+
.insert(pluginManagedResources)
|
|
147
|
+
.values({
|
|
148
|
+
companyId,
|
|
149
|
+
pluginId: options.pluginId,
|
|
150
|
+
pluginKey: options.pluginKey,
|
|
151
|
+
resourceKind: MANAGED_SKILL_RESOURCE_KIND,
|
|
152
|
+
resourceKey: declaration.skillKey,
|
|
153
|
+
resourceId: skillId,
|
|
154
|
+
defaultsJson,
|
|
155
|
+
})
|
|
156
|
+
.returning()
|
|
157
|
+
.then((rows) => rows[0]);
|
|
158
|
+
}
|
|
159
|
+
async function getSkill(companyId, skillId) {
|
|
160
|
+
return skills.getById(companyId, skillId);
|
|
161
|
+
}
|
|
162
|
+
async function managedSkillDefaultDrift(companyId, skill, declaration) {
|
|
163
|
+
if (!skill)
|
|
164
|
+
return null;
|
|
165
|
+
const declaredFiles = buildDeclaredSkillFiles(options.pluginKey, declaration);
|
|
166
|
+
const currentFiles = {};
|
|
167
|
+
const paths = new Set([
|
|
168
|
+
...Object.keys(declaredFiles),
|
|
169
|
+
...skill.fileInventory.map((entry) => entry.path),
|
|
170
|
+
]);
|
|
171
|
+
for (const filePath of paths) {
|
|
172
|
+
if (filePath === "SKILL.md") {
|
|
173
|
+
currentFiles[filePath] = skill.markdown;
|
|
174
|
+
continue;
|
|
175
|
+
}
|
|
176
|
+
try {
|
|
177
|
+
currentFiles[filePath] = (await skills.readFile(companyId, skill.id, filePath))?.content ?? null;
|
|
178
|
+
}
|
|
179
|
+
catch {
|
|
180
|
+
currentFiles[filePath] = null;
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
const changedFiles = [...paths]
|
|
184
|
+
.filter((filePath) => (currentFiles[filePath] ?? null) !== (declaredFiles[filePath] ?? null))
|
|
185
|
+
.sort((left, right) => left.localeCompare(right));
|
|
186
|
+
return changedFiles.length > 0 ? { changedFiles } : null;
|
|
187
|
+
}
|
|
188
|
+
async function resolvedSkill(companyId, declaration, skill, status) {
|
|
189
|
+
return resolution(options.pluginKey, companyId, declaration, skill, status, await managedSkillDefaultDrift(companyId, skill, declaration));
|
|
190
|
+
}
|
|
191
|
+
async function importDeclaredSkill(companyId, declaration, mode) {
|
|
192
|
+
const beforeByKey = mode === "reconcile"
|
|
193
|
+
? await skills.getByKey(companyId, canonicalSkillKey(options.pluginKey, declaration.skillKey))
|
|
194
|
+
: null;
|
|
195
|
+
if (beforeByKey) {
|
|
196
|
+
await upsertBinding(companyId, declaration, beforeByKey.id);
|
|
197
|
+
return { skill: beforeByKey, status: "relinked" };
|
|
198
|
+
}
|
|
199
|
+
const results = await skills.importPackageFiles(companyId, buildPackageFiles(options.pluginKey, declaration), { onConflict: "replace" });
|
|
200
|
+
const imported = results.find((result) => result.skill.key === canonicalSkillKey(options.pluginKey, declaration.skillKey)
|
|
201
|
+
|| result.originalSlug === (declaration.slug ?? declaration.skillKey)
|
|
202
|
+
|| result.originalSlug === declaration.skillKey)?.skill ?? results[0]?.skill ?? null;
|
|
203
|
+
if (!imported) {
|
|
204
|
+
throw notFound(`Managed skill was not imported: ${declaration.skillKey}`);
|
|
205
|
+
}
|
|
206
|
+
await upsertBinding(companyId, declaration, imported.id);
|
|
207
|
+
const status = mode === "reset" ? "reset" : "created";
|
|
208
|
+
return { skill: imported, status };
|
|
209
|
+
}
|
|
210
|
+
async function get(skillKey, companyId) {
|
|
211
|
+
const declaration = declarationFor(skillKey);
|
|
212
|
+
const binding = await getBinding(companyId, skillKey);
|
|
213
|
+
if (!binding)
|
|
214
|
+
return resolvedSkill(companyId, declaration, null, "missing");
|
|
215
|
+
const skill = await getSkill(companyId, binding.resourceId);
|
|
216
|
+
return resolvedSkill(companyId, declaration, skill, skill ? "resolved" : "missing");
|
|
217
|
+
}
|
|
218
|
+
async function reconcile(skillKey, companyId) {
|
|
219
|
+
const declaration = declarationFor(skillKey);
|
|
220
|
+
const current = await get(skillKey, companyId);
|
|
221
|
+
if (current.skill) {
|
|
222
|
+
await upsertBinding(companyId, declaration, current.skill.id);
|
|
223
|
+
return current;
|
|
224
|
+
}
|
|
225
|
+
const imported = await importDeclaredSkill(companyId, declaration, "reconcile");
|
|
226
|
+
await logActivity(db, {
|
|
227
|
+
companyId,
|
|
228
|
+
actorType: "plugin",
|
|
229
|
+
actorId: options.pluginId,
|
|
230
|
+
action: "plugin.managed_skill.reconciled",
|
|
231
|
+
entityType: "company_skill",
|
|
232
|
+
entityId: imported.skill.id,
|
|
233
|
+
details: {
|
|
234
|
+
sourcePluginKey: options.pluginKey,
|
|
235
|
+
managedResourceKey: declaration.skillKey,
|
|
236
|
+
status: imported.status,
|
|
237
|
+
},
|
|
238
|
+
});
|
|
239
|
+
return resolvedSkill(companyId, declaration, imported.skill, imported.status);
|
|
240
|
+
}
|
|
241
|
+
async function reset(skillKey, companyId) {
|
|
242
|
+
const declaration = declarationFor(skillKey);
|
|
243
|
+
const imported = await importDeclaredSkill(companyId, declaration, "reset");
|
|
244
|
+
await logActivity(db, {
|
|
245
|
+
companyId,
|
|
246
|
+
actorType: "plugin",
|
|
247
|
+
actorId: options.pluginId,
|
|
248
|
+
action: "plugin.managed_skill.reset",
|
|
249
|
+
entityType: "company_skill",
|
|
250
|
+
entityId: imported.skill.id,
|
|
251
|
+
details: {
|
|
252
|
+
sourcePluginKey: options.pluginKey,
|
|
253
|
+
managedResourceKey: declaration.skillKey,
|
|
254
|
+
},
|
|
255
|
+
});
|
|
256
|
+
return resolvedSkill(companyId, declaration, imported.skill, "reset");
|
|
257
|
+
}
|
|
258
|
+
return {
|
|
259
|
+
get,
|
|
260
|
+
reconcile,
|
|
261
|
+
reset,
|
|
262
|
+
};
|
|
263
|
+
}
|
|
264
|
+
//# sourceMappingURL=plugin-managed-skills.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plugin-managed-skills.js","sourceRoot":"","sources":["../../src/services/plugin-managed-skills.ts"],"names":[],"mappings":"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"}
|
|
@@ -2037,7 +2037,7 @@ export declare function pluginRegistryService(db: Db): {
|
|
|
2037
2037
|
updatedAt: Date;
|
|
2038
2038
|
}>;
|
|
2039
2039
|
/**
|
|
2040
|
-
* Create or update a persistent mapping between
|
|
2040
|
+
* Create or update a persistent mapping between an Evermore object and an
|
|
2041
2041
|
* external entity.
|
|
2042
2042
|
*
|
|
2043
2043
|
* @param pluginId - The UUID of the plugin.
|
|
@@ -394,7 +394,7 @@ export function pluginRegistryService(db) {
|
|
|
394
394
|
.where(and(eq(pluginEntities.pluginId, pluginId), eq(pluginEntities.entityType, entityType), eq(pluginEntities.externalId, externalId)))
|
|
395
395
|
.then((rows) => rows[0] ?? null),
|
|
396
396
|
/**
|
|
397
|
-
* Create or update a persistent mapping between
|
|
397
|
+
* Create or update a persistent mapping between an Evermore object and an
|
|
398
398
|
* external entity.
|
|
399
399
|
*
|
|
400
400
|
* @param pluginId - The UUID of the plugin.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../src/services/recovery/service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAIL,KAAK,qCAAqC,EAE3C,MAAM,uBAAuB,CAAC;AAC/B,OAAO,
|
|
1
|
+
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../src/services/recovery/service.ts"],"names":[],"mappings":"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"}
|