samagotchi 0.117.0 → 0.118.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 31e109ef4c87aedb02323fa93499a53ad9e08ccc5384be8aff037f3ac99459db
4
- data.tar.gz: c52c487f3f06b2a3d44bc9bc6463086aa4c5fd882cff83e8f5afee7cb89062f9
3
+ metadata.gz: 06322a414267628aff61367b71dc4a6ecb76d4789673d594aff987a8da678d94
4
+ data.tar.gz: 12cc40d770cfd7072ccb1a64543033da5619f19d472ae69e7db880ae9a7f867f
5
5
  SHA512:
6
- metadata.gz: 44752dd2037da4b96c34028e5173dc4e7d5d26079ab048d153d97a63655289b78ec8114b98bf2b4db160d8596772137f147018e3a9c1bce64af8502893411686
7
- data.tar.gz: 9e4e2eab0e6c1719e6599d3895596ffc23ef850e0a6540c54213470618578bca4ec2c0a39146edb46c5b15258a3edf5c3b3560a6a23b868af494cac62714e6b3
6
+ metadata.gz: 0db2e221e335c74dcb3770ec17d92a2ded1b4e92589e958e33f95008e0ab5a9e13d72aed2ebb3bc2875fa6800e5cba6e19898b68515fda951a1709b5fc864a09
7
+ data.tar.gz: 7d8e40e0f7966a75d0914229a6e7a94b626ed9a045451ab65c154eef2eea3a5e8ba81eb20fc90cff703986e063fbfbef55225919a4be47e92b3b6b28ae611bbf
data/CHANGELOG.md CHANGED
@@ -5,9 +5,27 @@ format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and
5
5
  versions follow [Semantic Versioning](https://semver.org/); before 1.0, config
6
6
  and commands may change between minor versions. How releases are made:
7
7
  [docs/releasing.md](docs/releasing.md).
8
-
9
8
  ## [Unreleased]
10
9
 
10
+ ## [0.118.0] - 2026-10-26
11
+
12
+ ### Changed
13
+
14
+ - chi's icon (the browser tab and the Home Screen app) is flat: a system-blue χ on a graphite tile, no gradient. On a
15
+ phone, remove the Home Screen app and add it again to see it: iOS keeps the old icon.
16
+ - chi web's blues match the icon: links, the active card and the Send button use Apple's system blue in both themes,
17
+ and the page background keeps only its faint blue glow (the purple one is gone).
18
+
19
+ ### Fixed
20
+
21
+ - chi web's session bar stops squeezing its meta row into a narrow column in a small window: the bar's own actions
22
+ (continue, archive, stop session, delete) take a line of their own when they cannot sit beside the row, the folder
23
+ takes at most a third of it and a chip at most 30% (cut with "…", the full text in the tooltip), so a session with a
24
+ long model name and a long folder reads two lines at 760 px instead of five. Phones (≤ 600 px) scroll the row as
25
+ before.
26
+
27
+ Update with `chi update` (the system bundle 0.118.0), then restart `chi web`.
28
+
11
29
  ## [0.117.0] - 2026-10-26
12
30
 
13
31
  ### Added
@@ -4427,7 +4445,8 @@ and long-lived sessions.
4427
4445
  - A macOS desktop helper (`chi desktop install`): a "Send to chi" Service and a
4428
4446
  hotkey panel that send selected text or the clipboard to your sessions.
4429
4447
 
4430
- [Unreleased]: https://github.com/dm1try/samagotchi/compare/v0.117.0...HEAD
4448
+ [Unreleased]: https://github.com/dm1try/samagotchi/compare/v0.118.0...HEAD
4449
+ [0.118.0]: https://github.com/dm1try/samagotchi/compare/v0.117.0...v0.118.0
4431
4450
  [0.117.0]: https://github.com/dm1try/samagotchi/compare/v0.116.0...v0.117.0
4432
4451
  [0.116.0]: https://github.com/dm1try/samagotchi/compare/v0.115.0...v0.116.0
4433
4452
  [0.115.0]: https://github.com/dm1try/samagotchi/compare/v0.114.0...v0.115.0
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: samagotchi-system
3
- version: 0.117.0
3
+ version: 0.118.0
4
4
  scope: system
5
5
  description: Default system memories — identity, self map, config modification protocol, memory guide and the delegated-session rules
6
6
  files:
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Samagotchi
4
- VERSION = "0.117.0"
4
+ VERSION = "0.118.0"
5
5
  # Sent as the User-Agent of every HTTP request chi makes.
6
6
  USER_AGENT = "chi/#{VERSION}"
7
7
  end
@@ -1 +1 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><defs><linearGradient id="g" x1="0" y1="0" x2="1" y2="1"><stop offset="0" stop-color="#1f6feb"/><stop offset="1" stop-color="#6e40c9"/></linearGradient></defs><rect x="1" y="1" width="30" height="30" rx="7.5" fill="url(#g)"/><g fill="none" stroke="#fff" stroke-width="3.2" stroke-linecap="round" stroke-linejoin="round"><path d="M7.8 9.6c2.3-1.3 4-.7 5.2 1.4l6 10.1c1.2 2.1 2.9 2.7 5.2 1.4"/><path d="M22.6 9.2 9.4 22.8"/></g></svg>
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><rect x="1" y="1" width="30" height="30" rx="7.5" fill="#22262f"/><g fill="none" stroke="#0a84ff" stroke-width="3.2" stroke-linecap="round" stroke-linejoin="round"><path d="M7.8 9.6c2.3-1.3 4-.7 5.2 1.4l6 10.1c1.2 2.1 2.9 2.7 5.2 1.4"/><path d="M22.6 9.2 9.4 22.8"/></g></svg>
@@ -17,7 +17,7 @@
17
17
  *{box-sizing:border-box;margin:0;padding:0}
18
18
  /* No iOS text autosizing: it grows text in a box sized for the text as written (it clipped the session cards). */
19
19
  html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
20
- body{font-family: ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:radial-gradient(1100px 700px at 8% 0%,color-mix(in srgb,var(--accent) 13%,transparent),transparent 70%),radial-gradient(900px 700px at 100% 100%,color-mix(in srgb,var(--think) 9%,transparent),transparent 70%),var(--bg);background-attachment:fixed;color:var(--text);height:100vh;display:flex;flex-direction:column}
20
+ body{font-family: ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:radial-gradient(1100px 700px at 8% 0%,color-mix(in srgb,var(--accent) 13%,transparent),transparent 70%),var(--bg);background-attachment:fixed;color:var(--text);height:100vh;display:flex;flex-direction:column}
21
21
  /* Glass: the composer card, the strip cards, the all-sessions cards and the question cards (by selector, so app.js is untouched). */
22
22
  #dock,.turn-stage,.dock-card,#topStrip .card,#allList .card,.bubble.question,.bubble.plugin-card{background:var(--glass-bg);-webkit-backdrop-filter:blur(18px) saturate(1.35);backdrop-filter:blur(18px) saturate(1.35);border:1px solid var(--glass-border);box-shadow:inset 0 1px 0 var(--glass-highlight),var(--glass-shadow)}
23
23
  #topStrip .card:hover,#allList .card:hover{background:color-mix(in srgb,var(--bg-hover) 75%,transparent);border-color:var(--card-hover-border)}
@@ -1067,7 +1067,11 @@ button.ws-row:hover:not(:disabled){filter:none;background:var(--bg-hover)}
1067
1067
  @media (prefers-reduced-motion:reduce){.turn-stage.enter,.ts-arrive,.ts-headline.fresh,.ts-tick.running,.ts-mark,.turn-work:not(.done) .activity-status.running::before{animation:none}.turn-stage.leaving,#center.reserve-easing #history{transition:none}}
1068
1068
  #infoBar{display:flex;padding:8px 14px 10px;border-top:1px solid var(--glass-border);background:transparent;border-radius:0 0 16px 16px;color:var(--text-2);gap:10px;align-items:flex-start;flex-wrap:wrap;flex-shrink:0;transition:opacity 280ms ease}
1069
1069
  #infoBar.visible{display:flex}
1070
- #infoBar .info{flex:1;min-width:0;font-size:13px;line-height:1.4;word-break:break-word;display:flex;flex-direction:column;gap:2px}
1070
+ /* The meta row keeps its room: with a plain flex:1 the bar's own buttons (continue, archive, stop session, delete)
1071
+ shrink it to a narrow column in a small window and its items wrap into five lines. With a 640px basis they share
1072
+ the line while they fit; when they don't, the buttons wrap to a line of their own (the bar already wraps) and the
1073
+ meta keeps the width. */
1074
+ #infoBar .info{flex:1 1 640px;min-width:0;font-size:13px;line-height:1.4;word-break:break-word;display:flex;flex-direction:column;gap:2px}
1071
1075
  #infoBar .meta{font-size:11px;display:flex;gap:8px;flex-wrap:wrap;align-items:center}
1072
1076
  #infoBar .meta .id{font-family:ui-monospace,monospace;font-weight:700;font-size:12px;color:var(--accent)}
1073
1077
  #infoBar .meta .copy-attach{padding:2px 8px;border-radius:6px;font-size:11px;font-weight:600;background:var(--bg-raised);color:var(--text-2);border:1px solid var(--border-strong)}
@@ -1082,6 +1086,12 @@ button.ws-row:hover:not(:disabled){filter:none;background:var(--bg-hover)}
1082
1086
  #infoBar .meta .dir{font-family:ui-monospace,monospace;font-size:11px;color:var(--text-muted);max-width:48ch;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;direction:rtl;text-align:left}
1083
1087
  /* The footer sits on the card's glass: its chips are tinted, not solid, so the glass reads through them. */
1084
1088
  #infoBar .meta .model{font-size:11px;padding:2px 6px;border-radius:6px;background:color-mix(in srgb,var(--bg-hover) 55%,transparent);color:var(--text-3)}
1089
+ /* Where the meta row wraps (above the phone's one scrolling line) the two long items give way so it stays two lines: the
1090
+ folder takes at most a third of the row and a chip at most 30%, cut with "…", their full text in the title. */
1091
+ @media(min-width:601px){
1092
+ #infoBar .meta .dir{max-width:min(48ch,32%)}
1093
+ #infoBar .meta .model{max-width:min(40ch,30%);min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
1094
+ }
1085
1095
  /* The plain chips (spans, links) and the status take the button chips' 1px border, transparent and outside their tint, so every chip is one height: a chip wrapping onto a row of plain ones doesn't grow it. */
1086
1096
  #infoBar .meta :is(span,a).model,#infoBar .meta .status{border:1px solid transparent;background-clip:padding-box}
1087
1097
  /* The chips a running turn rewrites (the session clock each second, the last generation's speed, ctx): tabular digits in a reserved width, so a tick ("9.5s" → "10s" → "1m 00s") or a new number doesn't widen the line and wrap a chip onto a new row. The speed and the clock show from the session's start, a muted placeholder until there is a number. */
@@ -5,7 +5,7 @@
5
5
  "scope": "/",
6
6
  "display": "standalone",
7
7
  "background_color": "#0b0d11",
8
- "theme_color": "#7aa5ff",
8
+ "theme_color": "#5aa9ff",
9
9
  "icons": [
10
10
  { "src": "/icons/chi-192.png", "sizes": "192x192", "type": "image/png" },
11
11
  { "src": "/icons/chi-512.png", "sizes": "512x512", "type": "image/png" }
@@ -1,11 +1,11 @@
1
1
  /* The web UI's colour tokens, shared by the owner's page (index.html) and the participant page (participant.html): the dark :root (the default) and the light set under prefers-color-scheme: light. Everything else reads them through var(). */
2
- :root{color-scheme:dark;--bg:#0b0d11;--bg-panel:#151821;--bg-inset:#0f1115;--bg-raised:#22262f;--bg-hover:#1b1f27;--border:#1f232b;--border-strong:#2d333f;--text:#e6e8eb;--text-bright:#f0f3f6;--text-2:#c9d1d9;--text-3:#9aa4b2;--text-muted:#8b949e;--text-faint:#6e7681;--accent:#7aa5ff;--accent-strong:#1f6feb;--accent-bg:#1b2336;--accent-ring:rgba(122,165,255,.18);--primary:#2a68d1;--ok:#3fb950;--ok-text:#7ee787;--ok-bg:#1a2e1a;--warn:#d29922;--warn-text:#e3b341;--warn-bright:#f2cc60;--warn-bg:#2b2108;--warn-border:#6b5416;--danger:#f85149;--danger-bg:#da3633;--danger-text:#ff7b72;--danger-bg-dim:#3d1f1f;--think:#8957e5;--think-text:#d2a8ff;--accent-border:#223150;--pick-border:#79c0ff;--accent-tint:color-mix(in srgb,var(--accent) 7%,transparent);--narr:color-mix(in srgb,var(--accent) 38%,var(--text-muted));
2
+ :root{color-scheme:dark;--bg:#0b0d11;--bg-panel:#151821;--bg-inset:#0f1115;--bg-raised:#22262f;--bg-hover:#1b1f27;--border:#1f232b;--border-strong:#2d333f;--text:#e6e8eb;--text-bright:#f0f3f6;--text-2:#c9d1d9;--text-3:#9aa4b2;--text-muted:#8b949e;--text-faint:#6e7681;--accent:#5aa9ff;--accent-strong:#0071e3;--accent-bg:#0f2340;--accent-ring:rgba(90,169,255,.18);--primary:#0071e3;--ok:#3fb950;--ok-text:#7ee787;--ok-bg:#1a2e1a;--warn:#d29922;--warn-text:#e3b341;--warn-bright:#f2cc60;--warn-bg:#2b2108;--warn-border:#6b5416;--danger:#f85149;--danger-bg:#da3633;--danger-text:#ff7b72;--danger-bg-dim:#3d1f1f;--think:#8957e5;--think-text:#d2a8ff;--accent-border:#1a3458;--pick-border:#79c0ff;--accent-tint:color-mix(in srgb,var(--accent) 7%,transparent);--narr:color-mix(in srgb,var(--accent) 38%,var(--text-muted));
3
3
  --glass-bg:color-mix(in srgb,var(--bg-panel) 70%,transparent);--glass-border:rgba(255,255,255,.08);--glass-highlight:rgba(255,255,255,.05);--glass-shadow:0 8px 30px rgba(0,0,0,.35);
4
4
  --diff-add-bg:rgba(63,185,80,.14);--diff-add-text:#aff5b4;--diff-del-bg:rgba(248,81,73,.14);--diff-del-text:#ffc1bc;
5
5
  --code-text:#c9d1d9;--code-keyword:#ff7b72;--code-string:#a5d6ff;--code-comment:#8b949e;--code-constant:#79c0ff;--code-func:#d2a8ff;--code-type:#ffa657;
6
6
  --card-hover-border:rgba(255,255,255,.14);--on-solid:#fff;--on-warn:#fff;--text-hover:#fff;--badge-bg:rgba(255,255,255,.08);--badge-ring:rgba(255,255,255,.18);--shadow-strong:rgba(0,0,0,.5);--backdrop:rgba(0,0,0,.85);--toast-shadow:0 6px 24px rgba(0,0,0,.25);--ws-stale-opacity:.4;--ws-rule:var(--border-strong);--ws-muted:var(--text-3);--ws-faint:var(--text-muted);--ws-act-border:#444c56;--author-1:#79c0ff;--author-2:#d2a8ff;--author-3:#7ee787;--author-4:#ffa657;--author-5:#ff7b72;--author-6:#f2cc60;--author-owner:var(--text-3);--time-gap:var(--text-faint)}
7
7
  /* Light palette: follows the system setting. :not([data-theme="dark"]) leaves room for a later in-page toggle (data-theme on <html>); there is none yet. Each palette sets color-scheme, so native radios, inputs and scrollbars follow it. */
8
- @media (prefers-color-scheme:light){:root:not([data-theme="dark"]){color-scheme:light;--bg:#f5f6f8;--bg-panel:#ffffff;--bg-inset:#f1f3f6;--bg-raised:#e8ebf0;--bg-hover:#eceff4;--border:#dde1e7;--border-strong:#c3c9d2;--text:#1f2328;--text-bright:#0d1117;--text-2:#2f363d;--text-3:#475160;--text-muted:#57606a;--text-faint:#636c76;--accent:#0b5cd5;--accent-strong:#0550ae;--accent-bg:#e2ecfd;--accent-ring:rgba(11,92,213,.2);--primary:#1f6feb;--ok:#1a7f37;--ok-text:#116329;--ok-bg:#dafbe1;--warn:#9a6700;--warn-text:#7d4e00;--warn-bright:#875c00;--warn-bg:#fff6cc;--warn-border:#d4a72c;--danger:#cf222e;--danger-bg:#cf222e;--danger-text:#a40e26;--danger-bg-dim:#ffebe9;--think:#8250df;--think-text:#6639ba;--accent-border:#b8cef5;--pick-border:#0969da;
8
+ @media (prefers-color-scheme:light){:root:not([data-theme="dark"]){color-scheme:light;--bg:#f5f6f8;--bg-panel:#ffffff;--bg-inset:#f1f3f6;--bg-raised:#e8ebf0;--bg-hover:#eceff4;--border:#dde1e7;--border-strong:#c3c9d2;--text:#1f2328;--text-bright:#0d1117;--text-2:#2f363d;--text-3:#475160;--text-muted:#57606a;--text-faint:#636c76;--accent:#0066cc;--accent-strong:#0058b0;--accent-bg:#e3f0ff;--accent-ring:rgba(0,102,204,.2);--primary:#0071e3;--ok:#1a7f37;--ok-text:#116329;--ok-bg:#dafbe1;--warn:#9a6700;--warn-text:#7d4e00;--warn-bright:#875c00;--warn-bg:#fff6cc;--warn-border:#d4a72c;--danger:#cf222e;--danger-bg:#cf222e;--danger-text:#a40e26;--danger-bg-dim:#ffebe9;--think:#8250df;--think-text:#6639ba;--accent-border:#b3d4f7;--pick-border:#0969da;
9
9
  --glass-border:rgba(31,35,40,.10);--glass-highlight:rgba(255,255,255,.7);--glass-shadow:0 8px 30px rgba(31,35,40,.10);
10
10
  --diff-add-bg:rgba(26,127,55,.12);--diff-add-text:#116329;--diff-del-bg:rgba(207,34,46,.10);--diff-del-text:#82071e;
11
11
  --code-text:#1f2328;--code-keyword:#cf222e;--code-string:#0a3069;--code-comment:#57606a;--code-constant:#0550ae;--code-func:#8250df;--code-type:#953800;
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: samagotchi
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.117.0
4
+ version: 0.118.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dmitry Dedov