@adhdev/daemon-core 0.9.82-rc.460 → 0.9.82-rc.461
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 +7 -0
- package/dist/detection/cli-detector.d.ts +17 -0
- package/dist/git/git-commands.d.ts +14 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +461 -22
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +459 -21
- package/dist/index.mjs.map +1 -1
- package/dist/mesh/mesh-events-pending.d.ts +43 -1
- package/dist/mesh/mesh-events.d.ts +1 -1
- package/dist/mesh/mesh-node-identity.d.ts +4 -0
- package/dist/mesh/mesh-runtime-store.d.ts +17 -0
- package/dist/repo-mesh-types.d.ts +80 -0
- package/package.json +3 -3
- package/src/boot/daemon-lifecycle.ts +15 -2
- package/src/commands/high-family/mesh-status.ts +10 -0
- package/src/config/mesh-config.ts +13 -0
- package/src/detection/cli-detector.ts +66 -0
- package/src/git/git-commands.ts +35 -2
- package/src/index.ts +1 -1
- package/src/mesh/coordinator-prompt.ts +19 -1
- package/src/mesh/mesh-event-forwarding.ts +19 -1
- package/src/mesh/mesh-events-pending.ts +371 -5
- package/src/mesh/mesh-events.ts +2 -0
- package/src/mesh/mesh-node-identity.ts +77 -6
- package/src/mesh/mesh-reconcile-loop.ts +8 -1
- package/src/mesh/mesh-runtime-store.ts +30 -0
- package/src/repo-mesh-types.ts +79 -0
package/src/repo-mesh-types.ts
CHANGED
|
@@ -703,6 +703,23 @@ export interface RepoMeshNodeCapabilities {
|
|
|
703
703
|
canPush?: boolean;
|
|
704
704
|
readOnly?: boolean;
|
|
705
705
|
userLabels?: string[];
|
|
706
|
+
/**
|
|
707
|
+
* Detected provider CLI/ACP versions on this node, keyed by provider id
|
|
708
|
+
* (e.g. `{ 'claude-cli': '1.2.3', 'codex-cli': '0.9.0' }`). Populated from the
|
|
709
|
+
* same CLI detection pass that feeds providerPriority (see buildProviderVersions
|
|
710
|
+
* over detectCLIs' CLIInfo[]). Absent/undefined when detection has not run or a
|
|
711
|
+
* daemon predates the exposure — never a hard signal, purely observability so a
|
|
712
|
+
* coordinator can spot a provider-version skew across nodes before dispatch.
|
|
713
|
+
* Additive: existing status consumers ignore it.
|
|
714
|
+
*/
|
|
715
|
+
providerVersions?: Record<string, string>;
|
|
716
|
+
/**
|
|
717
|
+
* The daemon build version (package.json version baked into the running bundle,
|
|
718
|
+
* see getDaemonBuildInfo().version) that detected the above providerVersions.
|
|
719
|
+
* Complements the commit-level daemonBuild stamp with a human-readable version
|
|
720
|
+
* for node-card rendering. Absent when the build define was not injected.
|
|
721
|
+
*/
|
|
722
|
+
daemonBuildVersion?: string;
|
|
706
723
|
}
|
|
707
724
|
|
|
708
725
|
export interface DetectedCommand {
|
|
@@ -849,6 +866,19 @@ export interface LocalMeshNodeEntry {
|
|
|
849
866
|
*/
|
|
850
867
|
reportedPlatform?: string;
|
|
851
868
|
reportedArch?: string;
|
|
869
|
+
/**
|
|
870
|
+
* Live, self-healed provider CLI/ACP versions reported by the daemon that owns
|
|
871
|
+
* this node's workspace, carried on the git_status envelope (reporterProviderVersions)
|
|
872
|
+
* and persisted by the coordinator on each direct git probe — mirrors the
|
|
873
|
+
* reportedPlatform/reportedArch self-heal pattern. Auto-detected truth, overwritten
|
|
874
|
+
* by the next report so a stale value never sticks. Absent until the first probe
|
|
875
|
+
* carrying versions succeeds. Surfaced as RepoMeshNodeStatus.providerVersions.
|
|
876
|
+
*/
|
|
877
|
+
reportedProviderVersions?: Record<string, string>;
|
|
878
|
+
/** Live, self-healed daemon build version (getDaemonBuildInfo().version) of the
|
|
879
|
+
* owning daemon, carried on the git_status envelope (reporterDaemonBuildVersion)
|
|
880
|
+
* alongside the provider versions. Absent until first reported. */
|
|
881
|
+
reportedDaemonBuildVersion?: string;
|
|
852
882
|
/**
|
|
853
883
|
* The operator-set machine nickname (config.machineNickname) of the daemon
|
|
854
884
|
* that owns this node's workspace. The local coordinator stamps its own
|
|
@@ -974,6 +1004,44 @@ export interface RepoMeshStatus {
|
|
|
974
1004
|
* optional. Mirrors the MCP `mesh_status` tool's `magiActivity` field.
|
|
975
1005
|
*/
|
|
976
1006
|
magiActivity?: MeshMagiActivitySummary[];
|
|
1007
|
+
/**
|
|
1008
|
+
* T7 (visibility 7-2b): provider CLI/ACP version skew across nodes. Each entry
|
|
1009
|
+
* names a provider running ≥2 distinct versions across the nodes that reported
|
|
1010
|
+
* it, with the node ids per version. Observational only — never a dispatch
|
|
1011
|
+
* blocker. Omitted when every reported provider is uniform (or none reported).
|
|
1012
|
+
* Mirrors the MCP `mesh_status` tool's `providerVersionSkew` field.
|
|
1013
|
+
*/
|
|
1014
|
+
providerVersionSkew?: MeshProviderVersionSkew[];
|
|
1015
|
+
/** Human-readable companion warning to providerVersionSkew. Omitted when no skew. */
|
|
1016
|
+
providerVersionSkewWarning?: string;
|
|
1017
|
+
/**
|
|
1018
|
+
* T7 (B4): mesh-protocol-v2 adoption metrics for the batch of pending events
|
|
1019
|
+
* surfaced in the drain backing this status. Snapshot, not a durable counter.
|
|
1020
|
+
* Omitted when nothing was drained. Mirrors the MCP tool's meshProtocolMetrics.
|
|
1021
|
+
*/
|
|
1022
|
+
meshProtocolMetrics?: MeshProtocolMetrics;
|
|
1023
|
+
}
|
|
1024
|
+
|
|
1025
|
+
/** One provider's version skew across mesh nodes (see RepoMeshStatus.providerVersionSkew). */
|
|
1026
|
+
export interface MeshProviderVersionSkew {
|
|
1027
|
+
/** Provider id (e.g. 'claude-cli'). */
|
|
1028
|
+
provider: string;
|
|
1029
|
+
/** Each distinct detected version and the node ids running it. */
|
|
1030
|
+
versions: Array<{ version: string; nodeIds: string[] }>;
|
|
1031
|
+
}
|
|
1032
|
+
|
|
1033
|
+
/** Mesh-protocol-v2 adoption snapshot over one drain (see RepoMeshStatus.meshProtocolMetrics). */
|
|
1034
|
+
export interface MeshProtocolMetrics {
|
|
1035
|
+
/** Total pending events surfaced in the drain. */
|
|
1036
|
+
total: number;
|
|
1037
|
+
/** Count carrying a v2 envelope (protocolVersion '2.0'). */
|
|
1038
|
+
v2: number;
|
|
1039
|
+
/** Count still on v1 (unstamped). */
|
|
1040
|
+
v1: number;
|
|
1041
|
+
/** v2/total, rounded to 2 decimals (0 when total is 0). */
|
|
1042
|
+
v2Ratio: number;
|
|
1043
|
+
/** Scope breakdown of the v2 events (unicast/broadcast/system/unspecified → count). */
|
|
1044
|
+
scopes: Record<string, number>;
|
|
977
1045
|
}
|
|
978
1046
|
|
|
979
1047
|
// RepoMeshSessionStatus shape now lives in @adhdev/mesh-shared (shared with
|
|
@@ -1026,6 +1094,17 @@ export interface RepoMeshNodeStatus {
|
|
|
1026
1094
|
*/
|
|
1027
1095
|
gitProbePending?: boolean;
|
|
1028
1096
|
providers: string[];
|
|
1097
|
+
/**
|
|
1098
|
+
* Detected provider CLI/ACP versions on this node, keyed by provider id. Mirrors
|
|
1099
|
+
* RepoMeshNodeCapabilities.providerVersions onto the status snapshot so the mesh
|
|
1100
|
+
* UI / coordinator prompt can render per-provider versions and flag a version
|
|
1101
|
+
* skew across nodes. Optional — omitted by daemons predating the exposure or when
|
|
1102
|
+
* detection has not run. Additive; existing consumers ignore it. */
|
|
1103
|
+
providerVersions?: Record<string, string>;
|
|
1104
|
+
/** Human-readable daemon build version (getDaemonBuildInfo().version) of the
|
|
1105
|
+
* daemon that owns this node. Complements the per-daemon commit stamp
|
|
1106
|
+
* (daemonBuilds) for node-card display. Omitted when unknown. */
|
|
1107
|
+
daemonBuildVersion?: string;
|
|
1029
1108
|
activeSessions: string[];
|
|
1030
1109
|
activeSessionDetails?: RepoMeshSessionStatus[];
|
|
1031
1110
|
providerPriority?: string[];
|