omp-fabric 1.0.5 → 1.2.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/CHANGELOG.md +28 -0
- package/README.md +1 -0
- package/dist/agents/handoff.d.ts +1 -1
- package/dist/agents/handoff.d.ts.map +1 -1
- package/dist/agents/types.d.ts +1 -1
- package/dist/agents/types.d.ts.map +1 -1
- package/dist/chunks/{chunk-TLSJXU4F.js → chunk-5YGOVBOZ.js} +179 -10
- package/dist/chunks/chunk-5YGOVBOZ.js.map +7 -0
- package/dist/chunks/{chunk-HAJPYJPY.js → chunk-EQNNENN6.js} +3 -3
- package/dist/chunks/{chunk-YPYVUGON.js → chunk-JOWMM3EX.js} +6 -6
- package/dist/chunks/chunk-JOWMM3EX.js.map +7 -0
- package/dist/chunks/{chunk-L2FNMIOW.js → chunk-QNRGTJGE.js} +2 -1
- package/dist/chunks/chunk-QNRGTJGE.js.map +7 -0
- package/dist/chunks/{chunk-FFWALVBN.js → chunk-TQL7FKMG.js} +3 -3
- package/dist/chunks/{chunk-Z6HEQPXX.js → chunk-WGFHMECI.js} +47 -1
- package/dist/chunks/{chunk-Z6HEQPXX.js.map → chunk-WGFHMECI.js.map} +2 -2
- package/dist/chunks/{chunk-IFNDRFW7.js → chunk-XRJYPNTI.js} +63 -2
- package/dist/chunks/chunk-XRJYPNTI.js.map +7 -0
- package/dist/chunks/{chunk-KIREBD2V.js → chunk-ZP3S74LW.js} +2 -1
- package/dist/codemap/budget.d.ts +3 -0
- package/dist/codemap/budget.d.ts.map +1 -0
- package/dist/codemap/cascade.d.ts +3 -0
- package/dist/codemap/cascade.d.ts.map +1 -0
- package/dist/codemap/symbols.d.ts +3 -0
- package/dist/codemap/symbols.d.ts.map +1 -0
- package/dist/codemap/types.d.ts +58 -0
- package/dist/codemap/types.d.ts.map +1 -0
- package/dist/compaction/hook.js +1 -1
- package/dist/config.d.ts +15 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/core/system-guidance.d.ts.map +1 -1
- package/dist/fabric-runtime-state.d.ts.map +1 -1
- package/dist/fabric-runtime-state.js +1605 -344
- package/dist/fabric-runtime-state.js.map +4 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +159 -19
- package/dist/index.js.map +4 -4
- package/dist/prewalk/handoff.d.ts +2 -1
- package/dist/prewalk/handoff.d.ts.map +1 -1
- package/dist/prewalk/retirement.d.ts +35 -0
- package/dist/prewalk/retirement.d.ts.map +1 -0
- package/dist/providers/codemap-provider.d.ts +14 -0
- package/dist/providers/codemap-provider.d.ts.map +1 -0
- package/dist/residency/host.js +5 -5
- package/dist/residency/omp-entry.js +5 -5
- package/dist/runtime/core-override-guest-types.js +1 -1
- package/dist/runtime/guest-types.d.ts +1 -1
- package/dist/runtime/guest-types.d.ts.map +1 -1
- package/dist/runtime/guest-types.js +1 -1
- package/dist/runtime/node-process-runtime.js +1 -1
- package/dist/runtime/quickjs-runtime.d.ts +1 -1
- package/dist/runtime/quickjs-runtime.d.ts.map +1 -1
- package/dist/runtime/quickjs-runtime.js +1 -1
- package/dist/ui/settings.d.ts.map +1 -1
- package/dist/ui/settings.js +94 -1
- package/dist/ui/settings.js.map +2 -2
- package/dist/update/check.d.ts +33 -0
- package/dist/update/check.d.ts.map +1 -0
- package/docs/architecture.md +1 -1
- package/docs/codemap.md +89 -0
- package/docs/configuration.md +15 -1
- package/package.json +4 -1
- package/dist/chunks/chunk-IFNDRFW7.js.map +0 -7
- package/dist/chunks/chunk-L2FNMIOW.js.map +0 -7
- package/dist/chunks/chunk-TLSJXU4F.js.map +0 -7
- package/dist/chunks/chunk-YPYVUGON.js.map +0 -7
- /package/dist/chunks/{chunk-HAJPYJPY.js.map → chunk-EQNNENN6.js.map} +0 -0
- /package/dist/chunks/{chunk-FFWALVBN.js.map → chunk-TQL7FKMG.js.map} +0 -0
- /package/dist/chunks/{chunk-KIREBD2V.js.map → chunk-ZP3S74LW.js.map} +0 -0
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,YAAY,EAEb,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,YAAY,EAEb,MAAM,2BAA2B,CAAC;AAiKnC,wBAA8B,SAAS,CAAC,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAqtBxE;AAED,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -67,7 +67,7 @@ import {
|
|
|
67
67
|
resolveFabricIdentity,
|
|
68
68
|
settleInPlacePrewalk,
|
|
69
69
|
streamedToolCallName
|
|
70
|
-
} from "./chunks/chunk-
|
|
70
|
+
} from "./chunks/chunk-5YGOVBOZ.js";
|
|
71
71
|
import "./chunks/chunk-7VIQNUPS.js";
|
|
72
72
|
import {
|
|
73
73
|
AgentTranscriptReader
|
|
@@ -76,7 +76,7 @@ import "./chunks/chunk-DLXPTBPL.js";
|
|
|
76
76
|
import {
|
|
77
77
|
GUEST_TYPE_DECLARATIONS,
|
|
78
78
|
OMP_CORE_COMPATIBILITY_ARGUMENT_TYPE_NAMES
|
|
79
|
-
} from "./chunks/chunk-
|
|
79
|
+
} from "./chunks/chunk-WGFHMECI.js";
|
|
80
80
|
import {
|
|
81
81
|
NESTED_TOOL_CALL_ID_PREFIX,
|
|
82
82
|
getActiveRepairCompiler,
|
|
@@ -188,7 +188,7 @@ import {
|
|
|
188
188
|
import {
|
|
189
189
|
awaitPeerSettle,
|
|
190
190
|
buildPeerCards
|
|
191
|
-
} from "./chunks/chunk-
|
|
191
|
+
} from "./chunks/chunk-JOWMM3EX.js";
|
|
192
192
|
import {
|
|
193
193
|
DEFAULT_FABRIC_CONFIG,
|
|
194
194
|
effectiveToolCaptureConfig,
|
|
@@ -196,7 +196,7 @@ import {
|
|
|
196
196
|
loadFabricConfigForScope,
|
|
197
197
|
resolveAgentDir,
|
|
198
198
|
saveFabricConfig
|
|
199
|
-
} from "./chunks/chunk-
|
|
199
|
+
} from "./chunks/chunk-XRJYPNTI.js";
|
|
200
200
|
import {
|
|
201
201
|
FABRIC_ACTOR_OMP_HOST_EVENTS
|
|
202
202
|
} from "./chunks/chunk-UOSJZXJV.js";
|
|
@@ -213,13 +213,15 @@ import {
|
|
|
213
213
|
resolveFabricModelGuidance
|
|
214
214
|
} from "./chunks/chunk-77FQHHZD.js";
|
|
215
215
|
import "./chunks/chunk-7363CD5A.js";
|
|
216
|
-
import
|
|
216
|
+
import {
|
|
217
|
+
writeJsonAtomic
|
|
218
|
+
} from "./chunks/chunk-KAD7UWT2.js";
|
|
217
219
|
import {
|
|
218
220
|
compactAtConfiguredThreshold,
|
|
219
221
|
fabricExecTitleHintCached,
|
|
220
222
|
normalizeRunDisplay,
|
|
221
223
|
registerCompactionHook
|
|
222
|
-
} from "./chunks/chunk-
|
|
224
|
+
} from "./chunks/chunk-ZP3S74LW.js";
|
|
223
225
|
import {
|
|
224
226
|
fabricWriteBindings
|
|
225
227
|
} from "./chunks/chunk-3J7BKUNG.js";
|
|
@@ -2115,7 +2117,7 @@ var fabricExecutionKernelGuidance = (fullCodeMode) => [
|
|
|
2115
2117
|
// caches stay warm.
|
|
2116
2118
|
`Read every file the user provides (images, screenshots, code, text) with the ${fullCodeMode ? "`omp.read`" : "`read`"} tool before responding \u2014 never assume its contents.`
|
|
2117
2119
|
].join(" ");
|
|
2118
|
-
var defaultFabricExecutionGuidance = (fullCodeMode) => fullCodeMode ? "Examples and returns: `omp.read('/x')`, `omp.grep('TODO','src')` / `omp.grep({pattern:'TODO', path:'src', ignoreCase:true, context:2})`, `omp.find({pattern:'*.ts', path:'src', limit:20})`, and `omp.ls('src')` return strings; `omp.bash({cmd:'ls'})`, `omp.edit({path:'/x', old:'a', new:'b'})`, and `omp.write({path:'/y', text:'z'})` return `{ok, output, details}` (read `.output`); failed core calls reject, including shell tools on an ordinary nonzero exit; pass `settle: true` to `omp.bash` to get `{ ok: false, exitCode, output, error }` instead. Timeout, cancellation, approval, and security failures still reject.\n`tools` is discovery + generic calls only (`providers`/`catalog`/`list`/`search`/`describe`/`call`/`models`). Call known MCP tools as `mcp.<sanitized_server>.<sanitized_tool>(args)`, captured tools as `extensions.<tool>(args)`, and stable providers as `memory.*`, `state.*`, `schema.*`, or `compact.*`. Use `tools.call({ref,args})` for computed refs. `omp` is the core tools; `omp.<key>` reads a named `payloads` value (not a tool)." : "Call known actions through `mcp.<sanitized_server>.<sanitized_tool>(args)`, `memory.*`, `state.*`, `schema.*`, `components.*`, `compact.*`, `agents.*`, or `mesh.*`; use `tools.catalog`/`search`/`describe`/`list` for discovery and `tools.call({ref,args})` for computed refs. Other surfaces are opt-in via user-loaded skills.";
|
|
2120
|
+
var defaultFabricExecutionGuidance = (fullCodeMode) => fullCodeMode ? "Examples and returns: `omp.read('/x')`, `omp.grep('TODO','src')` / `omp.grep({pattern:'TODO', path:'src', ignoreCase:true, context:2})`, `omp.find({pattern:'*.ts', path:'src', limit:20})`, and `omp.ls('src')` return strings; `omp.bash({cmd:'ls'})`, `omp.edit({path:'/x', old:'a', new:'b'})`, and `omp.write({path:'/y', text:'z'})` return `{ok, output, details}` (read `.output`); failed core calls reject, including shell tools on an ordinary nonzero exit; pass `settle: true` to `omp.bash` to get `{ ok: false, exitCode, output, error }` instead. Timeout, cancellation, approval, and security failures still reject.\n`tools` is discovery + generic calls only (`providers`/`catalog`/`list`/`search`/`describe`/`call`/`models`). Call known MCP tools as `mcp.<sanitized_server>.<sanitized_tool>(args)`, captured tools as `extensions.<tool>(args)`, and stable providers as `memory.*`, `state.*`, `schema.*`, or `compact.*`. Use `tools.call({ref,args})` for computed refs. `omp` is the core tools; `omp.<key>` reads a named `payloads` value (not a tool)." : "Call known actions through `mcp.<sanitized_server>.<sanitized_tool>(args)`, `memory.*`, `state.*`, `schema.*`, `components.*`, `compact.*`, `codemap.*`, `agents.*`, or `mesh.*`; use `tools.catalog`/`search`/`describe`/`list` for discovery and `tools.call({ref,args})` for computed refs. Other surfaces are opt-in via user-loaded skills.";
|
|
2119
2121
|
var manifestNameCache = /* @__PURE__ */ new Map();
|
|
2120
2122
|
var packageNameFromManifest = (startPath) => {
|
|
2121
2123
|
if (!startPath) return void 0;
|
|
@@ -2401,8 +2403,8 @@ var formatFailureProgress = (trace) => {
|
|
|
2401
2403
|
);
|
|
2402
2404
|
if (completed.length === 0) return void 0;
|
|
2403
2405
|
const summaries = completed.slice(0, MAX_COMPLETED_CALLS).map((operation) => {
|
|
2404
|
-
const
|
|
2405
|
-
return typeof
|
|
2406
|
+
const path11 = operation.args.path;
|
|
2407
|
+
return typeof path11 === "string" ? `${operation.ref}(${compactPath(path11)})` : operation.ref;
|
|
2406
2408
|
});
|
|
2407
2409
|
const omitted = completed.length - summaries.length;
|
|
2408
2410
|
return [
|
|
@@ -2825,7 +2827,7 @@ var createFabricExecTool = (state, codePreviewSettings, pendingHandoffs, decorat
|
|
|
2825
2827
|
// Keep nested payloads bounded and let prepareArguments normalize provider input.
|
|
2826
2828
|
parameters: Type.Object({
|
|
2827
2829
|
code: Type.String({
|
|
2828
|
-
description: "TypeScript function body. Top-level await and return are supported. Globals include `tools`, `mcp`, `memory`, `state`, `schema`, `compact`, `agents`, `mesh`, `print`, and `omp`; full-code mode adds `omp` and `extensions`. Payloads contains only the exact keys supplied by this call."
|
|
2830
|
+
description: "TypeScript function body. Top-level await and return are supported. Globals include `tools`, `mcp`, `memory`, `state`, `schema`, `compact`, `codemap`, `agents`, `mesh`, `print`, and `omp`; full-code mode adds `omp` and `extensions`. Payloads contains only the exact keys supplied by this call."
|
|
2829
2831
|
}),
|
|
2830
2832
|
payloads: Type.Optional(
|
|
2831
2833
|
Type.Record(Type.String(), Type.String(), {
|
|
@@ -4107,8 +4109,138 @@ var ompHostCompatibilityWarning = (version = detectOmpHostVersion()) => {
|
|
|
4107
4109
|
return `OMP Fabric requires OMP >= ${MINIMUM_OMP_HOST_VERSION}; detected ${version}. Upgrade OMP before relying on Fabric continuation behavior.`;
|
|
4108
4110
|
};
|
|
4109
4111
|
|
|
4110
|
-
// src/
|
|
4112
|
+
// src/update/check.ts
|
|
4113
|
+
import fs3 from "node:fs";
|
|
4111
4114
|
import path8 from "node:path";
|
|
4115
|
+
import { fileURLToPath } from "node:url";
|
|
4116
|
+
var PACKAGE_NAME = "omp-fabric";
|
|
4117
|
+
var REGISTRY_URL = `https://registry.npmjs.org/${PACKAGE_NAME}/latest`;
|
|
4118
|
+
var UPGRADE_COMMAND = `omp plugin install ${PACKAGE_NAME}`;
|
|
4119
|
+
var REQUEST_TIMEOUT_MS = 4e3;
|
|
4120
|
+
var UPDATE_STATUS_KEY = "fabric-update";
|
|
4121
|
+
var UPDATE_CHECK_TTL_MS = 24 * 60 * 60 * 1e3;
|
|
4122
|
+
var updateCheckCachePath = (agentDir) => path8.join(agentDir, "fabric", "update-check.json");
|
|
4123
|
+
var installedVersionFromManifest = () => {
|
|
4124
|
+
let directory = path8.dirname(fileURLToPath(import.meta.url));
|
|
4125
|
+
while (true) {
|
|
4126
|
+
try {
|
|
4127
|
+
const manifest = JSON.parse(
|
|
4128
|
+
fs3.readFileSync(path8.join(directory, "package.json"), "utf8")
|
|
4129
|
+
);
|
|
4130
|
+
if (manifest.name === PACKAGE_NAME && typeof manifest.version === "string") {
|
|
4131
|
+
return manifest.version;
|
|
4132
|
+
}
|
|
4133
|
+
} catch {
|
|
4134
|
+
}
|
|
4135
|
+
const parent = path8.dirname(directory);
|
|
4136
|
+
if (parent === directory) return void 0;
|
|
4137
|
+
directory = parent;
|
|
4138
|
+
}
|
|
4139
|
+
};
|
|
4140
|
+
var readCache = (cachePath) => {
|
|
4141
|
+
try {
|
|
4142
|
+
const parsed = JSON.parse(fs3.readFileSync(cachePath, "utf8"));
|
|
4143
|
+
if (typeof parsed.checkedAt !== "number" || !Number.isFinite(parsed.checkedAt)) return void 0;
|
|
4144
|
+
if (typeof parsed.latest !== "string" || parsed.latest.length === 0) return void 0;
|
|
4145
|
+
return {
|
|
4146
|
+
format: 1,
|
|
4147
|
+
checkedAt: parsed.checkedAt,
|
|
4148
|
+
latest: parsed.latest,
|
|
4149
|
+
...typeof parsed.notified === "string" ? { notified: parsed.notified } : {}
|
|
4150
|
+
};
|
|
4151
|
+
} catch {
|
|
4152
|
+
return void 0;
|
|
4153
|
+
}
|
|
4154
|
+
};
|
|
4155
|
+
var writeCache = (cachePath, value) => {
|
|
4156
|
+
try {
|
|
4157
|
+
writeJsonAtomic(cachePath, value, { space: 2, newline: true });
|
|
4158
|
+
} catch {
|
|
4159
|
+
}
|
|
4160
|
+
};
|
|
4161
|
+
var fetchLatestVersion = async (fetchImpl, timeoutMs) => {
|
|
4162
|
+
const controller = new AbortController();
|
|
4163
|
+
const timer = setTimeout(() => controller.abort(), timeoutMs);
|
|
4164
|
+
timer.unref?.();
|
|
4165
|
+
try {
|
|
4166
|
+
const response = await fetchImpl(REGISTRY_URL, {
|
|
4167
|
+
signal: controller.signal,
|
|
4168
|
+
headers: { accept: "application/json" }
|
|
4169
|
+
});
|
|
4170
|
+
if (!response.ok) return void 0;
|
|
4171
|
+
const payload = await response.json();
|
|
4172
|
+
const version = payload?.version;
|
|
4173
|
+
return typeof version === "string" && version.length > 0 ? version : void 0;
|
|
4174
|
+
} catch {
|
|
4175
|
+
return void 0;
|
|
4176
|
+
} finally {
|
|
4177
|
+
clearTimeout(timer);
|
|
4178
|
+
}
|
|
4179
|
+
};
|
|
4180
|
+
var checkFabricUpdate = async (options) => {
|
|
4181
|
+
try {
|
|
4182
|
+
const installed = options.installedVersion ?? installedVersionFromManifest();
|
|
4183
|
+
if (installed === void 0) return void 0;
|
|
4184
|
+
const now = options.now ?? Date.now();
|
|
4185
|
+
const cachePath = updateCheckCachePath(options.agentDir);
|
|
4186
|
+
const cached = readCache(cachePath);
|
|
4187
|
+
const age = cached === void 0 ? void 0 : now - cached.checkedAt;
|
|
4188
|
+
const fresh = cached !== void 0 && age !== void 0 && age >= 0 && age < UPDATE_CHECK_TTL_MS;
|
|
4189
|
+
let record;
|
|
4190
|
+
if (fresh && cached !== void 0) {
|
|
4191
|
+
record = cached;
|
|
4192
|
+
} else {
|
|
4193
|
+
const latest = await fetchLatestVersion(
|
|
4194
|
+
options.fetchImpl ?? globalThis.fetch,
|
|
4195
|
+
options.timeoutMs ?? REQUEST_TIMEOUT_MS
|
|
4196
|
+
);
|
|
4197
|
+
if (latest === void 0) return void 0;
|
|
4198
|
+
record = {
|
|
4199
|
+
format: 1,
|
|
4200
|
+
checkedAt: now,
|
|
4201
|
+
latest,
|
|
4202
|
+
...cached?.notified === void 0 ? {} : { notified: cached.notified }
|
|
4203
|
+
};
|
|
4204
|
+
}
|
|
4205
|
+
const behind = compareVersions(record.latest, installed) === 1;
|
|
4206
|
+
const announce = behind && record.notified !== record.latest;
|
|
4207
|
+
if (!fresh || announce) {
|
|
4208
|
+
writeCache(cachePath, announce ? { ...record, notified: record.latest } : record);
|
|
4209
|
+
}
|
|
4210
|
+
if (!announce) return void 0;
|
|
4211
|
+
return {
|
|
4212
|
+
installed,
|
|
4213
|
+
latest: record.latest,
|
|
4214
|
+
message: `${PACKAGE_NAME} ${installed} \u2192 ${record.latest} \xB7 ${UPGRADE_COMMAND}`
|
|
4215
|
+
};
|
|
4216
|
+
} catch {
|
|
4217
|
+
return void 0;
|
|
4218
|
+
}
|
|
4219
|
+
};
|
|
4220
|
+
var scheduleFabricUpdateCheck = async (context, options) => {
|
|
4221
|
+
if (!options.enabled || !context.hasUI) return;
|
|
4222
|
+
let sessionId;
|
|
4223
|
+
try {
|
|
4224
|
+
sessionId = context.sessionManager.getSessionId();
|
|
4225
|
+
} catch {
|
|
4226
|
+
return;
|
|
4227
|
+
}
|
|
4228
|
+
if (resolveFabricIdentity(sessionId).identity.kind !== "main") return;
|
|
4229
|
+
const notice = await checkFabricUpdate({
|
|
4230
|
+
agentDir: options.agentDir,
|
|
4231
|
+
...options.installedVersion === void 0 ? {} : { installedVersion: options.installedVersion },
|
|
4232
|
+
...options.fetchImpl === void 0 ? {} : { fetchImpl: options.fetchImpl },
|
|
4233
|
+
...options.now === void 0 ? {} : { now: options.now }
|
|
4234
|
+
});
|
|
4235
|
+
if (notice === void 0) return;
|
|
4236
|
+
try {
|
|
4237
|
+
context.ui.setStatus(UPDATE_STATUS_KEY, notice.message);
|
|
4238
|
+
} catch {
|
|
4239
|
+
}
|
|
4240
|
+
};
|
|
4241
|
+
|
|
4242
|
+
// src/ui/controller.ts
|
|
4243
|
+
import path9 from "node:path";
|
|
4112
4244
|
|
|
4113
4245
|
// src/ui/snapshot.ts
|
|
4114
4246
|
var MAX_UI_AGENTS = 240;
|
|
@@ -4965,7 +5097,7 @@ var FabricUiController = class {
|
|
|
4965
5097
|
logFile: actor.worker.logFile
|
|
4966
5098
|
};
|
|
4967
5099
|
}
|
|
4968
|
-
const retained = actor.lastRunId && actor.logDir ?
|
|
5100
|
+
const retained = actor.lastRunId && actor.logDir ? path9.join(actor.logDir, actor.lastRunId, "events.jsonl") : void 0;
|
|
4969
5101
|
if (retained) return { id: actor.id, status: actor.status, logFile: retained };
|
|
4970
5102
|
if (actor.sessionFile) {
|
|
4971
5103
|
return { id: actor.id, status: actor.status, logFile: actor.sessionFile };
|
|
@@ -5124,15 +5256,15 @@ var REFRESH_CARDS_PER_TICK = 3;
|
|
|
5124
5256
|
|
|
5125
5257
|
// src/index.ts
|
|
5126
5258
|
import { existsSync as existsSync4 } from "node:fs";
|
|
5127
|
-
import
|
|
5128
|
-
import { fileURLToPath } from "node:url";
|
|
5129
|
-
var FABRIC_EXTENSION_ENTRY_PATH =
|
|
5130
|
-
var FABRIC_ENTRY_DIR =
|
|
5259
|
+
import path10 from "node:path";
|
|
5260
|
+
import { fileURLToPath as fileURLToPath2 } from "node:url";
|
|
5261
|
+
var FABRIC_EXTENSION_ENTRY_PATH = path10.resolve(fileURLToPath2(import.meta.url));
|
|
5262
|
+
var FABRIC_ENTRY_DIR = path10.dirname(FABRIC_EXTENSION_ENTRY_PATH);
|
|
5131
5263
|
var FABRIC_RUNTIME_PATHS = {
|
|
5132
5264
|
extension: FABRIC_EXTENSION_ENTRY_PATH,
|
|
5133
|
-
worker:
|
|
5134
|
-
residentHost:
|
|
5135
|
-
skills:
|
|
5265
|
+
worker: path10.join(FABRIC_ENTRY_DIR, "worker.js"),
|
|
5266
|
+
residentHost: path10.join(FABRIC_ENTRY_DIR, "residency", "launcher.js"),
|
|
5267
|
+
skills: path10.resolve(FABRIC_ENTRY_DIR, "..", "skills")
|
|
5136
5268
|
};
|
|
5137
5269
|
var FABRIC_SKILLS_DIR = FABRIC_RUNTIME_PATHS.skills;
|
|
5138
5270
|
var componentRegistrationFrom = (value) => {
|
|
@@ -5158,6 +5290,7 @@ async function ompFabric(omp) {
|
|
|
5158
5290
|
const codePreviewSettings = defaultCodePreviewSettings();
|
|
5159
5291
|
const decorateShell = withCodePreviewShell;
|
|
5160
5292
|
let compatibilityWarningShown = false;
|
|
5293
|
+
let updateCheckStarted = false;
|
|
5161
5294
|
configureHighlighting(
|
|
5162
5295
|
codePreviewSettings.shikiTheme,
|
|
5163
5296
|
codePreviewSettings.syntaxHighlighting
|
|
@@ -5437,6 +5570,13 @@ async function ompFabric(omp) {
|
|
|
5437
5570
|
await state.bootstrap(context);
|
|
5438
5571
|
refreshCodePreviewSettings();
|
|
5439
5572
|
applyFabricMode();
|
|
5573
|
+
if (!updateCheckStarted) {
|
|
5574
|
+
updateCheckStarted = true;
|
|
5575
|
+
void scheduleFabricUpdateCheck(context, {
|
|
5576
|
+
enabled: state.config.update.check,
|
|
5577
|
+
agentDir: resolveAgentDir()
|
|
5578
|
+
});
|
|
5579
|
+
}
|
|
5440
5580
|
if (state.shouldEagerlyActivate(context)) await state.ensure(context);
|
|
5441
5581
|
});
|
|
5442
5582
|
omp.on("session_tree", async (_event, context) => {
|