@corvus-tools/skill-manager-core 0.2.0 → 0.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -17,4 +17,5 @@ export { type BuildStatusReportOptions, buildStatusReport } from './reports/stat
17
17
  export { type BuildDoctorReportOptions, buildDoctorReport } from './reports/doctorReport.js';
18
18
  export { assertPathInside, configFileName, defaultConfigPath, defaultLockPath, defaultManifestPath, defaultManagerStateDir, defaultSkillpackCheckoutPath, defaultSkillpackCurrentPath, defaultSkillpackRevisionsPath, defaultSkillpackRootPath, expandTilde, isPathInside, lockFileName, manifestFileName, managerStateDirSegments, resolveUserPath } from './paths.js';
19
19
  export { defaultSkillpackBranch, defaultSkillpackDisplayName, defaultSkillpackId, defaultSkillpackRepositoryUrl } from './skillpackDefaults.js';
20
+ export { type ManagerInstallKind, type ManagerPackageRuntime, type ManagerSelfUpdateInspection, type ManagerSelfUpdateOptions, type ManagerSelfUpdateStatus, type RegistryFetch, compareSemver, inspectManagerSelfUpdate, isNewerVersion } from './selfUpdate/managerPackageUpdate.js';
20
21
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACvB,mBAAmB,EACnB,UAAU,EACV,UAAU,EACX,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,eAAe,EACpB,iBAAiB,EACjB,aAAa,EACb,0BAA0B,EAC1B,mBAAmB,EACnB,kBAAkB,EAClB,oBAAoB,EACpB,qBAAqB,EACtB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAC,KAAK,YAAY,EAAE,KAAK,OAAO,EAAE,KAAK,kBAAkB,EAAC,MAAM,0BAA0B,CAAC;AAClG,OAAO,EAAC,aAAa,EAAE,eAAe,EAAE,gBAAgB,EAAC,MAAM,sBAAsB,CAAC;AACtF,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,mBAAmB,EACxB,KAAK,+BAA+B,EACpC,KAAK,2BAA2B,EAChC,KAAK,uBAAuB,EAC5B,KAAK,qBAAqB,EAC1B,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,EACzB,KAAK,0BAA0B,EAC/B,KAAK,0BAA0B,EAC/B,KAAK,sBAAsB,EAC3B,KAAK,4BAA4B,EACjC,0BAA0B,EAC1B,oBAAoB,EACpB,wBAAwB,EACxB,4BAA4B,EAC5B,6BAA6B,EAC7B,8BAA8B,EAC9B,yBAAyB,EAC1B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAC,KAAK,SAAS,EAAE,KAAK,aAAa,EAAE,KAAK,YAAY,EAAE,MAAM,EAAC,MAAM,oBAAoB,CAAC;AACjG,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACvB,sBAAsB,EACtB,iBAAiB,EACjB,gBAAgB,EAChB,wBAAwB,EACzB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,KAAK,gBAAgB,EACrB,kBAAkB,EAClB,QAAQ,EACR,QAAQ,EACR,wBAAwB,EACzB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,KAAK,kBAAkB,EACvB,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,wBAAwB,EACxB,mBAAmB,EACnB,oBAAoB,EACrB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,sBAAsB,EAC3B,KAAK,gBAAgB,EACrB,0BAA0B,EAC3B,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,KAAK,kBAAkB,EACvB,KAAK,qBAAqB,EAC1B,KAAK,mBAAmB,EACxB,KAAK,QAAQ,EACb,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,aAAa,EAClB,KAAK,mBAAmB,EACxB,KAAK,WAAW,EAChB,gBAAgB,EACjB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACtB,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,EACxB,aAAa,EACd,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,KAAK,wBAAwB,EAC7B,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,0BAA0B,EAC1B,8BAA8B,EAC9B,qBAAqB,EACrB,qBAAqB,EACrB,oBAAoB,EACrB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,KAAK,oBAAoB,EACzB,YAAY,EACZ,qBAAqB,EACrB,oBAAoB,EACpB,YAAY,EACb,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,mBAAmB,EACxB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,EAC3B,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAC,KAAK,wBAAwB,EAAE,iBAAiB,EAAC,MAAM,2BAA2B,CAAC;AAC3F,OAAO,EAAC,KAAK,wBAAwB,EAAE,iBAAiB,EAAC,MAAM,2BAA2B,CAAC;AAC3F,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,iBAAiB,EACjB,eAAe,EACf,mBAAmB,EACnB,sBAAsB,EACtB,4BAA4B,EAC5B,2BAA2B,EAC3B,6BAA6B,EAC7B,wBAAwB,EACxB,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,gBAAgB,EAChB,uBAAuB,EACvB,eAAe,EAChB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,sBAAsB,EACtB,2BAA2B,EAC3B,kBAAkB,EAClB,6BAA6B,EAC9B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,KAAK,kBAAkB,EACvB,KAAK,qBAAqB,EAC1B,KAAK,2BAA2B,EAChC,KAAK,wBAAwB,EAC7B,KAAK,uBAAuB,EAC5B,KAAK,aAAa,EAClB,aAAa,EACb,wBAAwB,EACxB,cAAc,EACf,MAAM,sCAAsC,CAAC"}
package/dist/index.js CHANGED
@@ -15,4 +15,5 @@ export { buildStatusReport } from './reports/statusReport.js';
15
15
  export { buildDoctorReport } from './reports/doctorReport.js';
