@adhdev/mesh-shared 1.0.82-rc.16 → 1.0.82-rc.17

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.
@@ -15,7 +15,7 @@
15
15
  * belongs in `CANONICAL_MESH_TOOL_NAMES`, and the coordinator/worker MCP modes
16
16
  * never publish them.
17
17
  */
18
- export declare const ASSISTANT_TOOLS: readonly ["projects", "environment", "assistant_action", "project_watch", "project_status", "project_send", "project_read", "project_add", "discover_repos", "memory", "skill_view", "skill_manage", "project_note"];
18
+ export declare const ASSISTANT_TOOLS: readonly ["projects", "environment", "assistant_action", "project_watch", "project_status", "project_send", "project_read", "project_add", "project_attach_remote", "discover_repos", "memory", "skill_view", "skill_manage", "project_note"];
19
19
  export type AssistantTool = typeof ASSISTANT_TOOLS[number];
20
20
  export declare function isAssistantTool(value: unknown): value is AssistantTool;
21
21
  /** Daemon verb names (§4.4 table + the five verbs below it). */
@@ -30,6 +30,7 @@ export declare const ASSISTANT_VERB: {
30
30
  readonly projectSend: "assistant_project_send";
31
31
  readonly projectRead: "assistant_project_read";
32
32
  readonly projectAdd: "assistant_project_add";
33
+ readonly projectAttachRemote: "assistant_project_attach_remote";
33
34
  readonly discoverRepos: "assistant_discover_repos";
34
35
  readonly memory: "assistant_memory";
35
36
  readonly skillView: "assistant_skill_view";
package/dist/index.d.ts CHANGED
@@ -43,3 +43,4 @@ export * from './mission-brief';
43
43
  export * from './keyed-doc-delta';
44
44
  export * from './provider-approval';
45
45
  export * from './provider-question';
46
+ export * from './launch-defaults';
package/dist/index.js CHANGED
@@ -57,6 +57,10 @@ __export(index_exports, {
57
57
  EVIDENCE_ENVELOPE_FIELD_SPECS: () => EVIDENCE_ENVELOPE_FIELD_SPECS,
58
58
  EVIDENCE_SOURCE_IDS: () => EVIDENCE_SOURCE_IDS,
59
59
  HOLD_REASONS: () => HOLD_REASONS,
60
+ LAUNCH_DEFAULTS_NEXT_LAUNCH_NOTE: () => LAUNCH_DEFAULTS_NEXT_LAUNCH_NOTE,
61
+ LAUNCH_DEFAULT_ERROR_CODES: () => LAUNCH_DEFAULT_ERROR_CODES,
62
+ LAUNCH_DEFAULT_ROLES: () => LAUNCH_DEFAULT_ROLES,
63
+ LAUNCH_DEFAULT_SOURCES: () => LAUNCH_DEFAULT_SOURCES,
60
64
  LIVENESS_RESULTS: () => LIVENESS_RESULTS,
61
65
  MAX_MESH_RECORD_STRING: () => MAX_MESH_RECORD_STRING,
62
66
  MAX_OWNED_PATHS: () => MAX_OWNED_PATHS,
@@ -251,6 +255,8 @@ __export(index_exports, {
251
255
  isFiniteNumber: () => isFiniteNumber,
252
256
  isIdleSessionState: () => isIdleSessionState,
253
257
  isInputEnvelopeWire: () => isInputEnvelopeWire,
258
+ isLaunchDefaultRole: () => isLaunchDefaultRole,
259
+ isLaunchDefaultSource: () => isLaunchDefaultSource,
254
260
  isMeshDeliveryMode: () => isMeshDeliveryMode,
255
261
  isMeshIndexQueryResponse: () => isMeshIndexQueryResponse,
256
262
  isMeshMissionStatusValue: () => isMeshMissionStatusValue,
@@ -691,9 +697,15 @@ function backfillCheckAt(quota, now) {
691
697
  function assessQuotaFreshness(quota, now = Date.now()) {
692
698
  const meta = quota.metadata;
693
699
  const kind = meta?.failureKind;
694
- const userMustAct = kind === "no-data" && quota.provider !== "codex-cli" || kind === "expired-token" && quota.provider === "antigravity-cli";
695
- if (userMustAct && hasReading(quota)) return { cue: "stale", userMustAct: true };
696
- if (meta?.lastGoodWindows !== true) return { userMustAct };
700
+ const userMustAct = kind === "no-data" && quota.provider !== "codex-cli" || kind === "expired-token" && ["grok-cli", "kimi", "antigravity-cli"].includes(quota.provider);
701
+ if (userMustAct) return hasReading(quota) ? { cue: "stale", userMustAct: true } : { userMustAct: true };
702
+ if (meta?.lastGoodWindows !== true) {
703
+ const measuredAt = finiteMs(quota.updatedAt);
704
+ if (hasReading(quota) && (measuredAt === void 0 || now - measuredAt >= QUOTA_BACKFILL_HORIZON_MS)) {
705
+ return { cue: "stale", userMustAct };
706
+ }
707
+ return { userMustAct };
708
+ }
697
709
  const retryAtMs = finiteMs(meta?.retryAtMs);
698
710
  const retryStopped = meta?.retryExhausted === true || retryAtMs !== void 0 && retryAtMs + QUOTA_RETRY_INFLIGHT_GRACE_MS < now;
699
711
  if (kind !== "no-data" && !retryStopped) return { cue: "refreshing", userMustAct: false };
@@ -1095,6 +1107,7 @@ var CANONICAL_MESH_TOOL_NAMES = [
1095
1107
  "mesh_list_pending_approvals",
1096
1108
  "mesh_create",
1097
1109
  "mesh_add_node",
1110
+ "mesh_attach_remote",
1098
1111
  "mesh_clone_node",
1099
1112
  "mesh_remove_node",
1100
1113
  "mesh_cleanup_worktree_nodes",
@@ -2079,6 +2092,7 @@ var ASSISTANT_TOOLS = [
2079
2092
  "project_send",
2080
2093
  "project_read",
2081
2094
  "project_add",
2095
+ "project_attach_remote",
2082
2096
  "discover_repos",
2083
2097
  "memory",
2084
2098
  "skill_view",
@@ -2101,6 +2115,7 @@ var ASSISTANT_VERB = {
2101
2115
  projectSend: "assistant_project_send",
2102
2116
  projectRead: "assistant_project_read",
2103
2117
  projectAdd: "assistant_project_add",
2118
+ projectAttachRemote: "assistant_project_attach_remote",
2104
2119
  discoverRepos: "assistant_discover_repos",
2105
2120
  memory: "assistant_memory",
2106
2121
  skillView: "assistant_skill_view",
@@ -2123,13 +2138,14 @@ var ASSISTANT_TOOL_VERBS = {
2123
2138
  project_send: ASSISTANT_VERB.projectSend,
2124
2139
  project_read: ASSISTANT_VERB.projectRead,
2125
2140
  project_add: ASSISTANT_VERB.projectAdd,
2141
+ project_attach_remote: ASSISTANT_VERB.projectAttachRemote,
2126
2142
  discover_repos: ASSISTANT_VERB.discoverRepos,
2127
2143
  memory: ASSISTANT_VERB.memory,
2128
2144
  skill_view: ASSISTANT_VERB.skillView,
2129
2145
  skill_manage: ASSISTANT_VERB.skillManage,
2130
2146
  project_note: ASSISTANT_VERB.projectNote
2131
2147
  };
2132
- var ASSISTANT_WRITE_TOOLS = ["project_watch", "assistant_action", "memory", "skill_manage", "project_note", "project_send", "project_add"];
2148
+ var ASSISTANT_WRITE_TOOLS = ["project_watch", "assistant_action", "memory", "skill_manage", "project_note", "project_send", "project_add", "project_attach_remote"];
2133
2149
  var ASSISTANT_OWNER_VERBS = [
2134
2150
  ASSISTANT_VERB.executionSettings,
2135
2151
  ASSISTANT_VERB.stagedResolve,
@@ -3894,6 +3910,35 @@ function isProviderQuestionBinding(value) {
3894
3910
  if (["sessionId", "generation", "threadId", "turnId", "itemId"].some((key) => typeof b[key] !== "string" || !b[key].trim())) return false;
3895
3911
  return b.transport === "codex_async" ? b.requestId === void 0 : typeof b.requestId === "string" && !!b.requestId.trim() || typeof b.requestId === "number" && Number.isFinite(b.requestId);
3896
3912
  }
3913
+
3914
+ // src/launch-defaults.ts
3915
+ var LAUNCH_DEFAULT_ROLES = ["assistant", "coordinator"];
3916
+ var LAUNCH_DEFAULT_SOURCES = ["user", "stored_default", "project_default", "provider_default"];
3917
+ var LAUNCH_DEFAULTS_NEXT_LAUNCH_NOTE = "Applies to the next launch; running sessions are unchanged.";
3918
+ function isLaunchDefaultRole(value) {
3919
+ return typeof value === "string" && LAUNCH_DEFAULT_ROLES.includes(value);
3920
+ }
3921
+ function isLaunchDefaultSource(value) {
3922
+ return typeof value === "string" && LAUNCH_DEFAULT_SOURCES.includes(value);
3923
+ }
3924
+ var LAUNCH_DEFAULT_ERROR_CODES = [
3925
+ "invalid_args",
3926
+ "launch_default_required",
3927
+ "launch_default_unavailable",
3928
+ "launch_selection_invalid",
3929
+ "launch_default_invalid",
3930
+ "revision_conflict",
3931
+ "store_unavailable",
3932
+ "store_busy",
3933
+ "persistence_failed",
3934
+ "project_not_found",
3935
+ "project_ambiguous",
3936
+ "project_not_hosted",
3937
+ "project_storage_unavailable",
3938
+ "staging_unavailable",
3939
+ "staging_failed",
3940
+ "review_turn_tool_denied"
3941
+ ];
3897
3942
  // Annotate the CommonJS export names for ESM import in node:
3898
3943
  0 && (module.exports = {
3899
3944
  ASSISTANT_OWNER_VERBS,
@@ -3933,6 +3978,10 @@ function isProviderQuestionBinding(value) {
3933
3978
  EVIDENCE_ENVELOPE_FIELD_SPECS,
3934
3979
  EVIDENCE_SOURCE_IDS,
3935
3980
  HOLD_REASONS,
3981
+ LAUNCH_DEFAULTS_NEXT_LAUNCH_NOTE,
3982
+ LAUNCH_DEFAULT_ERROR_CODES,
3983
+ LAUNCH_DEFAULT_ROLES,
3984
+ LAUNCH_DEFAULT_SOURCES,
3936
3985
  LIVENESS_RESULTS,
3937
3986
  MAX_MESH_RECORD_STRING,
3938
3987
  MAX_OWNED_PATHS,
@@ -4127,6 +4176,8 @@ function isProviderQuestionBinding(value) {
4127
4176
  isFiniteNumber,
4128
4177
  isIdleSessionState,
4129
4178
  isInputEnvelopeWire,
4179
+ isLaunchDefaultRole,
4180
+ isLaunchDefaultSource,
4130
4181
  isMeshDeliveryMode,
4131
4182
  isMeshIndexQueryResponse,
4132
4183
  isMeshMissionStatusValue,