@adhdev/daemon-core 0.9.82-rc.514 → 0.9.82-rc.515
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/config/mesh-config.d.ts +6 -1
- package/dist/git/git-commands.d.ts +15 -1
- package/dist/index.js +96 -17
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +96 -17
- package/dist/index.mjs.map +1 -1
- package/dist/mesh/mesh-node-identity.d.ts +3 -0
- package/dist/mesh/mesh-node-slots.d.ts +29 -2
- package/dist/repo-mesh-types.d.ts +51 -0
- package/package.json +3 -3
- package/src/boot/daemon-lifecycle.ts +14 -4
- package/src/config/mesh-config.ts +12 -0
- package/src/git/git-commands.ts +36 -3
- package/src/mesh/mesh-node-identity.ts +79 -4
- package/src/mesh/mesh-node-slots.ts +56 -3
- package/src/repo-mesh-types.ts +52 -0
package/dist/index.mjs
CHANGED
|
@@ -412,10 +412,10 @@ function readInjected(value) {
|
|
|
412
412
|
}
|
|
413
413
|
function getDaemonBuildInfo() {
|
|
414
414
|
if (cached) return cached;
|
|
415
|
-
const commit = readInjected(true ? "
|
|
416
|
-
const commitShort = readInjected(true ? "
|
|
417
|
-
const version = readInjected(true ? "0.9.82-rc.
|
|
418
|
-
const builtAt = readInjected(true ? "2026-07-
|
|
415
|
+
const commit = readInjected(true ? "6dbb06b08d25abd9e91c2f87d5aa3dee08bcc19c" : void 0) ?? "unknown";
|
|
416
|
+
const commitShort = readInjected(true ? "6dbb06b0" : void 0) ?? (commit !== "unknown" ? commit.slice(0, 7) : "unknown");
|
|
417
|
+
const version = readInjected(true ? "0.9.82-rc.515" : void 0) ?? readInjected(typeof process !== "undefined" ? process.env?.ADHDEV_PKG_VERSION : void 0) ?? "unknown";
|
|
418
|
+
const builtAt = readInjected(true ? "2026-07-13T09:44:33.291Z" : void 0);
|
|
419
419
|
cached = builtAt ? { commit, commitShort, version, builtAt } : { commit, commitShort, version };
|
|
420
420
|
return cached;
|
|
421
421
|
}
|
|
@@ -3530,6 +3530,9 @@ function updateNode(meshId, nodeId, opts) {
|
|
|
3530
3530
|
if (opts.reportedDaemonBuildVersion && opts.reportedDaemonBuildVersion.trim()) {
|
|
3531
3531
|
node.reportedDaemonBuildVersion = opts.reportedDaemonBuildVersion.trim();
|
|
3532
3532
|
}
|
|
3533
|
+
if (opts.reportedMemberState) {
|
|
3534
|
+
node.reportedMemberState = opts.reportedMemberState;
|
|
3535
|
+
}
|
|
3533
3536
|
if (opts.policy) node.policy = { ...node.policy, ...opts.policy };
|
|
3534
3537
|
if (Object.prototype.hasOwnProperty.call(opts, "capabilities")) {
|
|
3535
3538
|
const tags = normalizeCapabilityTags(opts.capabilities);
|
|
@@ -3666,6 +3669,8 @@ function normalizeProviderPriority(policy) {
|
|
|
3666
3669
|
function resolveNodeCapabilitySlots(node) {
|
|
3667
3670
|
const explicit = normalizeNodeCapabilitySlots(node?.policy?.slots);
|
|
3668
3671
|
if (explicit.length) return explicit;
|
|
3672
|
+
const mirrored = normalizeNodeCapabilitySlots(node?.reportedMemberState?.slots);
|
|
3673
|
+
if (mirrored.length) return mirrored;
|
|
3669
3674
|
let difficultyBrains;
|
|
3670
3675
|
try {
|
|
3671
3676
|
difficultyBrains = getDifficultyBrains();
|
|
@@ -3677,6 +3682,26 @@ function resolveNodeCapabilitySlots(node) {
|
|
|
3677
3682
|
difficultyBrains
|
|
3678
3683
|
});
|
|
3679
3684
|
}
|
|
3685
|
+
function resolveLocalNodeSlotsForWorkspace(workspace) {
|
|
3686
|
+
const ws = typeof workspace === "string" ? workspace.trim() : "";
|
|
3687
|
+
if (!ws) return [];
|
|
3688
|
+
let meshes;
|
|
3689
|
+
try {
|
|
3690
|
+
meshes = listMeshes();
|
|
3691
|
+
} catch {
|
|
3692
|
+
return [];
|
|
3693
|
+
}
|
|
3694
|
+
for (const mesh of Array.isArray(meshes) ? meshes : []) {
|
|
3695
|
+
for (const node of Array.isArray(mesh?.nodes) ? mesh.nodes : []) {
|
|
3696
|
+
const nodeWs = typeof node?.workspace === "string" ? node.workspace : "";
|
|
3697
|
+
if (nodeWs && meshWorkspacesEquivalent(nodeWs, ws)) {
|
|
3698
|
+
const slots = resolveNodeCapabilitySlots({ policy: node?.policy });
|
|
3699
|
+
if (slots.length) return slots;
|
|
3700
|
+
}
|
|
3701
|
+
}
|
|
3702
|
+
}
|
|
3703
|
+
return [];
|
|
3704
|
+
}
|
|
3680
3705
|
var init_mesh_node_slots = __esm({
|
|
3681
3706
|
"src/mesh/mesh-node-slots.ts"() {
|
|
3682
3707
|
"use strict";
|
|
@@ -14592,7 +14617,8 @@ function recordInlineMeshDirectGitTruth(node, git, source) {
|
|
|
14592
14617
|
reporterArch: null,
|
|
14593
14618
|
reporterMachineNickname: null,
|
|
14594
14619
|
reporterProviderVersions: null,
|
|
14595
|
-
reporterDaemonBuildVersion: null
|
|
14620
|
+
reporterDaemonBuildVersion: null,
|
|
14621
|
+
reportedMemberState: null
|
|
14596
14622
|
};
|
|
14597
14623
|
}
|
|
14598
14624
|
const checkedAt = readNumberValue(git.lastCheckedAt) ?? Date.now();
|
|
@@ -14620,16 +14646,47 @@ function recordInlineMeshDirectGitTruth(node, git, source) {
|
|
|
14620
14646
|
if (reporterArch) node.reportedArch = reporterArch;
|
|
14621
14647
|
const reporterMachineNickname = readStringValue(git.reporterMachineNickname) ?? null;
|
|
14622
14648
|
if (reporterMachineNickname) node.machineNickname = reporterMachineNickname;
|
|
14623
|
-
const
|
|
14649
|
+
const unified = normalizeReportedMemberState(git.reporterMemberState);
|
|
14650
|
+
const reporterProviderVersions = (unified?.providerVersions ? readProviderVersionsRecord(unified.providerVersions) : null) ?? readProviderVersionsRecord(git.reporterProviderVersions) ?? (isLocalSource ? readLocalReporterProviderVersions() : null);
|
|
14624
14651
|
if (reporterProviderVersions) node.reportedProviderVersions = reporterProviderVersions;
|
|
14625
|
-
const reporterDaemonBuildVersion = readStringValue(git.reporterDaemonBuildVersion) ?? (isLocalSource ? readLocalReporterDaemonBuildVersion() : null) ?? null;
|
|
14652
|
+
const reporterDaemonBuildVersion = readStringValue(unified?.daemonBuildVersion) ?? readStringValue(git.reporterDaemonBuildVersion) ?? (isLocalSource ? readLocalReporterDaemonBuildVersion() : null) ?? null;
|
|
14626
14653
|
if (reporterDaemonBuildVersion) node.reportedDaemonBuildVersion = reporterDaemonBuildVersion;
|
|
14654
|
+
if (!isLocalSource) {
|
|
14655
|
+
const reportedSlots = normalizeNodeCapabilitySlots(unified?.slots);
|
|
14656
|
+
const mirrored = {
|
|
14657
|
+
...reporterProviderVersions ? { providerVersions: reporterProviderVersions } : {},
|
|
14658
|
+
...reporterDaemonBuildVersion ? { daemonBuildVersion: reporterDaemonBuildVersion } : {},
|
|
14659
|
+
...reportedSlots.length ? { slots: reportedSlots } : {},
|
|
14660
|
+
lastReportedAt: readNumberValue(unified?.lastReportedAt) ?? checkedAt
|
|
14661
|
+
};
|
|
14662
|
+
if (mirrored.providerVersions || mirrored.daemonBuildVersion || mirrored.slots) {
|
|
14663
|
+
node.reportedMemberState = mirrored;
|
|
14664
|
+
}
|
|
14665
|
+
}
|
|
14627
14666
|
return {
|
|
14628
14667
|
reporterPlatform,
|
|
14629
14668
|
reporterArch,
|
|
14630
14669
|
reporterMachineNickname,
|
|
14631
14670
|
reporterProviderVersions,
|
|
14632
|
-
reporterDaemonBuildVersion
|
|
14671
|
+
reporterDaemonBuildVersion,
|
|
14672
|
+
reportedMemberState: !isLocalSource ? node.reportedMemberState ?? null : null
|
|
14673
|
+
};
|
|
14674
|
+
}
|
|
14675
|
+
function normalizeReportedMemberState(value) {
|
|
14676
|
+
if (!value || typeof value !== "object" || Array.isArray(value)) return null;
|
|
14677
|
+
const raw = value;
|
|
14678
|
+
const providerVersions = readProviderVersionsRecord(raw.providerVersions);
|
|
14679
|
+
const daemonBuildVersion = readStringValue(raw.daemonBuildVersion);
|
|
14680
|
+
const slots = normalizeNodeCapabilitySlots(raw.slots);
|
|
14681
|
+
const lastReportedAt = readNumberValue(raw.lastReportedAt);
|
|
14682
|
+
if (!providerVersions && !daemonBuildVersion && !slots.length && lastReportedAt === void 0) {
|
|
14683
|
+
return null;
|
|
14684
|
+
}
|
|
14685
|
+
return {
|
|
14686
|
+
...providerVersions ? { providerVersions } : {},
|
|
14687
|
+
...daemonBuildVersion ? { daemonBuildVersion } : {},
|
|
14688
|
+
...slots.length ? { slots } : {},
|
|
14689
|
+
...lastReportedAt !== void 0 ? { lastReportedAt } : {}
|
|
14633
14690
|
};
|
|
14634
14691
|
}
|
|
14635
14692
|
function readProviderVersionsRecord(value) {
|
|
@@ -14682,7 +14739,8 @@ function persistNodeReporterPlatform(meshSource, mesh, nodeId, reporter) {
|
|
|
14682
14739
|
const reportedMachineNickname = reporter.reporterMachineNickname ?? void 0;
|
|
14683
14740
|
const reportedProviderVersions = reporter.reporterProviderVersions ?? void 0;
|
|
14684
14741
|
const reportedDaemonBuildVersion = reporter.reporterDaemonBuildVersion ?? void 0;
|
|
14685
|
-
|
|
14742
|
+
const reportedMemberState = reporter.reportedMemberState ?? void 0;
|
|
14743
|
+
if (!reportedPlatform && !reportedArch && !reportedMachineNickname && !reportedProviderVersions && !reportedDaemonBuildVersion && !reportedMemberState) {
|
|
14686
14744
|
return;
|
|
14687
14745
|
}
|
|
14688
14746
|
void Promise.resolve().then(() => (init_mesh_config(), mesh_config_exports)).then(({ updateNode: updateNode2 }) => updateNode2(meshId, nodeId, {
|
|
@@ -14690,7 +14748,8 @@ function persistNodeReporterPlatform(meshSource, mesh, nodeId, reporter) {
|
|
|
14690
14748
|
reportedArch,
|
|
14691
14749
|
reportedMachineNickname,
|
|
14692
14750
|
reportedProviderVersions,
|
|
14693
|
-
reportedDaemonBuildVersion
|
|
14751
|
+
reportedDaemonBuildVersion,
|
|
14752
|
+
reportedMemberState
|
|
14694
14753
|
})).catch(() => {
|
|
14695
14754
|
});
|
|
14696
14755
|
}
|
|
@@ -15296,6 +15355,8 @@ async function probeRemoteMeshGitStatus(args) {
|
|
|
15296
15355
|
if (reporterProviderVersions) git.reporterProviderVersions = reporterProviderVersions;
|
|
15297
15356
|
const reporterDaemonBuildVersion = readStringValue(remoteResult?.reporterDaemonBuildVersion);
|
|
15298
15357
|
if (reporterDaemonBuildVersion) git.reporterDaemonBuildVersion = reporterDaemonBuildVersion;
|
|
15358
|
+
const reporterMemberState = normalizeReportedMemberState(remoteResult?.reporterMemberState);
|
|
15359
|
+
if (reporterMemberState) git.reporterMemberState = reporterMemberState;
|
|
15299
15360
|
return git;
|
|
15300
15361
|
}
|
|
15301
15362
|
function readMeshConnectionState(connection) {
|
|
@@ -29090,13 +29151,20 @@ async function handleGitCommand(command, args, services = defaultGitCommandServi
|
|
|
29090
29151
|
})();
|
|
29091
29152
|
const reporterVersions = (() => {
|
|
29092
29153
|
try {
|
|
29093
|
-
return services.getReporterProviderVersions?.() ?? {};
|
|
29154
|
+
return services.getReporterProviderVersions?.(workspace) ?? {};
|
|
29094
29155
|
} catch {
|
|
29095
29156
|
return {};
|
|
29096
29157
|
}
|
|
29097
29158
|
})();
|
|
29098
29159
|
const reporterProviderVersions = reporterVersions.providerVersions && Object.keys(reporterVersions.providerVersions).length > 0 ? reporterVersions.providerVersions : void 0;
|
|
29099
29160
|
const reporterDaemonBuildVersion = typeof reporterVersions.daemonBuildVersion === "string" && reporterVersions.daemonBuildVersion.trim() ? reporterVersions.daemonBuildVersion.trim() : void 0;
|
|
29161
|
+
const reporterSlots = Array.isArray(reporterVersions.slots) && reporterVersions.slots.length > 0 ? reporterVersions.slots : void 0;
|
|
29162
|
+
const reporterMemberState = reporterProviderVersions || reporterDaemonBuildVersion || reporterSlots ? {
|
|
29163
|
+
...reporterProviderVersions ? { providerVersions: reporterProviderVersions } : {},
|
|
29164
|
+
...reporterDaemonBuildVersion ? { daemonBuildVersion: reporterDaemonBuildVersion } : {},
|
|
29165
|
+
...reporterSlots ? { slots: reporterSlots } : {},
|
|
29166
|
+
lastReportedAt: Date.now()
|
|
29167
|
+
} : void 0;
|
|
29100
29168
|
return {
|
|
29101
29169
|
success: true,
|
|
29102
29170
|
status,
|
|
@@ -29104,7 +29172,8 @@ async function handleGitCommand(command, args, services = defaultGitCommandServi
|
|
|
29104
29172
|
reporterArch: process.arch,
|
|
29105
29173
|
...reporterMachineNickname ? { reporterMachineNickname } : {},
|
|
29106
29174
|
...reporterProviderVersions ? { reporterProviderVersions } : {},
|
|
29107
|
-
...reporterDaemonBuildVersion ? { reporterDaemonBuildVersion } : {}
|
|
29175
|
+
...reporterDaemonBuildVersion ? { reporterDaemonBuildVersion } : {},
|
|
29176
|
+
...reporterMemberState ? { reporterMemberState } : {}
|
|
29108
29177
|
};
|
|
29109
29178
|
}
|
|
29110
29179
|
case "git_diff_summary": {
|
|
@@ -70442,6 +70511,7 @@ var SessionRegistry = class {
|
|
|
70442
70511
|
init_logger();
|
|
70443
70512
|
init_runtime_defaults();
|
|
70444
70513
|
init_config();
|
|
70514
|
+
init_mesh_node_slots();
|
|
70445
70515
|
init_mesh_events();
|
|
70446
70516
|
init_mesh_reconcile_loop();
|
|
70447
70517
|
init_coordinator_registry();
|
|
@@ -70583,15 +70653,24 @@ async function initDaemonComponents(config) {
|
|
|
70583
70653
|
instanceManager,
|
|
70584
70654
|
sessionRegistry,
|
|
70585
70655
|
gitCommandServices: createDefaultGitCommandServices({
|
|
70586
|
-
// T7: fold this daemon's cached provider versions + build
|
|
70587
|
-
//
|
|
70588
|
-
//
|
|
70589
|
-
|
|
70656
|
+
// T7 + Direction-B: fold this daemon's cached provider versions + build
|
|
70657
|
+
// version AND its OWN resolved capability slots for the reported workspace
|
|
70658
|
+
// onto the git_status envelope so the mesh coordinator self-heals each
|
|
70659
|
+
// node's providerVersions AND its slot-cap chips (REMOTE-NODE-SLOT-CAP-CHIP
|
|
70660
|
+
// fix). Non-blocking: reads a TTL cache + local meshes.json, lazily
|
|
70661
|
+
// refreshed. The slots the reporter resolves are its LOCAL real policy's
|
|
70662
|
+
// slots — the coordinator mirrors them wholesale for a remote member whose
|
|
70663
|
+
// join-time policy copy is empty. (setDefaultProviderLoader is registered
|
|
70664
|
+
// above so getCachedProviderVersions/slot resolution is not empty — see
|
|
70665
|
+
// the 380556d3 version-chip lesson.)
|
|
70666
|
+
getReporterProviderVersions: (workspace) => {
|
|
70590
70667
|
const providerVersions = getCachedProviderVersions(providerLoader);
|
|
70591
70668
|
const daemonBuildVersion = getDaemonBuildInfo().version;
|
|
70669
|
+
const slots = resolveLocalNodeSlotsForWorkspace(workspace);
|
|
70592
70670
|
return {
|
|
70593
70671
|
...Object.keys(providerVersions).length > 0 ? { providerVersions } : {},
|
|
70594
|
-
...daemonBuildVersion && daemonBuildVersion !== "unknown" ? { daemonBuildVersion } : {}
|
|
70672
|
+
...daemonBuildVersion && daemonBuildVersion !== "unknown" ? { daemonBuildVersion } : {},
|
|
70673
|
+
...slots.length > 0 ? { slots } : {}
|
|
70595
70674
|
};
|
|
70596
70675
|
}
|
|
70597
70676
|
}),
|