16
16
  export { assertPathInside, configFileName, defaultConfigPath, defaultLockPath, defaultManifestPath, defaultManagerStateDir, defaultSkillpackCheckoutPath, defaultSkillpackCurrentPath, defaultSkillpackRevisionsPath, defaultSkillpackRootPath, expandTilde, isPathInside, lockFileName, manifestFileName, managerStateDirSegments, resolveUserPath } from './paths.js';
17
17
  export { defaultSkillpackBranch, defaultSkillpackDisplayName, defaultSkillpackId, defaultSkillpackRepositoryUrl } from './skillpackDefaults.js';
18
+ export { compareSemver, inspectManagerSelfUpdate, isNewerVersion } from './selfUpdate/managerPackageUpdate.js';
18
19
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,mBAAmB,EACnB,UAAU,EACV,UAAU,EACX,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAKL,iBAAiB,EACjB,aAAa,EACb,0BAA0B,EAC1B,mBAAmB,EACnB,kBAAkB,EAClB,oBAAoB,EACpB,qBAAqB,EACtB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAC,aAAa,EAAE,eAAe,EAAE,gBAAgB,EAAC,MAAM,sBAAsB,CAAC;AACtF,OAAO,EAaL,0BAA0B,EAC1B,oBAAoB,EACpB,wBAAwB,EACxB,4BAA4B,EAC5B,6BAA6B,EAC7B,8BAA8B,EAC9B,yBAAyB,EAC1B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAwD,MAAM,EAAC,MAAM,oBAAoB,CAAC;AACjG,OAAO,EAGL,sBAAsB,EACtB,iBAAiB,EACjB,gBAAgB,EAChB,wBAAwB,EACzB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAEL,kBAAkB,EAClB,QAAQ,EACR,QAAQ,EACR,wBAAwB,EACzB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAIL,wBAAwB,EACxB,mBAAmB,EACnB,oBAAoB,EACrB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAML,0BAA0B,EAC3B,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAUL,gBAAgB,EACjB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAKL,aAAa,EACd,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAIL,0BAA0B,EAC1B,8BAA8B,EAC9B,qBAAqB,EACrB,qBAAqB,EACrB,oBAAoB,EACrB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAEL,YAAY,EACZ,qBAAqB,EACrB,oBAAoB,EACpB,YAAY,EACb,MAAM,6BAA6B,CAAC;AASrC,OAAO,EAAgC,iBAAiB,EAAC,MAAM,2BAA2B,CAAC;AAC3F,OAAO,EAAgC,iBAAiB,EAAC,MAAM,2BAA2B,CAAC;AAC3F,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,iBAAiB,EACjB,eAAe,EACf,mBAAmB,EACnB,sBAAsB,EACtB,4BAA4B,EAC5B,2BAA2B,EAC3B,6BAA6B,EAC7B,wBAAwB,EACxB,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,gBAAgB,EAChB,uBAAuB,EACvB,eAAe,EAChB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,sBAAsB,EACtB,2BAA2B,EAC3B,kBAAkB,EAClB,6BAA6B,EAC9B,MAAM,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,mBAAmB,EACnB,UAAU,EACV,UAAU,EACX,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAKL,iBAAiB,EACjB,aAAa,EACb,0BAA0B,EAC1B,mBAAmB,EACnB,kBAAkB,EAClB,oBAAoB,EACpB,qBAAqB,EACtB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAC,aAAa,EAAE,eAAe,EAAE,gBAAgB,EAAC,MAAM,sBAAsB,CAAC;AACtF,OAAO,EAaL,0BAA0B,EAC1B,oBAAoB,EACpB,wBAAwB,EACxB,4BAA4B,EAC5B,6BAA6B,EAC7B,8BAA8B,EAC9B,yBAAyB,EAC1B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAwD,MAAM,EAAC,MAAM,oBAAoB,CAAC;AACjG,OAAO,EAGL,sBAAsB,EACtB,iBAAiB,EACjB,gBAAgB,EAChB,wBAAwB,EACzB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAEL,kBAAkB,EAClB,QAAQ,EACR,QAAQ,EACR,wBAAwB,EACzB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAIL,wBAAwB,EACxB,mBAAmB,EACnB,oBAAoB,EACrB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAML,0BAA0B,EAC3B,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAUL,gBAAgB,EACjB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAKL,aAAa,EACd,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAIL,0BAA0B,EAC1B,8BAA8B,EAC9B,qBAAqB,EACrB,qBAAqB,EACrB,oBAAoB,EACrB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAEL,YAAY,EACZ,qBAAqB,EACrB,oBAAoB,EACpB,YAAY,EACb,MAAM,6BAA6B,CAAC;AASrC,OAAO,EAAgC,iBAAiB,EAAC,MAAM,2BAA2B,CAAC;AAC3F,OAAO,EAAgC,iBAAiB,EAAC,MAAM,2BAA2B,CAAC;AAC3F,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,iBAAiB,EACjB,eAAe,EACf,mBAAmB,EACnB,sBAAsB,EACtB,4BAA4B,EAC5B,2BAA2B,EAC3B,6BAA6B,EAC7B,wBAAwB,EACxB,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,gBAAgB,EAChB,uBAAuB,EACvB,eAAe,EAChB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,sBAAsB,EACtB,2BAA2B,EAC3B,kBAAkB,EAClB,6BAA6B,EAC9B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAOL,aAAa,EACb,wBAAwB,EACxB,cAAc,EACf,MAAM,sCAAsC,CAAC"}
@@ -0,0 +1,39 @@
1
+ export type ManagerInstallKind = 'global' | 'npx' | 'development' | 'unknown';
2
+ export type ManagerSelfUpdateStatus = 'unsupported-install' | 'up-to-date' | 'update-available' | 'check-failed';
3
+ export interface ManagerPackageRuntime {
4
+ packageName: string;
5
+ currentVersion: string;
6
+ installKind: ManagerInstallKind;
7
+ }
8
+ export interface ManagerSelfUpdateInspection extends ManagerPackageRuntime {
9
+ status: ManagerSelfUpdateStatus;
10
+ updateAvailable: boolean;
11
+ latestVersion?: string;
12
+ updateCommand?: string;
13
+ checkedAt?: string;
14
+ fromCache: boolean;
15
+ message: string;
16
+ }
17
+ export interface ManagerSelfUpdateOptions extends ManagerPackageRuntime {
18
+ homeDir?: string;
19
+ managerStateDir?: string;
20
+ now?: Date;
21
+ fetch?: RegistryFetch;
22
+ cacheTtlMs?: number;
23
+ timeoutMs?: number;
24
+ forceRefresh?: boolean;
25
+ }
26
+ interface RegistryFetchResponse {
27
+ ok: boolean;
28
+ status: number;
29
+ json: () => Promise<unknown>;
30
+ }
31
+ export type RegistryFetch = (url: string, init?: {
32
+ headers?: Record<string, string>;
33
+ signal?: AbortSignal;
34
+ }) => Promise<RegistryFetchResponse>;
35
+ export declare function inspectManagerSelfUpdate(options: ManagerSelfUpdateOptions): Promise<ManagerSelfUpdateInspection>;
36
+ export declare function isNewerVersion(candidateVersion: string, currentVersion: string): boolean;
37
+ export declare function compareSemver(leftVersion: string, rightVersion: string): number;
38
+ export {};
39
+ //# sourceMappingURL=managerPackageUpdate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"managerPackageUpdate.d.ts","sourceRoot":"","sources":["../../src/selfUpdate/managerPackageUpdate.ts"],"names":[],"mappings":"AASA,MAAM,MAAM,kBAAkB,GAAG,QAAQ,GAAG,KAAK,GAAG,aAAa,GAAG,SAAS,CAAC;AAE9E,MAAM,MAAM,uBAAuB,GAC/B,qBAAqB,GACrB,YAAY,GACZ,kBAAkB,GAClB,cAAc,CAAC;AAEnB,MAAM,WAAW,qBAAqB;IACpC,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,kBAAkB,CAAC;CACjC;AAED,MAAM,WAAW,2BAA4B,SAAQ,qBAAqB;IACxE,MAAM,EAAE,uBAAuB,CAAC;IAChC,eAAe,EAAE,OAAO,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,wBAAyB,SAAQ,qBAAqB;IACrE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,GAAG,CAAC,EAAE,IAAI,CAAC;IACX,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,UAAU,qBAAqB;IAC7B,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;CAC9B;AAED,MAAM,MAAM,aAAa,GAAG,CAC1B,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE;IACL,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB,KACE,OAAO,CAAC,qBAAqB,CAAC,CAAC;AA8BpC,wBAAsB,wBAAwB,CAC5C,OAAO,EAAE,wBAAwB,GAChC,OAAO,CAAC,2BAA2B,CAAC,CAuCtC;AAED,wBAAgB,cAAc,CAAC,gBAAgB,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAExF;AAED,wBAAgB,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM,CAa/E"}
@@ -0,0 +1,296 @@
1
+ import { promises as fs } from 'node:fs';
2
+ import path from 'node:path';
3
+ import { z } from 'zod';
4
+ import { assertPathInside, defaultManagerStateDir, resolveUserPath } from '../paths.js';
5
+ const defaultCacheTtlMs = 6 * 60 * 60 * 1000;
6
+ const defaultTimeoutMs = 3000;
7
+ const selfUpdateCacheFileName = 'self-update.json';
8
+ const selfUpdateCacheSchema = z
9
+ .object({
10
+ version: z.literal(1),
11
+ packageName: z.string().min(1),
12
+ currentVersion: z.string().min(1),
13
+ installKind: z.enum(['global', 'npx', 'development', 'unknown']),
14
+ status: z.enum(['up-to-date', 'update-available', 'check-failed']),
15
+ updateAvailable: z.boolean(),
16
+ latestVersion: z.string().min(1).optional(),
17
+ updateCommand: z.string().min(1).optional(),
18
+ checkedAt: z.string().datetime(),
19
+ message: z.string()
20
+ })
21
+ .strict();
22
+ export async function inspectManagerSelfUpdate(options) {
23
+ if (options.installKind !== 'global') {
24
+ return {
25
+ packageName: options.packageName,
26
+ currentVersion: options.currentVersion,
27
+ installKind: options.installKind,
28
+ status: 'unsupported-install',
29
+ updateAvailable: false,
30
+ fromCache: false,
31
+ message: 'Self-update checks are only shown for global installs.'
32
+ };
33
+ }
34
+ const managerStateDir = resolveUserPath(options.managerStateDir ?? (options.homeDir === undefined ? defaultManagerStateDir() : defaultManagerStateDir(options.homeDir)), options.homeDir);
35
+ const cachePath = path.join(managerStateDir, selfUpdateCacheFileName);
36
+ const now = options.now ?? new Date();
37
+ const cacheTtlMs = options.cacheTtlMs ?? defaultCacheTtlMs;
38
+ const cached = await loadFreshCache({
39
+ cachePath,
40
+ managerStateDir,
41
+ packageName: options.packageName,
42
+ currentVersion: options.currentVersion,
43
+ now,
44
+ cacheTtlMs,
45
+ forceRefresh: options.forceRefresh === true
46
+ });
47
+ if (cached !== undefined) {
48
+ return cacheToInspection(cached, true);
49
+ }
50
+ const inspection = await checkRegistryForUpdate(options, now);
51
+ await saveSelfUpdateCache(inspectionToCache(inspection), { cachePath, managerStateDir });
52
+ return inspection;
53
+ }
54
+ export function isNewerVersion(candidateVersion, currentVersion) {
55
+ return compareSemver(candidateVersion, currentVersion) > 0;
56
+ }
57
+ export function compareSemver(leftVersion, rightVersion) {
58
+ const left = parseSemver(leftVersion);
59
+ const right = parseSemver(rightVersion);
60
+ const coreComparison = compareNumber(left.major, right.major) ||
61
+ compareNumber(left.minor, right.minor) ||
62
+ compareNumber(left.patch, right.patch);
63
+ if (coreComparison !== 0) {
64
+ return coreComparison;
65
+ }
66
+ return comparePrerelease(left.prerelease, right.prerelease);
67
+ }
68
+ async function checkRegistryForUpdate(options, now) {
69
+ try {
70
+ const latestVersion = await fetchLatestVersion({
71
+ packageName: options.packageName,
72
+ fetch: options.fetch ?? globalThis.fetch,
73
+ timeoutMs: options.timeoutMs ?? defaultTimeoutMs
74
+ });
75
+ const updateAvailable = isNewerVersion(latestVersion, options.currentVersion);
76
+ const updateCommand = updateAvailable ? updateCommandFor(options.packageName) : undefined;
77
+ const checkedAt = now.toISOString();
78
+ return {
79
+ packageName: options.packageName,
80
+ currentVersion: options.currentVersion,
81
+ installKind: options.installKind,
82
+ status: updateAvailable ? 'update-available' : 'up-to-date',
83
+ updateAvailable,
84
+ latestVersion,
85
+ ...(updateCommand === undefined ? {} : { updateCommand }),
86
+ checkedAt,
87
+ fromCache: false,
88
+ message: updateAvailable ?
89
+ `A newer Corvus Skill Manager release is available: ${options.currentVersion} -> ${latestVersion}.` :
90
+ `Corvus Skill Manager ${options.currentVersion} is up to date.`
91
+ };
92
+ }
93
+ catch (error) {
94
+ return {
95
+ packageName: options.packageName,
96
+ currentVersion: options.currentVersion,
97
+ installKind: options.installKind,
98
+ status: 'check-failed',
99
+ updateAvailable: false,
100
+ checkedAt: now.toISOString(),
101
+ fromCache: false,
102
+ message: `Manager update check failed: ${formatError(error)}.`
103
+ };
104
+ }
105
+ }
106
+ async function fetchLatestVersion(options) {
107
+ if (options.fetch === undefined) {
108
+ throw new Error('fetch is not available in this Node runtime');
109
+ }
110
+ const controller = new AbortController();
111
+ const timeout = setTimeout(() => {
112
+ controller.abort();
113
+ }, options.timeoutMs);
114
+ try {
115
+ const response = await options.fetch(registryPackageUrl(options.packageName), {
116
+ headers: {
117
+ accept: 'application/vnd.npm.install-v1+json'
118
+ },
119
+ signal: controller.signal
120
+ });
121
+ if (!response.ok) {
122
+ throw new Error(`npm registry returned HTTP ${response.status}`);
123
+ }
124
+ const payload = await response.json();
125
+ const latestVersion = readLatestVersion(payload);
126
+ parseSemver(latestVersion);
127
+ return latestVersion;
128
+ }
129
+ finally {
130
+ clearTimeout(timeout);
131
+ }
132
+ }
133
+ function readLatestVersion(payload) {
134
+ if (payload !== null &&
135
+ typeof payload === 'object' &&
136
+ 'dist-tags' in payload &&
137
+ payload['dist-tags'] !== null &&
138
+ typeof payload['dist-tags'] === 'object' &&
139
+ 'latest' in payload['dist-tags'] &&
140
+ typeof payload['dist-tags'].latest === 'string') {
141
+ return payload['dist-tags'].latest;
142
+ }
143
+ throw new Error('npm registry response did not include dist-tags.latest');
144
+ }
145
+ function registryPackageUrl(packageName) {
146
+ return `https://registry.npmjs.org/${encodeURIComponent(packageName)}`;
147
+ }
148
+ function updateCommandFor(packageName) {
149
+ return `npm install -g ${packageName}@latest`;
150
+ }
151
+ async function loadFreshCache(options) {
152
+ if (options.forceRefresh) {
153
+ return undefined;
154
+ }
155
+ const cache = await loadSelfUpdateCache(options.cachePath);
156
+ if (cache === undefined) {
157
+ return undefined;
158
+ }
159
+ if (cache.packageName !== options.packageName || cache.currentVersion !== options.currentVersion) {
160
+ return undefined;
161
+ }
162
+ const checkedAt = new Date(cache.checkedAt);
163
+ if (!Number.isFinite(checkedAt.getTime())) {
164
+ return undefined;
165
+ }
166
+ if (options.now.getTime() - checkedAt.getTime() > options.cacheTtlMs) {
167
+ return undefined;
168
+ }
169
+ assertPathInside(options.managerStateDir, options.cachePath);
170
+ return cache;
171
+ }
172
+ async function loadSelfUpdateCache(cachePath) {
173
+ try {
174
+ const rawCache = await fs.readFile(cachePath, 'utf8');
175
+ return selfUpdateCacheSchema.parse(JSON.parse(rawCache));
176
+ }
177
+ catch (error) {
178
+ if (isMissingFileError(error)) {
179
+ return undefined;
180
+ }
181
+ return undefined;
182
+ }
183
+ }
184
+ async function saveSelfUpdateCache(cache, options) {
185
+ assertPathInside(options.managerStateDir, options.cachePath);
186
+ await fs.mkdir(path.dirname(options.cachePath), { recursive: true });
187
+ await fs.writeFile(options.cachePath, `${JSON.stringify(cache, null, 2)}\n`, 'utf8');
188
+ }
189
+ function cacheToInspection(cache, fromCache) {
190
+ return {
191
+ packageName: cache.packageName,
192
+ currentVersion: cache.currentVersion,
193
+ installKind: cache.installKind,
194
+ status: cache.status,
195
+ updateAvailable: cache.updateAvailable,
196
+ ...(cache.latestVersion === undefined ? {} : { latestVersion: cache.latestVersion }),
197
+ ...(cache.updateCommand === undefined ? {} : { updateCommand: cache.updateCommand }),
198
+ checkedAt: cache.checkedAt,
199
+ fromCache,
200
+ message: cache.message
201
+ };
202
+ }
203
+ function inspectionToCache(inspection) {
204
+ if (inspection.status !== 'up-to-date' &&
205
+ inspection.status !== 'update-available' &&
206
+ inspection.status !== 'check-failed') {
207
+ throw new Error(`Cannot cache unsupported self-update status: ${inspection.status}.`);
208
+ }
209
+ return selfUpdateCacheSchema.parse({
210
+ version: 1,
211
+ packageName: inspection.packageName,
212
+ currentVersion: inspection.currentVersion,
213
+ installKind: inspection.installKind,
214
+ status: inspection.status,
215
+ updateAvailable: inspection.updateAvailable,
216
+ ...(inspection.latestVersion === undefined ? {} : { latestVersion: inspection.latestVersion }),
217
+ ...(inspection.updateCommand === undefined ? {} : { updateCommand: inspection.updateCommand }),
218
+ checkedAt: inspection.checkedAt ?? new Date().toISOString(),
219
+ message: inspection.message
220
+ });
221
+ }
222
+ function parseSemver(version) {
223
+ const match = /^v?(\d+)\.(\d+)\.(\d+)(?:-([0-9A-Za-z.-]+))?(?:\+[0-9A-Za-z.-]+)?$/.exec(version.trim());
224
+ if (match === null) {
225
+ throw new Error(`Invalid semver version: ${version}`);
226
+ }
227
+ const [, major, minor, patch, prerelease] = match;
228
+ return {
229
+ major: Number(major),
230
+ minor: Number(minor),
231
+ patch: Number(patch),
232
+ prerelease: prerelease === undefined ? [] : prerelease.split('.')
233
+ };
234
+ }
235
+ function comparePrerelease(left, right) {
236
+ if (left.length === 0 && right.length === 0) {
237
+ return 0;
238
+ }
239
+ if (left.length === 0) {
240
+ return 1;
241
+ }
242
+ if (right.length === 0) {
243
+ return -1;
244
+ }
245
+ const length = Math.max(left.length, right.length);
246
+ for (let index = 0; index < length; index += 1) {
247
+ const leftPart = left[index];
248
+ const rightPart = right[index];
249
+ if (leftPart === undefined) {
250
+ return -1;
251
+ }
252
+ if (rightPart === undefined) {
253
+ return 1;
254
+ }
255
+ const comparison = comparePrereleasePart(leftPart, rightPart);
256
+ if (comparison !== 0) {
257
+ return comparison;
258
+ }
259
+ }
260
+ return 0;
261
+ }
262
+ function comparePrereleasePart(left, right) {
263
+ const leftNumber = /^\d+$/.test(left) ? Number(left) : undefined;
264
+ const rightNumber = /^\d+$/.test(right) ? Number(right) : undefined;
265
+ if (leftNumber !== undefined && rightNumber !== undefined) {
266
+ return compareNumber(leftNumber, rightNumber);
267
+ }
268
+ if (leftNumber !== undefined) {
269
+ return -1;
270
+ }
271
+ if (rightNumber !== undefined) {
272
+ return 1;
273
+ }
274
+ return left.localeCompare(right);
275
+ }
276
+ function compareNumber(left, right) {
277
+ if (left > right) {
278
+ return 1;
279
+ }
280
+ if (left < right) {
281
+ return -1;
282
+ }
283
+ return 0;
284
+ }
285
+ function formatError(error) {
286
+ if (error instanceof Error && error.name === 'AbortError') {
287
+ return 'request timed out';
288
+ }
289
+ return error instanceof Error ? error.message : String(error);
290
+ }
291
+ function isMissingFileError(error) {
292
+ return (error instanceof Error &&
293
+ 'code' in error &&
294
+ error.code === 'ENOENT');
295
+ }
296
+ //# sourceMappingURL=managerPackageUpdate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"managerPackageUpdate.js","sourceRoot":"","sources":["../../src/selfUpdate/managerPackageUpdate.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@corvus-tools/skill-manager-core",
3
- "version": "0.2.0",
3
+ "version": "0.3.1",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "description": "Core config, discovery, planning, apply, status, and doctor logic for Corvus Skill Manager.",