sealkeep 0.7.0 → 0.7.1
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/CHANGELOG.md +12 -0
- package/dist/site/index.html +18 -6
- package/package.json +3 -2
- package/web/style.css +13 -22
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,18 @@
|
|
|
3
3
|
Notable changes, by published version. Sealkeep is pre-1.0: minor versions
|
|
4
4
|
may change behavior, and say so here when they do.
|
|
5
5
|
|
|
6
|
+
## 0.7.1 — 2026-08-20
|
|
7
|
+
|
|
8
|
+
The dashboard and the account panel are one design system again.
|
|
9
|
+
|
|
10
|
+
- `design-system/tokens.css` is the single source; `npm run tokens` injects it
|
|
11
|
+
into both surfaces and `--check` fails on drift, with the suite enforcing it.
|
|
12
|
+
- The rule it encodes: monospace is what a machine said — a size, a path, a
|
|
13
|
+
state, a command — and sans is what we said. The dashboard had been running
|
|
14
|
+
every sentence in monospace because `--sans` was aliased to `--mono`, so its
|
|
15
|
+
option descriptions and standing notes read as terminal output. They read as
|
|
16
|
+
English now; every number, path and identifier is untouched.
|
|
17
|
+
|
|
6
18
|
## 0.7.0 — 2026-08-20
|
|
7
19
|
|
|
8
20
|
Two reviews — does each section deserve to exist, and can a person finish the
|
package/dist/site/index.html
CHANGED
|
@@ -22,11 +22,23 @@
|
|
|
22
22
|
field on it is always, only, encrypted material.
|
|
23
23
|
--------------------------------------------------------------------- */
|
|
24
24
|
:root{
|
|
25
|
-
|
|
26
|
-
--
|
|
27
|
-
--
|
|
28
|
-
--
|
|
29
|
-
--
|
|
25
|
+
/* @tokens:start — generated from design-system/tokens.css, do not edit here */
|
|
26
|
+
--paper: #f4f4f3;
|
|
27
|
+
--card: #fbfbfa;
|
|
28
|
+
--ink: #111316;
|
|
29
|
+
--soft: #5e646c;
|
|
30
|
+
--rule: #dadcde;
|
|
31
|
+
--seal: #101a3d;
|
|
32
|
+
--seal-ink: #96a6e0;
|
|
33
|
+
--live: #2a3fb0;
|
|
34
|
+
--warn: #8c3220;
|
|
35
|
+
--warn-bg: #f4e6e2;
|
|
36
|
+
--sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Inter, system-ui, "Helvetica Neue", sans-serif;
|
|
37
|
+
--mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, "DejaVu Sans Mono", Consolas, monospace;
|
|
38
|
+
/* @tokens:end */
|
|
39
|
+
|
|
40
|
+
/* Layout constant for this page's spine; not part of the shared palette. */
|
|
41
|
+
--gut: 2.6rem;
|
|
30
42
|
}
|
|
31
43
|
@media(prefers-color-scheme:dark){:root{
|
|
32
44
|
--paper:#0d0f11; --card:#14171a; --ink:#e7e9ec; --soft:#8d949c; --rule:#24282d;
|
|
@@ -741,7 +753,7 @@ sealkeep open 08424eb6… ./session.jsonl \
|
|
|
741
753
|
<div class="card">
|
|
742
754
|
<span class="eyebrow">What gets uploaded</span>
|
|
743
755
|
<h2>Your upload rules</h2>
|
|
744
|
-
<p class="
|
|
756
|
+
<p class="why" style="margin:.1rem 0 .8rem">Saved to your account — every machine you connect follows these, the same way routing rules do.</p>
|
|
745
757
|
<p>Everything you do not choose here stays local and is never uploaded.</p>
|
|
746
758
|
<p class="empty" id="r-note" style="margin-bottom:.9rem">Enforced on your machine, before a session is read or sealed. Anything held back is never uploaded, so this is a rule about what leaves — not a filter we apply after it arrives.</p>
|
|
747
759
|
<div class="rules">
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "sealkeep",
|
|
3
|
-
"version": "0.7.
|
|
3
|
+
"version": "0.7.1",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Sealkeep by SPALA AI \u2014 your AI coding-agent history, sealed, searchable, and shared across your machines.",
|
|
6
6
|
"license": "SEE LICENSE IN LICENSE",
|
|
@@ -41,7 +41,8 @@
|
|
|
41
41
|
"build:site": "node tools/build-site.mjs",
|
|
42
42
|
"bundle:site": "node tools/build-site.mjs && cd dist/site && zip -q -X ../site.zip index.html && cd - >/dev/null && echo \"dist/site.zip ready ($(wc -c < dist/site.zip) bytes)\"",
|
|
43
43
|
"acceptance": "node scripts/acceptance.mjs",
|
|
44
|
-
"acceptance:managed": "node scripts/acceptance.mjs --managed"
|
|
44
|
+
"acceptance:managed": "node scripts/acceptance.mjs --managed",
|
|
45
|
+
"tokens": "node scripts/sync-tokens.mjs"
|
|
45
46
|
},
|
|
46
47
|
"devDependencies": {
|
|
47
48
|
"@types/node": "^22.10.2",
|
package/web/style.css
CHANGED
|
@@ -10,12 +10,7 @@
|
|
|
10
10
|
*/
|
|
11
11
|
|
|
12
12
|
:root {
|
|
13
|
-
/*
|
|
14
|
-
of truth (see design-system/README.md). The older dashboard names below are
|
|
15
|
-
kept as aliases so existing rules resolve to the system's colours without a
|
|
16
|
-
full rename. The page is achromatic: the ONE saturated block is ciphertext
|
|
17
|
-
(--seal); --live marks what is interactive or currently true; --warn is
|
|
18
|
-
rationed to where inaction loses data. */
|
|
13
|
+
/* @tokens:start — generated from design-system/tokens.css, do not edit here */
|
|
19
14
|
--paper: #f4f4f3;
|
|
20
15
|
--card: #fbfbfa;
|
|
21
16
|
--ink: #111316;
|
|
@@ -26,14 +21,17 @@
|
|
|
26
21
|
--live: #2a3fb0;
|
|
27
22
|
--warn: #8c3220;
|
|
28
23
|
--warn-bg: #f4e6e2;
|
|
29
|
-
|
|
24
|
+
--sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Inter, system-ui, "Helvetica Neue", sans-serif;
|
|
30
25
|
--mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, "DejaVu Sans Mono", Consolas, monospace;
|
|
31
|
-
/*
|
|
32
|
-
any rule still asking for a second face complies instead of breaking the
|
|
33
|
-
rule the whole system is built on. */
|
|
34
|
-
--sans: var(--mono);
|
|
26
|
+
/* @tokens:end */
|
|
35
27
|
|
|
36
|
-
/*
|
|
28
|
+
/* Surface-local aliases: older dashboard rules ask for these names, and they
|
|
29
|
+
resolve to the system's colours rather than a second palette. Kept outside
|
|
30
|
+
the generated block on purpose — the token file describes the design
|
|
31
|
+
system, this describes one surface's history. */
|
|
32
|
+
/* Layout constants for this surface, not part of the shared palette. */
|
|
33
|
+
--rail: 264px;
|
|
34
|
+
--gap: 20px;
|
|
37
35
|
--panel: var(--card);
|
|
38
36
|
--rule-soft: #e6e7e9;
|
|
39
37
|
--text: var(--ink);
|
|
@@ -43,17 +41,8 @@
|
|
|
43
41
|
--verified: var(--live);
|
|
44
42
|
--held: var(--soft);
|
|
45
43
|
--alert: var(--warn);
|
|
46
|
-
/* Were dark-navy fills for the old rail; now the solid-ink fill the system
|
|
47
|
-
uses for a filled control. Lazy substitution keeps them theme-correct. */
|
|
48
44
|
--ink-2: var(--ink);
|
|
49
45
|
--ink-3: var(--soft);
|
|
50
|
-
/* Rail is now part of the light page, not a dark slab. These name faint
|
|
51
|
-
surfaces used for nav hover/active and glyphs. */
|
|
52
|
-
--rail-active: #ecedf0;
|
|
53
|
-
--rail-glyph: #9aa0a8;
|
|
54
|
-
|
|
55
|
-
--rail: 264px;
|
|
56
|
-
--gap: 20px;
|
|
57
46
|
}
|
|
58
47
|
|
|
59
48
|
/* ── Dark ─────────────────────────────────────────────── */
|
|
@@ -176,7 +165,9 @@ nav button .count { margin-left: auto; font-size: 11.5px; color: var(--soft); }
|
|
|
176
165
|
margin-top: auto;
|
|
177
166
|
border-top: 1px solid var(--rule);
|
|
178
167
|
padding: 18px 12px 0;
|
|
179
|
-
|
|
168
|
+
/* Prose, so it reads as prose. Mono is reserved for what a machine said —
|
|
169
|
+
a size, a path, a state, a command — and this is us explaining the page. */
|
|
170
|
+
font-family: var(--sans);
|
|
180
171
|
font-size: 12px;
|
|
181
172
|
color: var(--soft);
|
|
182
173
|
line-height: 1.65;
|