sliccy 6.95.0 → 6.96.0

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.
Files changed (95) hide show
  1. package/dist/ui/.vite/manifest.json +143 -136
  2. package/dist/ui/assets/CLAUDE-CYnFKAQa.js +1 -0
  3. package/dist/ui/assets/{MEMORY-6FXnIBfJ.js → MEMORY-CJ-KH_KB.js} +3 -1
  4. package/dist/ui/assets/{account-store-GSUtqxaI.js → account-store-A0FEce7b.js} +1 -1
  5. package/dist/ui/assets/{account-store-BhCnPSyI.js → account-store-DVhMCA9p.js} +1 -1
  6. package/dist/ui/assets/{adobe-g1vcKnJl.js → adobe-DUjccP-7.js} +1 -1
  7. package/dist/ui/assets/{adobe-DxUP7R-d.js → adobe-Pj8kjFyN.js} +1 -1
  8. package/dist/ui/assets/{apply-layout-sETZ5Sl5.js → apply-layout-B2OE_AVT.js} +1 -1
  9. package/dist/ui/assets/{apps-fX4ac3Sa.js → apps-BZjRhetz.js} +1 -1
  10. package/dist/ui/assets/auto-mount-table-B5XJxoBU.js +1 -0
  11. package/dist/ui/assets/{azure-openai-DAHFjTKD.js → azure-openai-BJYQxTri.js} +1 -1
  12. package/dist/ui/assets/{azure-openai-9dnmfD7J.js → azure-openai-wM6pjmpZ.js} +1 -1
  13. package/dist/ui/assets/boot-stall-overlay-Pxp4nHfq.js +1 -0
  14. package/dist/ui/assets/{cerebras-BwfWi8At.js → cerebras-DEljNQJH.js} +1 -1
  15. package/dist/ui/assets/{cerebras-C4Qmxx8S.js → cerebras-Du2bEZJ9.js} +1 -1
  16. package/dist/ui/assets/{connect-surface-CCaLrmBB.js → connect-surface-LxdIQJSo.js} +1 -1
  17. package/dist/ui/assets/fs-5vJy5IQB.js +1 -0
  18. package/dist/ui/assets/fs-C58jPYKt.js +2 -0
  19. package/dist/ui/assets/{github-CfM_BZ0J.js → github-BCK0ogca.js} +1 -1
  20. package/dist/ui/assets/{github-WfmaZSB1.js → github-CnZAQcYf.js} +2 -2
  21. package/dist/ui/assets/{github-copilot-B948KHfq.js → github-copilot-A0h5ULDb.js} +1 -1
  22. package/dist/ui/assets/{github-copilot-CO0O0vBA.js → github-copilot-CNY6xA9M.js} +1 -1
  23. package/dist/ui/assets/{github-install-BBLEBzlS.js → github-install-Dvd5NYhp.js} +1 -1
  24. package/dist/ui/assets/{github-zip-Dw3gHZdG.js → github-zip-BulNtgAD.js} +1 -1
  25. package/dist/ui/assets/{js-realm-worker-Dhal5SHm.js → js-realm-worker-DroZKLXp.js} +1 -1
  26. package/dist/ui/assets/{kernel-worker-DcvAL5Ub.js → kernel-worker-Cq6nV36n.js} +620 -620
  27. package/dist/ui/assets/{local-llm-CSxYAZjf.js → local-llm-CIDDcfLX.js} +1 -1
  28. package/dist/ui/assets/{local-llm-BGefJ2Du.js → local-llm-ClDtz2MN.js} +1 -1
  29. package/dist/ui/assets/{main-DY_lBBok.js → main-BB4JLnQc.js} +3 -3
  30. package/dist/ui/assets/{mount-Bf_5cBTW.js → mount-D6rZgnah.js} +1 -1
  31. package/dist/ui/assets/{mount-BfxWCQzR.js → mount-J31-JCa7.js} +2 -2
  32. package/dist/ui/assets/mount-index-CD1UKs2l.js +1 -0
  33. package/dist/ui/assets/mount-recovery-DY3IAu8U.js +2 -0
  34. package/dist/ui/assets/{new-session-kC1XtaRr.js → new-session-CWOsjw9n.js} +2 -2
  35. package/dist/ui/assets/{oauth-bootstrap-CJVuTmxu.js → oauth-bootstrap-IRcFGKe4.js} +2 -2
  36. package/dist/ui/assets/{openai-codex-D69OL-MZ.js → openai-codex-6-g9ciT3.js} +1 -1
  37. package/dist/ui/assets/{openai-codex-BZ3ewGfh.js → openai-codex-81yHy97e.js} +1 -1
  38. package/dist/ui/assets/{openrouter-DVPoELfT.js → openrouter-8Y2oytiG.js} +1 -1
  39. package/dist/ui/assets/{openrouter-DEd1chZL.js → openrouter-BDsIbH3L.js} +1 -1
  40. package/dist/ui/assets/{openrouter-oauth-CCtcnVly.js → openrouter-oauth-D3haBpEm.js} +1 -1
  41. package/dist/ui/assets/{openrouter-oauth-KP7t71oO.js → openrouter-oauth-DBk_tVF9.js} +1 -1
  42. package/dist/ui/assets/{panel-rpc-handlers-BqwmsCws.js → panel-rpc-handlers-CajeQFUT.js} +2 -2
  43. package/dist/ui/assets/{panelize-shell-DOvb-sxJ.js → panelize-shell-C2n0OG-k.js} +1 -1
  44. package/dist/ui/assets/{provider-R6QLwXMS.js → provider-ZPIpCQkE.js} +1 -1
  45. package/dist/ui/assets/{provider-CeVycP8q.js → provider-bUNCmvb6.js} +2 -2
  46. package/dist/ui/assets/{provider-settings-z1RnIMak.js → provider-settings-CMxxnGom.js} +1 -1
  47. package/dist/ui/assets/{provider-settings-_LGqvCx4.js → provider-settings-OAxGq_Z7.js} +1 -1
  48. package/dist/ui/assets/provider-store-access-CA1L4e73.js +1 -0
  49. package/dist/ui/assets/{provider-store-access-CNpjo4Pu.js → provider-store-access-RJd9RtyK.js} +2 -2
  50. package/dist/ui/assets/{providers-B8PnX0s0.js → providers-BKN9lLsz.js} +1 -1
  51. package/dist/ui/assets/{providers-5qGOZlaI.js → providers-Gkrm8AED.js} +2 -2
  52. package/dist/ui/assets/{quick-llm-ETQ9lp8j.js → quick-llm-CJNPn8Zb.js} +1 -1
  53. package/dist/ui/assets/{recovery-screen-C5pgULJH.js → recovery-screen-OXssSJOU.js} +1 -1
  54. package/dist/ui/assets/{redirect-uri-DHzUeYWl.js → redirect-uri-Bd1tnVvz.js} +1 -1
  55. package/dist/ui/assets/{session-freezer-Bb_W4Rc7.js → session-freezer-42-NF361.js} +12 -10
  56. package/dist/ui/assets/{setup-feature-flags-remote-B2__wkl-.js → setup-feature-flags-remote-i2zyUcsS.js} +1 -1
  57. package/dist/ui/assets/{setup-standalone-prelude-BaKiyKyf.js → setup-standalone-prelude-C6hv59Am.js} +1 -1
  58. package/dist/ui/assets/{setup-sudo-DxmKfijp.js → setup-sudo-Cxr4tHkv.js} +2 -2
  59. package/dist/ui/assets/sidecar-repair-431vRT2V.js +1 -0
  60. package/dist/ui/assets/sidecar-repair-CIHuOk7H.js +1 -0
  61. package/dist/ui/assets/{skills-VyN-pzKb.js → skills-B5BKJ4RN.js} +1 -1
  62. package/dist/ui/assets/slicc-version-BSIqo3Cc.js +1 -0
  63. package/dist/ui/assets/{src-Ci8SZIla.js → src-Bw7lN3n5.js} +424 -293
  64. package/dist/ui/assets/{store-D-4F2Mj8.js → store-B_gtJ4nm.js} +1 -1
  65. package/dist/ui/assets/{store-CBnBiuHv.js → store-Cv1gmgAN.js} +1 -1
  66. package/dist/ui/assets/{sudo-CZclVY4T.js → sudo-CbS1q1Rs.js} +1 -1
  67. package/dist/ui/assets/{upgrade-detection-B5gqejfR.js → upgrade-detection-BwSl4ALY.js} +1 -1
  68. package/dist/ui/assets/{wc-attach-C09OlJqx.js → wc-attach-CtIH1DsM.js} +2 -2
  69. package/dist/ui/assets/{wc-extension-CnL__-ZP.js → wc-extension-D1K78QrG.js} +2 -2
  70. package/dist/ui/assets/{wc-float-label-CoIx3npc.js → wc-float-label-Bj-0-MZA.js} +1 -1
  71. package/dist/ui/assets/{wc-floatbar-online-CGAdYrCH.js → wc-floatbar-online-Do-_H9l4.js} +1 -1
  72. package/dist/ui/assets/{wc-follower-CaqKIl8P.js → wc-follower-C6oAhGOW.js} +3 -3
  73. package/dist/ui/assets/wc-live-t888Aicz.js +8 -0
  74. package/dist/ui/assets/{wc-nav-Bzl9_sX2.js → wc-nav-9NaWOn0Z.js} +2 -2
  75. package/dist/ui/assets/{wc-onboarding-CbWk07xi.js → wc-onboarding-C9lJoj0p.js} +2 -2
  76. package/dist/ui/assets/{wc-placeholder-fQWwkHGA.js → wc-placeholder-CSaQKlWG.js} +2 -2
  77. package/dist/ui/assets/{wc-settings-DGwrCurV.js → wc-settings-CTsWcSxo.js} +2 -2
  78. package/dist/ui/assets/{wc-shell-IpPVuuc6.js → wc-shell-D6sH-4BU.js} +3 -3
  79. package/dist/ui/assets/{wc-sprinkles-BKzPVR6r.js → wc-sprinkles-BsEUT4dc.js} +2 -2
  80. package/dist/ui/assets/{wc-tray-CA7IulH7.js → wc-tray-BYmJ2LEt.js} +2 -2
  81. package/dist/ui/assets/{xai-grok-Cm5o1Yxt.js → xai-grok-BM6XkmdI.js} +1 -1
  82. package/dist/ui/assets/{xai-grok-BfuNbJm5.js → xai-grok-Cwvo9Aos.js} +1 -1
  83. package/dist/ui/index.html +6 -6
  84. package/dist/ui/packages/webapp/index.html +6 -6
  85. package/package.json +1 -1
  86. package/dist/ui/assets/CLAUDE-4LHXSyPA.js +0 -1
  87. package/dist/ui/assets/auto-mount-table-CdyPAwVL.js +0 -1
  88. package/dist/ui/assets/fs-D7Uswh6y.js +0 -1
  89. package/dist/ui/assets/fs-DZiQjF2A.js +0 -2
  90. package/dist/ui/assets/mount-recovery-Bj0jsXRx.js +0 -2
  91. package/dist/ui/assets/provider-store-access-DuDnjv9p.js +0 -1
  92. package/dist/ui/assets/sidecar-repair-B1MVRrrn.js +0 -1
  93. package/dist/ui/assets/sidecar-repair-DVAMAYc7.js +0 -1
  94. package/dist/ui/assets/slicc-version-DPRB7YAv.js +0 -1
  95. package/dist/ui/assets/wc-live-CzL-SWZM.js +0 -8
