@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.
package/dist/index.mjs CHANGED
@@ -325,9 +325,15 @@ function backfillCheckAt(quota, now) {
325
325
  function assessQuotaFreshness(quota, now = Date.now()) {
326
326
  const meta = quota.metadata;
327
327
  const kind = meta?.failureKind;
328
- const userMustAct = kind === "no-data" && quota.provider !== "codex-cli" || kind === "expired-token" && quota.provider === "antigravity-cli";
329
- if (userMustAct && hasReading(quota)) return { cue: "stale", userMustAct: true };
330
- if (meta?.lastGoodWindows !== true) return { userMustAct };
328
+ const userMustAct = kind === "no-data" && quota.provider !== "codex-cli" || kind === "expired-token" && ["grok-cli", "kimi", "antigravity-cli"].includes(quota.provider);
329
+ if (userMustAct) return hasReading(quota) ? { cue: "stale", userMustAct: true } : { userMustAct: true };
330
+ if (meta?.lastGoodWindows !== true) {
331
+ const measuredAt = finiteMs(quota.updatedAt);
332
+ if (hasReading(quota) && (measuredAt === void 0 || now - measuredAt >= QUOTA_BACKFILL_HORIZON_MS)) {
333
+ return { cue: "stale", userMustAct };
334
+ }
335
+ return { userMustAct };
336
+ }
331
337
  const retryAtMs = finiteMs(meta?.retryAtMs);
332
338
  const retryStopped = meta?.retryExhausted === true || retryAtMs !== void 0 && retryAtMs + QUOTA_RETRY_INFLIGHT_GRACE_MS < now;
333
339
  if (kind !== "no-data" && !retryStopped) return { cue: "refreshing", userMustAct: false };
@@ -729,6 +735,7 @@ var CANONICAL_MESH_TOOL_NAMES = [
729
735
  "mesh_list_pending_approvals",
730
736
  "mesh_create",
731
737
  "mesh_add_node",
738
+ "mesh_attach_remote",
732
739
  "mesh_clone_node",
733
740
  "mesh_remove_node",
734
741
  "mesh_cleanup_worktree_nodes",
@@ -1713,6 +1720,7 @@ var ASSISTANT_TOOLS = [
1713
1720
  "project_send",
1714
1721
  "project_read",
1715
1722
  "project_add",
1723
+ "project_attach_remote",
1716
1724
  "discover_repos",
1717
1725
  "memory",
1718
1726
  "skill_view",
@@ -1735,6 +1743,7 @@ var ASSISTANT_VERB = {
1735
1743
  projectSend: "assistant_project_send",
1736
1744
  projectRead: "assistant_project_read",
1737
1745
  projectAdd: "assistant_project_add",
1746
+ projectAttachRemote: "assistant_project_attach_remote",
1738
1747
  discoverRepos: "assistant_discover_repos",
1739
1748
  memory: "assistant_memory",
1740
1749
  skillView: "assistant_skill_view",
@@ -1757,13 +1766,14 @@ var ASSISTANT_TOOL_VERBS = {
1757
1766
  project_send: ASSISTANT_VERB.projectSend,
1758
1767
  project_read: ASSISTANT_VERB.projectRead,
1759
1768
  project_add: ASSISTANT_VERB.projectAdd,
1769
+ project_attach_remote: ASSISTANT_VERB.projectAttachRemote,
1760
1770
  discover_repos: ASSISTANT_VERB.discoverRepos,
1761
1771
  memory: ASSISTANT_VERB.memory,
1762
1772
  skill_view: ASSISTANT_VERB.skillView,
1763
1773
  skill_manage: ASSISTANT_VERB.skillManage,
1764
1774
  project_note: ASSISTANT_VERB.projectNote
1765
1775
  };
1766
- var ASSISTANT_WRITE_TOOLS = ["project_watch", "assistant_action", "memory", "skill_manage", "project_note", "project_send", "project_add"];
1776
+ var ASSISTANT_WRITE_TOOLS = ["project_watch", "assistant_action", "memory", "skill_manage", "project_note", "project_send", "project_add", "project_attach_remote"];
1767
1777
  var ASSISTANT_OWNER_VERBS = [
1768
1778
  ASSISTANT_VERB.executionSettings,
1769
1779
  ASSISTANT_VERB.stagedResolve,
@@ -3528,6 +3538,35 @@ function isProviderQuestionBinding(value) {
3528
3538
  if (["sessionId", "generation", "threadId", "turnId", "itemId"].some((key) => typeof b[key] !== "string" || !b[key].trim())) return false;
3529
3539
  return b.transport === "codex_async" ? b.requestId === void 0 : typeof b.requestId === "string" && !!b.requestId.trim() || typeof b.requestId === "number" && Number.isFinite(b.requestId);
3530
3540
  }
3541
+
3542
+ // src/launch-defaults.ts
3543
+ var LAUNCH_DEFAULT_ROLES = ["assistant", "coordinator"];
3544
+ var LAUNCH_DEFAULT_SOURCES = ["user", "stored_default", "project_default", "provider_default"];
3545
+ var LAUNCH_DEFAULTS_NEXT_LAUNCH_NOTE = "Applies to the next launch; running sessions are unchanged.";
3546
+ function isLaunchDefaultRole(value) {
3547
+ return typeof value === "string" && LAUNCH_DEFAULT_ROLES.includes(value);
3548
+ }
3549
+ function isLaunchDefaultSource(value) {
3550
+ return typeof value === "string" && LAUNCH_DEFAULT_SOURCES.includes(value);
3551
+ }
3552
+ var LAUNCH_DEFAULT_ERROR_CODES = [
3553
+ "invalid_args",
3554
+ "launch_default_required",
3555
+ "launch_default_unavailable",
3556
+ "launch_selection_invalid",
3557
+ "launch_default_invalid",
3558
+ "revision_conflict",
3559
+ "store_unavailable",
3560
+ "store_busy",
3561
+ "persistence_failed",
3562
+ "project_not_found",
3563
+ "project_ambiguous",
3564
+ "project_not_hosted",
3565
+ "project_storage_unavailable",
3566
+ "staging_unavailable",
3567
+ "staging_failed",
3568
+ "review_turn_tool_denied"
3569
+ ];
3531
3570
  export {
3532
3571
  ASSISTANT_OWNER_VERBS,
3533
3572
  ASSISTANT_REVIEW_TURN_VERBS,
@@ -3566,6 +3605,10 @@ export {
3566
3605
  EVIDENCE_ENVELOPE_FIELD_SPECS,
3567
3606
  EVIDENCE_SOURCE_IDS,
3568
3607
  HOLD_REASONS,
3608
+ LAUNCH_DEFAULTS_NEXT_LAUNCH_NOTE,
3609
+ LAUNCH_DEFAULT_ERROR_CODES,
3610
+ LAUNCH_DEFAULT_ROLES,
3611
+ LAUNCH_DEFAULT_SOURCES,
3569
3612
  LIVENESS_RESULTS,
3570
3613
  MAX_MESH_RECORD_STRING,
3571
3614
  MAX_OWNED_PATHS,
@@ -3760,6 +3803,8 @@ export {
3760
3803
  isFiniteNumber,
3761
3804
  isIdleSessionState,
3762
3805
  isInputEnvelopeWire,
3806
+ isLaunchDefaultRole,
3807
+ isLaunchDefaultSource,
3763
3808
  isMeshDeliveryMode,
3764
3809
  isMeshIndexQueryResponse,
3765
3810
  isMeshMissionStatusValue,