@@ -6890,411 +6890,542 @@ slicc-monitor {
6890
6890
  color: var(--ink);
6891
6891
  background: var(--bg);
6892
6892
  overflow: auto;
6893
- padding: 16px;
6894
6893
  container: monitor / inline-size;
6895
- --monitor-border: color-mix(in srgb, var(--line) 55%, var(--ink));
6896
- }
6897
- .monitor-summary {
6894
+ --monitor-ok: var(--green);
6895
+ --monitor-warn: var(--waffle);
6896
+ --monitor-bad: var(--red);
6897
+ }
6898
+ .dark slicc-monitor,
6899
+ [data-theme="dark"] slicc-monitor {
6900
+ /*
6901
+ * Status hues are re-stepped for the dark surface rather than flipped:
6902
+ * --green / --red measure 4.06:1 and 3.14:1 on #161618, both under 4.5:1
6903
+ * for the small status text they carry. These sit at ~6-7:1.
6904
+ */
6905
+ --monitor-ok: #35b45c;
6906
+ --monitor-warn: #e0a03a;
6907
+ --monitor-bad: #ef6a52;
6908
+ }
6909
+ .monitor {
6898
6910
  display: grid;
6899
- gap: 16px;
6900
- padding: 16px;
6901
- margin: -16px -16px 16px;
6902
- border-bottom: 1px solid var(--line);
6903
- background: color-mix(in srgb, var(--canvas) 94%, var(--ctx));
6904
- box-shadow: var(--shadow-pane);
6905
- position: sticky;
6906
- top: -16px;
6907
- z-index: 2;
6911
+ gap: 18px;
6912
+ padding: 18px;
6913
+ box-sizing: border-box;
6908
6914
  }
6909
- .monitor-summary__topline {
6915
+
6916
+ /* header */
6917
+ .monitor-head {
6910
6918
  display: flex;
6911
6919
  align-items: center;
6912
6920
  gap: 12px;
6913
6921
  }
6914
- .monitor-summary__mark {
6922
+ .monitor-head__mark {
6915
6923
  display: inline-flex;
6916
6924
  align-items: center;
6917
6925
  justify-content: center;
6918
- width: 40px;
6919
- height: 40px;
6926
+ width: 36px;
6927
+ height: 36px;
6920
6928
  flex: 0 0 auto;
6921
- border-radius: 12px;
6922
- color: color-mix(in srgb, var(--ctx) 35%, var(--ink));
6923
- background: color-mix(in srgb, var(--ctx) 14%, var(--canvas));
6924
- border: 1px solid color-mix(in srgb, var(--ctx) 28%, var(--monitor-border));
6929
+ border-radius: 11px;
6930
+ color: var(--accent);
6931
+ background: color-mix(in srgb, var(--ctx) 12%, var(--canvas));
6932
+ border: 1px solid color-mix(in srgb, var(--ctx) 26%, var(--line));
6925
6933
  }
6926
- .monitor-summary__copy {
6934
+ .monitor-head__copy {
6935
+ flex: 1 1 auto;
6927
6936
  min-width: 0;
6928
6937
  }
6929
- .monitor-summary__title {
6938
+ .monitor-head__title {
6930
6939
  margin: 0;
6931
- color: var(--ink);
6932
- font-size: 16px;
6933
- line-height: 1.25;
6940
+ font-size: 15px;
6934
6941
  font-weight: 700;
6935
6942
  letter-spacing: -0.01em;
6936
6943
  }
6937
- .monitor-summary__subtitle {
6938
- margin: 2px 0 0;
6944
+ .monitor-head__sub {
6945
+ margin: 1px 0 0;
6946
+ font-size: 11px;
6939
6947
  color: var(--txt-2);
6940
- font-size: 12px;
6941
- line-height: 1.4;
6942
6948
  }
6943
- .monitor-summary__refresh {
6944
- display: inline-flex;
6945
- align-items: center;
6946
- justify-content: center;
6947
- gap: 8px;
6948
- min-height: 40px;
6949
- margin-left: auto;
6950
- font-family: var(--ui);
6951
- font-size: 12px;
6952
- font-weight: 600;
6953
- padding: 0 12px;
6954
- border: 1px solid var(--monitor-border);
6955
- border-radius: 8px;
6949
+
6950
+ /* tier 1 — vitals */
6951
+ .monitor-vitals {
6952
+ display: grid;
6953
+ grid-template-columns: 1.6fr 1fr 1fr 1fr;
6954
+ gap: 12px;
6955
+ }
6956
+ .monitor-tile {
6957
+ display: grid;
6958
+ grid-template-rows: auto auto 1fr auto;
6959
+ gap: 4px;
6960
+ padding: 14px;
6961
+ min-width: 0;
6962
+ border: 1px solid var(--line);
6963
+ border-radius: 14px;
6956
6964
  background: var(--canvas);
6957
- color: var(--ink);
6958
- cursor: pointer;
6959
- transition: background-color 120ms ease, border-color 120ms ease;
6960
6965
  }
6961
- .monitor-summary__refresh:hover {
6962
- background: var(--ghost);
6966
+ .monitor-tile--hero {
6967
+ grid-template-rows: auto auto auto 1fr auto;
6968
+ gap: 2px;
6969
+ }
6970
+ .monitor-tile__label {
6971
+ font-size: 11px;
6972
+ font-weight: 600;
6973
+ color: var(--txt-2);
6963
6974
  }
6964
- .monitor-summary__refresh:active {
6965
- transform: translateY(1px);
6975
+ .monitor-tile__figure {
6976
+ display: flex;
6977
+ align-items: baseline;
6978
+ gap: 5px;
6966
6979
  }
6967
- .monitor-summary__refresh:focus-visible,
6968
- .monitor-section__header:focus-visible {
6969
- outline: 2px solid var(--ink);
6970
- outline-offset: 2px;
6980
+ .monitor-tile__value {
6981
+ font-size: 26px;
6982
+ line-height: 1.15;
6983
+ font-weight: 600;
6984
+ letter-spacing: -0.02em;
6971
6985
  }
6972
- .monitor-summary__refresh:disabled,
6973
- .monitor-section__header:disabled {
6974
- cursor: not-allowed;
6975
- opacity: 0.55;
6986
+ .monitor-tile--hero .monitor-tile__value {
6987
+ font-size: 48px;
6988
+ line-height: 1.05;
6989
+ letter-spacing: -0.03em;
6976
6990
  }
6977
- .monitor-summary__metrics {
6978
- display: grid;
6979
- grid-template-columns: repeat(4, minmax(0, 1fr));
6980
- gap: 8px;
6981
- margin: 0;
6991
+ .monitor-tile__unit {
6992
+ font-size: 11px;
6993
+ color: var(--txt-2);
6982
6994
  }
6983
- .monitor-summary__metric {
6984
- min-width: 0;
6985
- padding: 8px 12px;
6986
- border-radius: 8px;
6987
- background: color-mix(in srgb, var(--ink) 4%, var(--canvas));
6988
- border: 1px solid var(--line);
6995
+ .monitor-tile--hero .monitor-tile__unit {
6996
+ font-size: 14px;
6989
6997
  }
6990
- .monitor-summary__metric dt {
6998
+ .monitor-tile__delta {
6999
+ font-size: 11px;
7000
+ font-weight: 600;
6991
7001
  color: var(--txt-2);
6992
- font-size: 10px;
6993
- line-height: 1.4;
6994
- font-weight: 700;
6995
- letter-spacing: 0.06em;
6996
- text-transform: uppercase;
6997
7002
  }
6998
- .monitor-summary__metric dd {
6999
- margin: 2px 0 0;
7000
- overflow: hidden;
7001
- color: var(--ink);
7002
- font-size: 15px;
7003
- line-height: 1.3;
7004
- font-weight: 700;
7005
- text-overflow: ellipsis;
7006
- white-space: nowrap;
7003
+ .monitor-tile__plot {
7004
+ align-self: center;
7005
+ min-width: 0;
7006
+ margin: 6px 0 2px;
7007
7007
  }
7008
- .monitor-sections {
7009
- display: grid;
7010
- grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr));
7011
- align-items: start;
7012
- gap: 16px;
7008
+ .monitor-tile__plot svg {
7009
+ max-width: 100%;
7010
+ height: auto;
7011
+ }
7012
+ .monitor-tile__foot {
7013
+ font-size: 10.5px;
7014
+ color: var(--txt-3);
7013
7015
  }
7014
- .monitor-section {
7015
- --monitor-accent: var(--ctx);
7016
+ .monitor-meter {
7017
+ display: block;
7018
+ height: 10px;
7019
+ border-radius: 5px;
7020
+ background: color-mix(in srgb, var(--monitor-hue) 16%, var(--canvas));
7016
7021
  overflow: hidden;
7017
- border: 1px solid var(--monitor-border);
7018
- border-radius: 12px;
7019
- background: var(--canvas);
7020
- box-shadow: var(--shadow-pane);
7021
7022
  }
7022
- .monitor-section[data-accent='rose'] { --monitor-accent: var(--rose); }
7023
- .monitor-section[data-accent='cyan'] { --monitor-accent: var(--cyan); }
7024
- .monitor-section[data-accent='violet'] { --monitor-accent: var(--violet); }
7025
- .monitor-section[data-accent='amber'] { --monitor-accent: var(--amber); }
7026
- .monitor-section[data-accent='waffle'] { --monitor-accent: var(--waffle); }
7027
- .monitor-section[data-accent='green'] { --monitor-accent: var(--green); }
7028
- .monitor-section--empty .monitor-section__count {
7029
- background: var(--canvas);
7023
+ .monitor-meter__fill {
7024
+ display: block;
7025
+ height: 100%;
7026
+ border-radius: 5px;
7027
+ background: var(--monitor-hue);
7030
7028
  }
7031
- .monitor-section__header {
7032
- position: relative;
7029
+
7030
+ /* blocks */
7031
+ .monitor-block {
7032
+ display: grid;
7033
+ gap: 8px;
7034
+ }
7035
+ .monitor-block__head {
7033
7036
  display: flex;
7034
7037
  align-items: center;
7035
7038
  gap: 8px;
7036
- width: 100%;
7037
- min-height: 48px;
7038
- padding: 8px 12px 8px 16px;
7039
- border: 0;
7040
- border-bottom: 1px solid var(--line);
7041
- border-radius: 0;
7042
- background: color-mix(in srgb, var(--monitor-accent) 8%, var(--canvas));
7043
- cursor: pointer;
7044
- font-family: var(--ui);
7045
- font-size: 13px;
7046
- color: var(--ink);
7047
- transition: background-color 120ms ease;
7048
- text-align: left;
7049
7039
  }
7050
- .monitor-section__header::before {
7051
- content: '';
7052
- position: absolute;
7053
- inset: 8px auto 8px 0;
7054
- width: 3px;
7055
- border-radius: 0 3px 3px 0;
7056
- background: var(--monitor-accent);
7040
+ .monitor-block__title {
7041
+ margin: 0;
7042
+ font-size: 11px;
7043
+ font-weight: 700;
7044
+ letter-spacing: 0.08em;
7045
+ text-transform: uppercase;
7046
+ color: var(--txt-2);
7057
7047
  }
7058
- .monitor-section__header:hover {
7059
- background: color-mix(in srgb, var(--monitor-accent) 13%, var(--canvas));
7048
+ .monitor-block__hint {
7049
+ margin-left: auto;
7050
+ font-size: 11px;
7051
+ color: var(--txt-3);
7060
7052
  }
7061
- .monitor-section__toggle {
7053
+ .monitor-pill {
7062
7054
  display: inline-flex;
7063
7055
  align-items: center;
7064
7056
  justify-content: center;
7065
- width: 24px;
7066
- height: 24px;
7067
- color: var(--txt-3);
7068
- flex-shrink: 0;
7057
+ min-width: 20px;
7058
+ height: 18px;
7059
+ padding: 0 6px;
7060
+ border-radius: 9px;
7061
+ font-size: 11px;
7062
+ font-weight: 700;
7063
+ font-variant-numeric: tabular-nums;
7064
+ }
7065
+ .monitor-pill--ok {
7066
+ color: var(--monitor-ok);
7067
+ background: color-mix(in srgb, var(--monitor-ok) 12%, var(--canvas));
7069
7068
  }
7070
- .monitor-section__heading {
7069
+ .monitor-pill--warn {
7070
+ color: var(--monitor-warn);
7071
+ background: color-mix(in srgb, var(--monitor-warn) 18%, var(--canvas));
7072
+ }
7073
+ .monitor-pill--error {
7074
+ color: var(--monitor-bad);
7075
+ background: color-mix(in srgb, var(--monitor-bad) 12%, var(--canvas));
7076
+ }
7077
+
7078
+ /*
7079
+ * Status glyphs. The shape varies with the state as well as the hue —
7080
+ * --amber measures 2.09:1 on the light surface, so color alone would not
7081
+ * clear contrast, and every state also carries a word.
7082
+ */
7083
+ .monitor-glyph {
7084
+ display: inline-flex;
7085
+ align-items: center;
7086
+ }
7087
+ .monitor-glyph--active { color: var(--monitor-ok); }
7088
+ .monitor-glyph--warn { color: var(--monitor-warn); }
7089
+ .monitor-glyph--error { color: var(--monitor-bad); }
7090
+ .monitor-glyph--idle { color: var(--txt-3); }
7091
+
7092
+ /* tier 2 — attention */
7093
+ .monitor-alerts {
7094
+ list-style: none;
7095
+ margin: 0;
7096
+ padding: 0;
7097
+ display: grid;
7098
+ gap: 6px;
7099
+ }
7100
+ .monitor-alert {
7101
+ display: grid;
7102
+ grid-template-columns: auto minmax(0, 1fr) auto;
7103
+ align-items: center;
7104
+ gap: 10px;
7105
+ padding: 10px 12px;
7106
+ border: 1px solid var(--line);
7107
+ border-left-width: 3px;
7108
+ border-radius: 12px;
7109
+ background: var(--canvas);
7110
+ }
7111
+ .monitor-alert[data-severity="warn"] { border-left-color: var(--monitor-warn); }
7112
+ .monitor-alert[data-severity="error"] { border-left-color: var(--monitor-bad); }
7113
+ .monitor-alert__icon { display: inline-flex; }
7114
+ .monitor-alert__copy {
7071
7115
  display: grid;
7072
- min-width: 0;
7073
7116
  gap: 1px;
7117
+ min-width: 0;
7074
7118
  }
7075
- .monitor-section__title {
7076
- font-weight: 600;
7119
+ .monitor-alert__title {
7120
+ font-size: 12.5px;
7121
+ font-weight: 650;
7077
7122
  }
7078
- .monitor-section__meta {
7123
+ .monitor-alert__detail {
7124
+ font-size: 11px;
7079
7125
  color: var(--txt-2);
7126
+ overflow: hidden;
7127
+ text-overflow: ellipsis;
7128
+ white-space: nowrap;
7129
+ }
7130
+ .monitor-alert__age {
7080
7131
  font-size: 11px;
7132
+ color: var(--txt-3);
7133
+ font-variant-numeric: tabular-nums;
7081
7134
  }
7082
- .monitor-section__count {
7083
- margin-left: auto;
7084
- flex-shrink: 0;
7085
- min-width: 24px;
7086
- background: color-mix(in srgb, var(--monitor-accent) 13%, var(--canvas));
7087
- border: 1px solid color-mix(in srgb, var(--monitor-accent) 28%, var(--line));
7135
+ .monitor-clear {
7136
+ display: flex;
7137
+ align-items: center;
7138
+ gap: 8px;
7139
+ padding: 12px 14px;
7140
+ border: 1px solid color-mix(in srgb, var(--monitor-ok) 28%, var(--line));
7088
7141
  border-radius: 12px;
7089
- padding: 2px 7px;
7090
- font-size: 11px;
7091
- font-weight: 600;
7092
- color: color-mix(in srgb, var(--monitor-accent) 35%, var(--ink));
7093
- text-align: center;
7142
+ background: color-mix(in srgb, var(--monitor-ok) 8%, var(--canvas));
7094
7143
  }
7095
- .monitor-section__body {
7096
- padding: 8px;
7144
+ .monitor-clear__title {
7145
+ font-size: 12.5px;
7146
+ font-weight: 700;
7147
+ color: var(--monitor-ok);
7097
7148
  }
7098
- .monitor-section__body[hidden] {
7099
- display: none;
7149
+ .monitor-clear__text {
7150
+ font-size: 11.5px;
7151
+ color: var(--txt-2);
7100
7152
  }
7101
- .monitor-section__list {
7102
- display: grid;
7103
- gap: 4px;
7104
- margin: 0;
7105
- padding: 0;
7106
- list-style: none;
7153
+
7154
+ /* tier 3a — topology */
7155
+ .monitor-groups {
7156
+ border: 1px solid var(--line);
7157
+ border-radius: 14px;
7158
+ background: var(--canvas);
7159
+ overflow: hidden;
7160
+ }
7161
+ .monitor-group + .monitor-group {
7162
+ border-top: 1px solid var(--line);
7107
7163
  }
7108
7164
  .monitor-row {
7109
7165
  display: grid;
7110
- grid-template-columns: auto minmax(0, 1fr) auto;
7166
+ grid-template-columns: auto auto auto minmax(0, 1fr) auto;
7111
7167
  align-items: center;
7112
- gap: 12px;
7113
- min-height: 56px;
7114
- padding: 8px;
7115
- border-radius: 8px;
7116
- transition: background-color 120ms ease;
7168
+ gap: 9px;
7169
+ width: 100%;
7170
+ padding: 10px 12px;
7171
+ border: 0;
7172
+ background: none;
7173
+ font: inherit;
7174
+ color: inherit;
7175
+ text-align: left;
7176
+ cursor: pointer;
7177
+ transition: background 0.12s ease;
7117
7178
  }
7118
7179
  .monitor-row:hover {
7119
- background: color-mix(in srgb, var(--monitor-accent) 5%, var(--ghost));
7180
+ background: color-mix(in srgb, var(--ink) 3%, var(--canvas));
7120
7181
  }
7182
+ .monitor-row__chev,
7121
7183
  .monitor-row__icon {
7184
+ display: inline-flex;
7185
+ color: var(--txt-2);
7186
+ }
7187
+ .monitor-row__name {
7188
+ font-size: 12.5px;
7189
+ font-weight: 650;
7190
+ }
7191
+ .monitor-row__summary {
7192
+ font-size: 11.5px;
7193
+ color: var(--txt-2);
7194
+ overflow: hidden;
7195
+ text-overflow: ellipsis;
7196
+ white-space: nowrap;
7197
+ }
7198
+ .monitor-row__state {
7122
7199
  display: inline-flex;
7123
7200
  align-items: center;
7124
- justify-content: center;
7125
- width: 32px;
7126
- height: 32px;
7127
- flex: 0 0 auto;
7128
- border-radius: 8px;
7129
- color: color-mix(in srgb, var(--monitor-accent) 35%, var(--ink));
7130
- background: color-mix(in srgb, var(--monitor-accent) 10%, var(--canvas));
7131
- border: 1px solid color-mix(in srgb, var(--monitor-accent) 20%, var(--line));
7201
+ gap: 5px;
7202
+ font-size: 11px;
7203
+ font-weight: 600;
7204
+ }
7205
+ .monitor-children {
7206
+ list-style: none;
7207
+ margin: 0;
7208
+ padding: 0 0 6px;
7132
7209
  }
7133
- .monitor-row__content {
7210
+ .monitor-child {
7134
7211
  display: grid;
7212
+ grid-template-columns: auto minmax(0, 1fr) auto;
7213
+ align-items: center;
7214
+ gap: 9px;
7215
+ padding: 5px 12px;
7216
+ }
7217
+ .monitor-child__copy {
7218
+ display: grid;
7219
+ gap: 1px;
7135
7220
  min-width: 0;
7136
- gap: 3px;
7137
7221
  }
7138
- .monitor-row__headline {
7222
+ .monitor-child__headline {
7139
7223
  display: flex;
7140
7224
  align-items: center;
7141
- min-width: 0;
7142
7225
  gap: 6px;
7143
- flex-wrap: wrap;
7144
- }
7145
- .monitor-row__name {
7146
7226
  min-width: 0;
7227
+ }
7228
+ .monitor-child__name {
7229
+ font-size: 12px;
7230
+ font-family: var(--mono);
7147
7231
  overflow: hidden;
7148
- color: var(--ink);
7149
- font-weight: 600;
7150
7232
  text-overflow: ellipsis;
7151
7233
  white-space: nowrap;
7152
7234
  }
7153
- .monitor-row__sublabel {
7154
- overflow: hidden;
7155
- color: var(--txt-2);
7235
+ .monitor-child__sublabel {
7156
7236
  font-size: 11px;
7157
- line-height: 1.4;
7237
+ color: var(--txt-2);
7238
+ overflow: hidden;
7158
7239
  text-overflow: ellipsis;
7159
7240
  white-space: nowrap;
7160
7241
  }
7161
- .monitor-row__badges {
7162
- display: inline-flex;
7163
- align-items: center;
7164
- gap: 4px;
7165
- flex-wrap: wrap;
7242
+ .monitor-child__meta {
7243
+ font-size: 11px;
7244
+ color: var(--txt-2);
7245
+ font-variant-numeric: tabular-nums;
7246
+ white-space: nowrap;
7166
7247
  }
7167
- .monitor-row__badge {
7168
- display: inline-flex;
7169
- align-items: center;
7170
- min-height: 18px;
7248
+ .monitor-badge {
7171
7249
  padding: 1px 6px;
7172
- border: 1px solid color-mix(in srgb, var(--monitor-accent) 24%, var(--line));
7173
- border-radius: 9px;
7174
- color: color-mix(in srgb, var(--monitor-accent) 30%, var(--ink));
7175
- background: color-mix(in srgb, var(--monitor-accent) 8%, var(--canvas));
7250
+ border-radius: 6px;
7176
7251
  font-size: 10px;
7177
- line-height: 1.3;
7178
7252
  font-weight: 600;
7253
+ color: var(--txt-2);
7254
+ background: var(--ghost);
7255
+ white-space: nowrap;
7179
7256
  }
7180
- .monitor-row__aside {
7257
+ .monitor-empty {
7181
7258
  display: grid;
7182
- justify-items: end;
7183
- min-width: 88px;
7184
- gap: 3px;
7185
- text-align: right;
7186
- }
7187
- .monitor-row__meta {
7259
+ justify-items: center;
7260
+ gap: 4px;
7261
+ padding: 18px 16px;
7188
7262
  color: var(--txt-2);
7263
+ text-align: center;
7264
+ }
7265
+ .monitor-empty__title {
7266
+ color: var(--ink);
7267
+ font-size: 12px;
7268
+ font-weight: 700;
7269
+ }
7270
+ .monitor-empty__text {
7271
+ max-width: 32ch;
7189
7272
  font-size: 11px;
7190
- line-height: 1.4;
7191
- white-space: nowrap;
7273
+ line-height: 1.5;
7192
7274
  }
7193
- .monitor-row__state {
7194
- --monitor-status: var(--txt-2);
7275
+
7276
+ /* tier 3b — the process table */
7277
+ .monitor-toolbar {
7278
+ display: flex;
7279
+ align-items: center;
7280
+ gap: 10px;
7281
+ }
7282
+ .monitor-input {
7283
+ flex: 1 1 auto;
7284
+ min-width: 0;
7285
+ height: 30px;
7286
+ padding: 0 10px;
7287
+ font: inherit;
7288
+ font-size: 12px;
7289
+ color: var(--ink);
7290
+ background: var(--canvas);
7291
+ border: 1px solid var(--line);
7292
+ border-radius: 9px;
7293
+ }
7294
+ .monitor-label {
7195
7295
  display: inline-flex;
7196
7296
  align-items: center;
7197
- gap: 5px;
7198
- color: var(--monitor-status);
7297
+ gap: 6px;
7298
+ font-size: 11.5px;
7299
+ color: var(--txt-2);
7300
+ white-space: nowrap;
7301
+ }
7302
+ .monitor-tablewrap {
7303
+ border: 1px solid var(--line);
7304
+ border-radius: 14px;
7305
+ background: var(--canvas);
7306
+ overflow: auto;
7307
+ max-height: 420px;
7308
+ }
7309
+ .monitor-table {
7310
+ width: 100%;
7311
+ border-collapse: collapse;
7312
+ font-size: 12px;
7313
+ }
7314
+ .monitor-th {
7315
+ position: sticky;
7316
+ top: 0;
7317
+ z-index: 1;
7318
+ padding: 8px 10px;
7319
+ text-align: left;
7199
7320
  font-size: 10px;
7200
- line-height: 1.4;
7201
7321
  font-weight: 700;
7322
+ letter-spacing: 0.06em;
7323
+ color: var(--txt-2);
7324
+ background: var(--canvas);
7325
+ border-bottom: 1px solid var(--line);
7326
+ cursor: pointer;
7327
+ white-space: nowrap;
7202
7328
  }
7203
- .monitor-row__state--active {
7204
- --monitor-status: color-mix(in srgb, var(--green) 35%, var(--ink));
7329
+ .monitor-th:hover { color: var(--ink); }
7330
+ .monitor-th__label { margin-right: 4px; }
7331
+ .monitor-tr:hover {
7332
+ background: color-mix(in srgb, var(--ink) 3%, var(--canvas));
7205
7333
  }
7206
- .monitor-row__state--error {
7207
- --monitor-status: color-mix(in srgb, var(--red) 35%, var(--ink));
7334
+ .monitor-td {
7335
+ padding: 6px 10px;
7336
+ border-bottom: 1px solid color-mix(in srgb, var(--line) 60%, var(--canvas));
7337
+ white-space: nowrap;
7208
7338
  }
7209
- .monitor-row__state--warn {
7210
- --monitor-status: color-mix(in srgb, var(--amber) 35%, var(--ink));
7339
+ .monitor-td--pid,
7340
+ .monitor-td--ppid,
7341
+ .monitor-td--started,
7342
+ .monitor-td--elapsed {
7343
+ font-family: var(--mono);
7344
+ font-variant-numeric: tabular-nums;
7211
7345
  }
7212
- .monitor-row__dot {
7213
- position: relative;
7214
- width: 7px;
7215
- height: 7px;
7216
- border-radius: 50%;
7217
- background: currentColor;
7218
- flex-shrink: 0;
7346
+ .monitor-td--command {
7347
+ width: 100%;
7348
+ max-width: 0;
7349
+ font-family: var(--mono);
7350
+ overflow: hidden;
7351
+ text-overflow: ellipsis;
7219
7352
  }
7220
- .monitor-row__state--active .monitor-row__dot::after {
7221
- content: '';
7222
- position: absolute;
7223
- inset: -4px;
7224
- border: 1px solid currentColor;
7225
- border-radius: 50%;
7226
- animation: monitor-pulse 2s ease-out infinite;
7353
+ .monitor-statcell {
7354
+ display: inline-flex;
7355
+ align-items: center;
7356
+ gap: 6px;
7227
7357
  }
7228
- .monitor-row__state--error .monitor-row__dot {
7229
- border-radius: 2px;
7230
- transform: rotate(45deg);
7358
+ .monitor-stat-tag {
7359
+ display: inline-flex;
7360
+ align-items: center;
7361
+ justify-content: center;
7362
+ width: 16px;
7363
+ height: 16px;
7364
+ border-radius: 4px;
7365
+ font-family: var(--mono);
7366
+ font-size: 10px;
7367
+ font-weight: 700;
7368
+ color: var(--txt-2);
7369
+ background: var(--ghost);
7231
7370
  }
7232
- .monitor-row__state--warn .monitor-row__dot {
7233
- width: 8px;
7234
- height: 8px;
7235
- border: 2px solid currentColor;
7236
- background: transparent;
7371
+ .monitor-stat-tag--R {
7372
+ color: var(--monitor-ok);
7373
+ background: color-mix(in srgb, var(--monitor-ok) 13%, var(--canvas));
7237
7374
  }
7238
- .monitor-empty {
7239
- display: grid;
7240
- justify-items: center;
7241
- gap: 4px;
7242
- padding: 24px 16px;
7375
+ .monitor-stat-tag--S {
7376
+ color: var(--cyan);
7377
+ background: color-mix(in srgb, var(--cyan) 15%, var(--canvas));
7378
+ }
7379
+ .monitor-stat-tag--K {
7380
+ color: var(--monitor-bad);
7381
+ background: color-mix(in srgb, var(--monitor-bad) 12%, var(--canvas));
7382
+ }
7383
+ .monitor-stat-word {
7384
+ font-size: 11px;
7385
+ color: var(--txt-2);
7386
+ }
7387
+ .monitor-empty-cell {
7388
+ padding: 18px 12px;
7243
7389
  color: var(--txt-2);
7244
7390
  text-align: center;
7391
+ white-space: normal;
7245
7392
  }
7246
- .monitor-empty__icon {
7393
+
7394
+ /* buttons */
7395
+ .monitor-btn {
7247
7396
  display: inline-flex;
7248
7397
  align-items: center;
7249
- justify-content: center;
7250
- width: 40px;
7251
- height: 40px;
7252
- margin-bottom: 4px;
7253
- border-radius: 12px;
7254
- color: color-mix(in srgb, var(--monitor-accent) 30%, var(--ink));
7255
- background: color-mix(in srgb, var(--monitor-accent) 9%, var(--canvas));
7256
- }
7257
- .monitor-empty__title {
7398
+ gap: 5px;
7399
+ height: 26px;
7400
+ padding: 0 10px;
7401
+ font: inherit;
7402
+ font-size: 11.5px;
7403
+ font-weight: 600;
7258
7404
  color: var(--ink);
7259
- font-size: 12px;
7260
- font-weight: 700;
7261
- }
7262
- .monitor-empty__text {
7263
- max-width: 32ch;
7264
- font-size: 11px;
7265
- line-height: 1.5;
7405
+ background: var(--canvas);
7406
+ border: 1px solid var(--line);
7407
+ border-radius: 8px;
7408
+ cursor: pointer;
7409
+ white-space: nowrap;
7410
+ transition: border-color 0.12s ease;
7266
7411
  }
7267
- @keyframes monitor-pulse {
7268
- from { opacity: 0.55; transform: scale(0.55); }
7269
- to { opacity: 0; transform: scale(1.25); }
7412
+ .monitor-btn:hover { border-color: var(--txt-3); }
7413
+
7414
+ @container monitor (max-width: 940px) {
7415
+ .monitor-vitals { grid-template-columns: 1fr 1fr; }
7416
+ .monitor-tile--hero,
7417
+ .monitor-vitals > :last-child { grid-column: span 2; }
7270
7418
  }
7271
7419
  @container monitor (max-width: 560px) {
7272
- .monitor-summary__metrics {
7273
- grid-template-columns: repeat(2, minmax(0, 1fr));
7274
- }
7275
- .monitor-sections {
7276
- grid-template-columns: 1fr;
7277
- }
7278
- .monitor-row {
7279
- grid-template-columns: auto minmax(0, 1fr);
7280
- }
7281
- .monitor-row__aside {
7282
- grid-column: 2;
7283
- grid-template-columns: 1fr auto;
7284
- justify-items: start;
7285
- min-width: 0;
7286
- width: 100%;
7287
- text-align: left;
7288
- }
7420
+ .monitor-vitals { grid-template-columns: 1fr; }
7421
+ .monitor-tile--hero,
7422
+ .monitor-vitals > :last-child { grid-column: auto; }
7423
+ .monitor-row { grid-template-columns: auto auto minmax(0, 1fr); row-gap: 2px; }
7424
+ .monitor-row__summary,
7425
+ .monitor-row__state { grid-column: 3; justify-self: start; }
7289
7426
  }
7290
7427
  @media (prefers-reduced-motion: reduce) {
7291
- .monitor-row__state--active .monitor-row__dot::after {
7292
- animation: none;
7293
- }
7294
- .monitor-summary__refresh,
7295
- .monitor-section__header,
7296
- .monitor-row {
7297
- transition-duration: 0.01ms;
7298
- }
7428
+ .monitor-row,
7429
+ .monitor-btn { transition-duration: 0.01ms; }
7299
7430
  }
7300
- `,Wy=`slicc-monitor-style`;function Gy(e){if(e.getElementById(Wy))return;let t=e.createElement(`style`);t.id=Wy,t.textContent=Uy,(e.head??e.documentElement).appendChild(t)}function Ky(e){return e.status?e.status:e.error?`error`:e.active?`active`:`idle`}function qy(e){return e===`active`?`Active`:e===`error`?`Error`:e===`warn`?`Warning`:`Idle`}function Jy(e){let t=Ky(e),r=j(`span`,{class:`monitor-row__badges`});for(let t of e.badges??[])r.appendChild(j(`span`,{class:`monitor-row__badge`},t));let i=j(`span`,{class:`monitor-row__headline`},j(`span`,{class:`monitor-row__name`},e.name));r.childElementCount>0&&i.appendChild(r);let a=j(`span`,{class:`monitor-row__content`},i);return e.sublabel&&a.appendChild(j(`span`,{class:`monitor-row__sublabel`},e.sublabel)),j(`li`,{class:`monitor-row`,"data-status":t},j(`span`,{class:`monitor-row__icon`},n(e.icon??`box`,{size:16})),a,j(`span`,{class:`monitor-row__aside`},j(`span`,{class:`monitor-row__meta`},e.meta),j(`span`,{class:`monitor-row__state monitor-row__state--${t}`},j(`span`,{class:`monitor-row__dot`,"aria-hidden":`true`}),qy(t))))}function Yy(e){return j(`div`,{class:`monitor-empty`,role:`status`},j(`span`,{class:`monitor-empty__icon`},n(`inbox`,{size:18})),j(`span`,{class:`monitor-empty__title`},`No ${e.label.toLocaleLowerCase()} yet`),j(`span`,{class:`monitor-empty__text`},e.emptyText??`${e.label} will appear here when available.`))}function Xy(e,t,r,i){let a=t.has(e.id),o=e.count===0?`monitor-section monitor-section--empty`:`monitor-section`,s=[j(`span`,{class:`monitor-section__toggle`,"aria-hidden":`true`},n(a?`chevron-right`:`chevron-down`,{size:15})),j(`span`,{class:`monitor-section__heading`},j(`span`,{class:`monitor-section__title`},e.label),e.meta?j(`span`,{class:`monitor-section__meta`},e.meta):null)];s.push(j(`span`,{class:`monitor-section__count`},String(e.count)));let c=j(`button`,{class:`monitor-section__header`,type:`button`},...s);c.setAttribute(`aria-expanded`,String(!a)),c.setAttribute(`aria-controls`,i),c.addEventListener(`click`,()=>r(e.id));let l=j(`div`,{class:`monitor-section__body`,id:i});if(a&&l.setAttribute(`hidden`,``),e.rows.length===0)l.appendChild(Yy(e));else{let t=j(`ul`,{class:`monitor-section__list`});for(let n of e.rows)t.appendChild(Jy(n));l.appendChild(t)}return j(`section`,{class:o,"data-section":e.id,"data-accent":e.accent??`neutral`},c,l)}function Zy(e,t){return j(`div`,{class:`monitor-summary__metric`},j(`dt`,null,e),j(`dd`,null,t))}function Qy(e,t){let r=e.flatMap(e=>e.rows),i=r.filter(e=>Ky(e)===`active`).length,a=r.filter(e=>[`warn`,`error`].includes(Ky(e))).length,o=e.reduce((e,t)=>e+(t.id===`cost`?0:t.count),0),s=e.find(e=>e.id===`cost`)?.meta??`—`,c=j(`button`,{class:`monitor-summary__refresh`,type:`button`,"aria-label":`Refresh monitor data`},n(`refresh-cw`,{size:15}),j(`span`,null,`Refresh`));return c.addEventListener(`click`,t),j(`header`,{class:`monitor-summary`},j(`div`,{class:`monitor-summary__topline`},j(`span`,{class:`monitor-summary__mark`},n(`activity`,{size:19})),j(`div`,{class:`monitor-summary__copy`},j(`h2`,{class:`monitor-summary__title`},`Live monitor`),j(`p`,{class:`monitor-summary__subtitle`},`System activity and connections at a glance`)),c),j(`dl`,{class:`monitor-summary__metrics`},Zy(`Tracked`,String(o)),Zy(`Active`,String(i)),Zy(`Attention`,String(a)),Zy(`Session cost`,s)))}function $y(e){return{...e,rows:e.rows.map(e=>({...e,badges:e.badges?.slice()}))}}var eb=0;A(`slicc-monitor`,class extends HTMLElement{#e=[];#t=new Set;#n=!1;#r=++eb;connectedCallback(){Gy(this.ownerDocument),this.#n||=(this.#t=Vy(),!0),this.#e.length>0&&this.#i()}get sections(){return this.#e.map($y)}set sections(e){this.#e=Array.isArray(e)?e.map($y):[],this.isConnected&&this.#i()}#i(){let e=Qy(this.#e,()=>{this.dispatchEvent(new CustomEvent(`slicc-monitor-refresh`,{bubbles:!0,composed:!0}))}),t=j(`div`,{class:`monitor-sections`});for(let e of this.#e){let n=e.id.replace(/[^a-z0-9_-]/gi,`-`);t.appendChild(Xy(e,this.#t,e=>{this.#t.has(e)?this.#t.delete(e):this.#t.add(e),Hy(this.#t),this.#i()},`monitor-${this.#r}-${n}`))}this.replaceChildren(),we(this,[e,t])}});var tb=e({CHAT_SURFACE_ID:()=>gl,DEFAULT_LAUNCHER_CORNER:()=>ee,DEFAULT_LAUNCHER_FOLLOWER_STATUS:()=>T,HOLD_TO_ENABLE_MS:()=>nn,LAUNCHER_FOLLOWER_STATUS_ATTR:()=>E,LAYOUT_SCHEMA_VERSION:()=>1,MACHINE_WRITTEN_MEMORY_PATH:()=>MACHINE_WRITTEN_MEMORY_PATH,PANEL_MARKER_ATTR:()=>wa,REDACTED_REAL_WORLD_MEMORY_PATH:()=>REDACTED_REAL_WORLD_MEMORY_PATH,SYNTHETIC_MEMORY_PATH:()=>SYNTHETIC_MEMORY_PATH,SliccImagePreview:()=>Yt,TOKENS_CSS:()=>rl,ensureGlobalTokens:()=>al,followSystemTheme:()=>sl,setTheme:()=>ol});export{za as a,Vo as i,al as n,ua as o,sl as r,Gi as s,tb as t};
7431
+ `,Wy=`slicc-monitor-style`;function Gy(e){if(e.getElementById(Wy))return;let t=e.createElement(`style`);t.id=Wy,t.textContent=Uy,(e.head??e.documentElement).appendChild(t)}var Ky={error:3,warn:2,active:1,idle:0},qy={active:`circle-check`,warn:`triangle-alert`,error:`octagon-x`,idle:`circle`},Jy={active:`Healthy`,warn:`Attention`,error:`Failing`,idle:`Idle`};function Yy(e){return e.status?e.status:e.error?`error`:e.active?`active`:`idle`}function Xy(e){if(e.status)return e.status;let t=`idle`;for(let n of e.rows){let e=Yy(n);Ky[e]>Ky[t]&&(t=e)}return t}function Zy(e){return j(`span`,{class:`monitor-glyph monitor-glyph--${e}`},n(qy[e],{size:14}))}var Qy={rose:`var(--rose)`,cyan:`var(--cyan)`,violet:`var(--violet)`,amber:`var(--amber)`,waffle:`var(--waffle)`,green:`var(--green)`};function $y(e){return e?Qy[e]:`var(--ctx)`}var eb=`http://www.w3.org/2000/svg`;function tb(e,t){let n=document.createElementNS(eb,e);for(let[e,r]of Object.entries(t))n.setAttribute(e,String(r));return n}function nb(e,t,n){let r=Math.min(...e),i=Math.max(...e)-r||1;return e.map((a,o)=>({x:3+o/(e.length-1)*(t-6),y:n-3-(a-r)/i*(n-6)}))}function rb(e,t,n,r){let i=nb(e,n,r),a=i.map(e=>`${e.x.toFixed(1)},${e.y.toFixed(1)}`).join(` `),o=i[i.length-1],s=tb(`svg`,{width:n,height:r,viewBox:`0 0 ${n} ${r}`,"aria-hidden":`true`});return s.append(tb(`polygon`,{points:`${a} ${n-3},${r} 3,${r}`,fill:t,"fill-opacity":`0.1`}),tb(`polyline`,{points:a,fill:`none`,stroke:t,"stroke-width":`2`,"stroke-linejoin":`round`,"stroke-linecap":`round`}),tb(`circle`,{cx:o.x,cy:o.y,r:`4`,fill:t,stroke:`var(--canvas)`,"stroke-width":`2`})),s}function ib(e){let t=$y(e.accent);if(e.series&&e.series.length>1){let n=e.hero?{w:300,h:56}:{w:132,h:34};return j(`div`,{class:`monitor-tile__plot`},rb(e.series,t,n.w,n.h))}if(typeof e.ratio==`number`){let n=Math.max(0,Math.min(1,e.ratio))*100;return j(`div`,{class:`monitor-tile__plot`},j(`span`,{class:`monitor-meter`,style:`--monitor-hue:${t}`},j(`span`,{class:`monitor-meter__fill`,style:`width:${n.toFixed(1)}%`})))}return null}function ab(e){let t=j(`section`,{class:`monitor-tile${e.hero?` monitor-tile--hero`:``}`,"data-vital":e.id});return we(t,[j(`span`,{class:`monitor-tile__label`},e.label),j(`div`,{class:`monitor-tile__figure`},j(`span`,{class:`monitor-tile__value`},e.value),e.unit?j(`span`,{class:`monitor-tile__unit`},e.unit):null),e.delta?j(`span`,{class:`monitor-tile__delta`},e.delta):null,ib(e),e.foot?j(`span`,{class:`monitor-tile__foot`},e.foot):null]),t}function ob(e){return j(`div`,{class:`monitor-vitals`},...e.map(ab))}function sb(e){return j(`li`,{class:`monitor-alert`,"data-severity":e.severity,"data-alert":e.id},j(`span`,{class:`monitor-alert__icon monitor-glyph--${e.severity}`},n(e.icon??qy[e.severity===`error`?`error`:`warn`],{size:16})),j(`span`,{class:`monitor-alert__copy`},j(`span`,{class:`monitor-alert__title`},e.title),e.detail?j(`span`,{class:`monitor-alert__detail`},e.detail):null),e.age?j(`span`,{class:`monitor-alert__age`},e.age):null)}function cb(){return j(`div`,{class:`monitor-clear`,role:`status`},Zy(`active`),j(`span`,{class:`monitor-clear__title`},`All clear`),j(`span`,{class:`monitor-clear__text`},`Nothing is stalled, expired, or failing.`))}function lb(e){let t=e.some(e=>e.severity===`error`)?`error`:e.length>0?`warn`:`ok`;return j(`section`,{class:`monitor-block`,"data-block":`attention`},j(`div`,{class:`monitor-block__head`},j(`h3`,{class:`monitor-block__title`},`Needs attention`),j(`span`,{class:`monitor-pill monitor-pill--${t}`},String(e.length))),e.length===0?cb():j(`ul`,{class:`monitor-alerts`},...e.map(sb)))}function ub(e){let t=Yy(e),n=j(`span`,{class:`monitor-child__headline`},j(`span`,{class:`monitor-child__name`},e.name));for(let t of e.badges??[])n.appendChild(j(`span`,{class:`monitor-badge`},t));let r=j(`span`,{class:`monitor-child__copy`},n);return e.sublabel&&r.appendChild(j(`span`,{class:`monitor-child__sublabel`},e.sublabel)),j(`li`,{class:`monitor-child`,"data-status":t,style:`padding-left:${28+(e.depth??0)*18}px`},Zy(t),r,j(`span`,{class:`monitor-child__meta`},e.meta))}function db(e){return j(`div`,{class:`monitor-empty`,role:`status`},j(`span`,{class:`monitor-empty__title`},`No ${e.label.toLocaleLowerCase()} yet`),j(`span`,{class:`monitor-empty__text`},e.emptyText??`${e.label} will appear here when available.`))}function fb(e,t,r,i,a){let o=Xy(e),s=o===`warn`||o===`error`,c=r.has(e.id)?!0:!t.has(e.id)&&s&&e.rows.length>0,l=j(`ul`,{class:`monitor-children`,id:a});e.rows.length===0?l.replaceChildren(db(e)):l.append(...e.rows.map(ub)),c||l.setAttribute(`hidden`,``);let u=j(`button`,{class:`monitor-row`,type:`button`},j(`span`,{class:`monitor-row__chev`,"aria-hidden":`true`},n(c?`chevron-down`:`chevron-right`,{size:15})),j(`span`,{class:`monitor-row__icon`},n(e.icon??`box`,{size:16})),j(`span`,{class:`monitor-row__name`},e.label),j(`span`,{class:`monitor-row__summary`},e.meta??`${e.count}`),j(`span`,{class:`monitor-row__state monitor-glyph--${o}`},Zy(o),Jy[o]));return u.setAttribute(`aria-expanded`,String(c)),u.setAttribute(`aria-controls`,a),u.addEventListener(`click`,()=>i(e.id,c)),j(`div`,{class:`monitor-group`,"data-section":e.id,"data-status":o,"data-accent":e.accent??`neutral`},u,l)}var pb=[`pid`,`ppid`,`state`,`started`,`elapsed`,`scoop`,`command`],mb=new Set([`R`,`S`]);function hb(e,t){if(t===`state`)return j(`td`,{class:`monitor-td monitor-td--state`},j(`span`,{class:`monitor-statcell`},j(`span`,{class:`monitor-stat-tag monitor-stat-tag--${e.state}`},e.state),j(`span`,{class:`monitor-stat-word`},e.status)));let n=e[t];return j(`td`,{class:`monitor-td monitor-td--${t}`},n==null?`—`:String(n))}function gb(e){return j(`tr`,{class:`monitor-tr`,"data-pid":String(e.pid),"data-live":String(mb.has(e.state))},...pb.map(t=>hb(e,t)))}function _b(e,t,n){return[...e].sort((e,r)=>{let i=e[t],a=r[t],o=typeof i==`number`&&typeof a==`number`?i-a:String(i??``).localeCompare(String(a??``));return n?-o:o})}function vb(e,t){return j(`tr`,null,...pb.map(r=>{let i=e.sort===r,a=j(`th`,{class:`monitor-th monitor-td--${r}`,scope:`col`},j(`span`,{class:`monitor-th__label`},r.toUpperCase()),i?n(e.descending?`chevron-down`:`chevron-up`,{size:12}):null);return a.setAttribute(`aria-sort`,i?e.descending?`descending`:`ascending`:`none`),a.addEventListener(`click`,()=>{e.descending=e.sort===r&&!e.descending,e.sort=r,t()}),a}))}function yb(e,t){return!t||e.command.toLowerCase().includes(t)||(e.scoop??``).toLowerCase().includes(t)||String(e.pid).includes(t)}function bb(e){let t={sort:`pid`,descending:!1,query:``},n=j(`input`,{class:`monitor-input`,type:`search`,"aria-label":`Filter processes`,placeholder:`Filter command, scoop, or pid…`}),r=j(`thead`),i=j(`tbody`),a=j(`span`,{class:`monitor-block__hint`}),o=()=>{let n=_b(e.rows,t.sort,t.descending).filter(e=>yb(e,t.query));if(r.replaceChildren(vb(t,o)),n.length===0){let e=j(`td`,{class:`monitor-td monitor-empty-cell`,colspan:pb.length});e.textContent=t.query?`No live process matches “${t.query}”.`:`No processes running.`,i.replaceChildren(j(`tr`,{class:`monitor-tr`},e))}else i.replaceChildren(...n.map(gb));let s=e.terminated>0?` · ${e.terminated.toLocaleString()} exited this session`:``;a.replaceChildren(document.createTextNode(`${e.rows.length} live${s}`))};return n.addEventListener(`input`,()=>{t.query=n.value.trim().toLowerCase(),o()}),o(),j(`section`,{class:`monitor-block`,"data-block":`processes`},j(`div`,{class:`monitor-block__head`},j(`h3`,{class:`monitor-block__title`},`Processes`),a),j(`div`,{class:`monitor-toolbar`},n),j(`div`,{class:`monitor-tablewrap`},j(`table`,{class:`monitor-table`},r,i)))}function xb(e){return{...e,rows:e.rows.map(e=>({...e,badges:e.badges?.slice()}))}}var Sb=0;A(`slicc-monitor`,class extends HTMLElement{#e={};#t=new Set;#n=new Set;#r=!1;#i=++Sb;connectedCallback(){Gy(this.ownerDocument),this.#r||=(this.#t=Vy(),!0),this.#c()}get model(){return{...this.#e,vitals:this.#e.vitals?.map(e=>({...e,series:e.series?.slice()})),alerts:this.#e.alerts?.map(e=>({...e})),sections:this.#e.sections?.map(xb),processes:this.#e.processes?{...this.#e.processes,rows:this.#e.processes.rows.map(e=>({...e}))}:this.#e.processes}}set model(e){this.#e=e??{},this.isConnected&&this.#c()}get sections(){return(this.#e.sections??[]).map(xb)}set sections(e){this.#e={...this.#e,sections:Array.isArray(e)?e.map(xb):[]},this.isConnected&&this.#c()}#a(){let e=j(`button`,{class:`monitor-btn`,type:`button`,"aria-label":`Re-sync monitor data`},n(`refresh-cw`,{size:14}),j(`span`,null,`Re-sync`));return e.addEventListener(`click`,()=>{this.dispatchEvent(new CustomEvent(`slicc-monitor-refresh`,{bubbles:!0,composed:!0}))}),j(`header`,{class:`monitor-head`},j(`span`,{class:`monitor-head__mark`},n(`activity`,{size:18})),j(`div`,{class:`monitor-head__copy`},j(`h2`,{class:`monitor-head__title`},`Live monitor`),j(`p`,{class:`monitor-head__sub`},this.#e.updated??`Streaming`)),e)}#o(e){let t=j(`div`,{class:`monitor-groups`});for(let n of e){let e=n.id.replace(/[^a-z0-9_-]/gi,`-`);t.appendChild(fb(n,this.#t,this.#n,(e,t)=>this.#s(e,t),`monitor-${this.#i}-${e}`))}return j(`section`,{class:`monitor-block`,"data-block":`topology`},j(`div`,{class:`monitor-block__head`},j(`h3`,{class:`monitor-block__title`},`Topology`),j(`span`,{class:`monitor-block__hint`},`healthy groups stay collapsed`)),t)}#s(e,t){t?(this.#n.delete(e),this.#t.add(e)):(this.#t.delete(e),this.#n.add(e)),Hy(this.#t),this.#c()}#c(){let{vitals:e=[],alerts:t,sections:n=[],processes:r}=this.#e,i=j(`div`,{class:`monitor`});we(i,[this.#a(),e.length>0?ob(e):null,t?lb(t):null,n.length>0?this.#o(n):null,r?bb(r):null]),this.replaceChildren(i)}});var Cb=e({CHAT_SURFACE_ID:()=>gl,DEFAULT_LAUNCHER_CORNER:()=>ee,DEFAULT_LAUNCHER_FOLLOWER_STATUS:()=>T,HOLD_TO_ENABLE_MS:()=>nn,LAUNCHER_FOLLOWER_STATUS_ATTR:()=>E,LAYOUT_SCHEMA_VERSION:()=>1,MACHINE_WRITTEN_MEMORY_PATH:()=>MACHINE_WRITTEN_MEMORY_PATH,PANEL_MARKER_ATTR:()=>wa,REDACTED_REAL_WORLD_MEMORY_PATH:()=>REDACTED_REAL_WORLD_MEMORY_PATH,SYNTHETIC_MEMORY_PATH:()=>SYNTHETIC_MEMORY_PATH,SliccImagePreview:()=>Yt,TOKENS_CSS:()=>rl,ensureGlobalTokens:()=>al,followSystemTheme:()=>sl,setTheme:()=>ol});export{za as a,Vo as i,al as n,ua as o,sl as r,Gi as s,Cb as t};