eklavya 1.47.5 → 1.48.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.
- package/README.md +7 -3
- package/dist/artifacts.js +53 -21
- package/dist/artifacts.js.map +1 -1
- package/dist/assets/dashboard.html +195 -6
- package/dist/assets/vendor/driver-hints.LICENSE +21 -0
- package/dist/assets/vendor/driver-hints.css +1 -0
- package/dist/assets/vendor/driver-hints.js +2 -0
- package/dist/dashboard.js +38 -29
- package/dist/dashboard.js.map +1 -1
- package/dist/migrations/021_change_version.sql +150 -0
- package/dist/plugin/.claude-plugin/plugin.json +1 -1
- package/package.json +2 -1
package/README.md
CHANGED
|
@@ -81,9 +81,13 @@ npx eklavya db-path
|
|
|
81
81
|
|
|
82
82
|
The [CLI reference](https://eklavya-run.web.app/docs/cli/) lists all commands and
|
|
83
83
|
flags. The dashboard reads the database and has two guarded writes: a setting
|
|
84
|
-
change and a correction of a missed answer.
|
|
85
|
-
|
|
86
|
-
|
|
84
|
+
change and a correction of a missed answer. An open page polls `/api/cursor`, a
|
|
85
|
+
counter that moves on every write it would show, and offers a refresh. A request
|
|
86
|
+
it cannot parse gets a 400 without stopping the server
|
|
87
|
+
([what it is, underneath](https://eklavya-run.web.app/docs/dashboard/#what-it-is-underneath)).
|
|
88
|
+
Its feature tips use Driver.js, bundled in `dist/` at build and served by the
|
|
89
|
+
dashboard itself at `/vendor/driver-hints.js` and `/vendor/driver-hints.css`, so
|
|
90
|
+
the page still requests nothing from another host. [Configuration](https://eklavya-run.web.app/docs/configuration/) lists
|
|
87
91
|
defaults and scopes. The [memory guide](https://eklavya-run.web.app/docs/memory/)
|
|
88
92
|
covers retrieval, processing, providers, privacy and sync.
|
|
89
93
|
|
package/dist/artifacts.js
CHANGED
|
@@ -151,17 +151,62 @@ export function artifactIdOf(file, root = artifactsDir()) {
|
|
|
151
151
|
*/
|
|
152
152
|
export function listArtifacts(root = artifactsDir()) {
|
|
153
153
|
const rows = [];
|
|
154
|
+
for (const { folder, name, file, st } of artifactFiles(root)) {
|
|
155
|
+
try {
|
|
156
|
+
const head = readHead(file);
|
|
157
|
+
const title = /<title>([^<]*)<\/title>/i.exec(head)?.[1]?.trim();
|
|
158
|
+
const kind = meta(head, 'eklavya:kind');
|
|
159
|
+
rows.push({
|
|
160
|
+
id: `${folder}/${name}`,
|
|
161
|
+
title: title ? unescHtml(title) : name.replace(/\.html?$/i, ''),
|
|
162
|
+
description: meta(head, 'description') ?? '',
|
|
163
|
+
project: meta(head, 'eklavya:project') || null,
|
|
164
|
+
kind: kind === 'explainer' ? 'explainer' : 'artifact',
|
|
165
|
+
concept: meta(head, 'eklavya:concept') || null,
|
|
166
|
+
attempt: attemptId(meta(head, 'eklavya:attempt')),
|
|
167
|
+
created: meta(head, 'eklavya:created') || st.mtime.toISOString(),
|
|
168
|
+
bytes: st.size,
|
|
169
|
+
});
|
|
170
|
+
}
|
|
171
|
+
catch {
|
|
172
|
+
continue;
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
return rows.sort((a, b) => (a.created < b.created ? 1 : a.created > b.created ? -1 : 0));
|
|
176
|
+
}
|
|
177
|
+
/**
|
|
178
|
+
* What changes when the artifact list would: how many pages, their total size
|
|
179
|
+
* and the newest modification time. `lstat` only, never a read, so the
|
|
180
|
+
* dashboard's poll can afford it once a minute. Same folder and file rules as
|
|
181
|
+
* `listArtifacts`; the stamp is only for comparing with an earlier one.
|
|
182
|
+
*/
|
|
183
|
+
export function artifactsStamp(root = artifactsDir()) {
|
|
184
|
+
let count = 0;
|
|
185
|
+
let bytes = 0;
|
|
186
|
+
let newest = 0;
|
|
187
|
+
for (const { st } of artifactFiles(root)) {
|
|
188
|
+
count += 1;
|
|
189
|
+
bytes += st.size;
|
|
190
|
+
newest = Math.max(newest, st.mtimeMs);
|
|
191
|
+
}
|
|
192
|
+
return `${count}.${bytes}.${Math.floor(newest)}`;
|
|
193
|
+
}
|
|
194
|
+
/**
|
|
195
|
+
* Every page file under the root, stat'ed but not read. The rules
|
|
196
|
+
* `resolveArtifact` serves by, so nothing is listed that the dashboard would
|
|
197
|
+
* then refuse: no dot-names, no symlinks -- a link's `<head>` would otherwise
|
|
198
|
+
* be read from wherever it points. An unreadable folder or file costs itself.
|
|
199
|
+
*/
|
|
200
|
+
function artifactFiles(root) {
|
|
201
|
+
const out = [];
|
|
154
202
|
let folders;
|
|
155
203
|
try {
|
|
156
204
|
folders = fs.readdirSync(root, { withFileTypes: true });
|
|
157
205
|
}
|
|
158
206
|
catch {
|
|
159
|
-
return
|
|
207
|
+
return out;
|
|
160
208
|
}
|
|
161
209
|
for (const folder of folders) {
|
|
162
|
-
// The same rules `resolveArtifact` serves by, so nothing is listed that
|
|
163
|
-
// the dashboard would then refuse: no dot-names, no symlinks — a link's
|
|
164
|
-
// `<head>` would otherwise be read from wherever it points.
|
|
165
210
|
if (!folder.isDirectory() || folder.name.startsWith('.'))
|
|
166
211
|
continue;
|
|
167
212
|
let files;
|
|
@@ -177,29 +222,16 @@ export function listArtifacts(root = artifactsDir()) {
|
|
|
177
222
|
const file = path.join(root, folder.name, name);
|
|
178
223
|
try {
|
|
179
224
|
const st = fs.lstatSync(file);
|
|
180
|
-
if (
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
const title = /<title>([^<]*)<\/title>/i.exec(head)?.[1]?.trim();
|
|
184
|
-
const kind = meta(head, 'eklavya:kind');
|
|
185
|
-
rows.push({
|
|
186
|
-
id: `${folder.name}/${name}`,
|
|
187
|
-
title: title ? unescHtml(title) : name.replace(/\.html?$/i, ''),
|
|
188
|
-
description: meta(head, 'description') ?? '',
|
|
189
|
-
project: meta(head, 'eklavya:project') || null,
|
|
190
|
-
kind: kind === 'explainer' ? 'explainer' : 'artifact',
|
|
191
|
-
concept: meta(head, 'eklavya:concept') || null,
|
|
192
|
-
attempt: attemptId(meta(head, 'eklavya:attempt')),
|
|
193
|
-
created: meta(head, 'eklavya:created') || st.mtime.toISOString(),
|
|
194
|
-
bytes: st.size,
|
|
195
|
-
});
|
|
225
|
+
if (st.isFile())
|
|
226
|
+
out.push({ folder: folder.name, name, file, st });
|
|
227
|
+
/* c8 ignore next 3 -- removed between the listing and the lstat */
|
|
196
228
|
}
|
|
197
229
|
catch {
|
|
198
230
|
continue;
|
|
199
231
|
}
|
|
200
232
|
}
|
|
201
233
|
}
|
|
202
|
-
return
|
|
234
|
+
return out;
|
|
203
235
|
}
|
|
204
236
|
/**
|
|
205
237
|
* The file behind an id, or null. Exactly `<folder>/<file>.html`, both plain
|
package/dist/artifacts.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"artifacts.js","sourceRoot":"","sources":["../src/artifacts.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"artifacts.js","sourceRoot":"","sources":["../src/artifacts.ts"],"names":[],"mappings":"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"}
|
|
@@ -44,6 +44,9 @@
|
|
|
44
44
|
this page is fetched from anywhere but this loopback server. The font
|
|
45
45
|
stacks fall through to the system faces they already name. -->
|
|
46
46
|
<link rel="stylesheet" href="/tokens.css">
|
|
47
|
+
<!-- Feature tips: Driver.js's hints module, pinned and served by this server (see TIP). -->
|
|
48
|
+
<link rel="stylesheet" href="/vendor/driver-hints.css">
|
|
49
|
+
<script src="/vendor/driver-hints.js" defer></script>
|
|
47
50
|
<style>
|
|
48
51
|
/* ============================================================
|
|
49
52
|
Layout: a fixed rail and one scrolling column.
|
|
@@ -735,6 +738,31 @@
|
|
|
735
738
|
.set__btn:hover { color:var(--ink); border-color:var(--spot); }
|
|
736
739
|
/* A config path is one unbroken word; on a phone it has to break anywhere. */
|
|
737
740
|
.counts .mono, .lines .mono { overflow-wrap:anywhere; }
|
|
741
|
+
/* ---------- feature tips: Driver.js hints restyled, vendor CSS untouched ---------- */
|
|
742
|
+
.driver-hint { --driver-hint-color:var(--spot); --driver-hint-size:14px; }
|
|
743
|
+
.driver-popover.driver-hint-popover.coach { background:var(--spot); color:var(--spot-ink); border-radius:0;
|
|
744
|
+
filter:none; box-shadow:var(--shadow-lg); min-width:0; max-width:min(320px, calc(100vw - 32px));
|
|
745
|
+
padding:14px 16px; font-family:var(--font-body); animation:coach-in 160ms var(--ease); }
|
|
746
|
+
@keyframes coach-in { from { opacity:0; } }
|
|
747
|
+
/* The arrow is a border triangle: only the side it points from takes the fill. */
|
|
748
|
+
.coach .driver-popover-arrow-side-left { border-left-color:var(--spot); }
|
|
749
|
+
.coach .driver-popover-arrow-side-right { border-right-color:var(--spot); }
|
|
750
|
+
.coach .driver-popover-arrow-side-top { border-top-color:var(--spot); }
|
|
751
|
+
.coach .driver-popover-arrow-side-bottom { border-bottom-color:var(--spot); }
|
|
752
|
+
.coach .driver-popover-title { position:absolute; width:1px; height:1px; overflow:hidden;
|
|
753
|
+
clip-path:inset(50%); white-space:nowrap; }
|
|
754
|
+
.coach .driver-popover-description { position:relative; margin:0 !important; padding:0 28px 0 30px;
|
|
755
|
+
font-size:14px; line-height:1.45; color:var(--spot-ink); }
|
|
756
|
+
.coach .driver-popover-description b { font-weight:600; }
|
|
757
|
+
.coach__icon { position:absolute; left:0; top:1px; width:18px; height:18px; }
|
|
758
|
+
.coach__x { position:absolute; z-index:1; top:8px; right:8px; width:24px; height:24px; padding:3px; border:0;
|
|
759
|
+
background:none; color:var(--spot-ink); cursor:pointer; display:grid; place-items:center; }
|
|
760
|
+
.coach__x svg { width:16px; height:16px; }
|
|
761
|
+
.coach__x:focus-visible, .coach .driver-popover-footer-btn:focus-visible { outline:none; box-shadow:inset 0 0 0 2px var(--spot-ink); }
|
|
762
|
+
.coach .driver-popover-footer { margin-top:10px; justify-content:flex-end; }
|
|
763
|
+
.coach .driver-popover-footer-btn { font-family:var(--font-mono); font-size:12px; color:var(--spot-ink);
|
|
764
|
+
background:none; border:0; border-radius:0; padding:2px 4px; text-shadow:none; }
|
|
765
|
+
.coach .driver-popover-footer-btn:hover, .coach .driver-popover-footer-btn:focus { background:none; text-decoration:underline; }
|
|
738
766
|
@media (prefers-reduced-motion:reduce) {
|
|
739
767
|
html { scroll-behavior:auto; }
|
|
740
768
|
* { transition:none !important; animation:none !important; }
|
|
@@ -799,6 +827,14 @@
|
|
|
799
827
|
<button type="button" data-ground="paper" aria-pressed="false">paper</button>
|
|
800
828
|
</div>
|
|
801
829
|
</div>
|
|
830
|
+
|
|
831
|
+
<div class="side__group">
|
|
832
|
+
<p class="side__label">Tips</p>
|
|
833
|
+
<div class="ground" role="group" aria-label="Feature tips">
|
|
834
|
+
<button type="button" data-tips="on" aria-pressed="true">on</button>
|
|
835
|
+
<button type="button" data-tips="off" aria-pressed="false">off</button>
|
|
836
|
+
</div>
|
|
837
|
+
</div>
|
|
802
838
|
</div>
|
|
803
839
|
|
|
804
840
|
</aside>
|
|
@@ -1429,6 +1465,7 @@ function fill(id, url, draw) {
|
|
|
1429
1465
|
el.removeAttribute('aria-busy');
|
|
1430
1466
|
focusable(el);
|
|
1431
1467
|
for (const fn of AFTER.splice(0)) fn();
|
|
1468
|
+
TIP.sync();
|
|
1432
1469
|
}).catch((e) => {
|
|
1433
1470
|
const el = $(id);
|
|
1434
1471
|
if (el && gen === GEN) { el.innerHTML = `<p class="empty">Could not load: ${esc(e.message)}</p>`; el.removeAttribute('aria-busy'); }
|
|
@@ -2743,6 +2780,7 @@ function openFix() {
|
|
|
2743
2780
|
+ `${d.option_notes?.[i] ? `<span class="fix__n">${esc(d.option_notes[i])}</span>` : ''}<span class="fix__tag"></span></button>`).join('');
|
|
2744
2781
|
fixSay('', '');
|
|
2745
2782
|
$('fix').showModal();
|
|
2783
|
+
TIP.sync();
|
|
2746
2784
|
$('fix-opts').querySelector('button').focus();
|
|
2747
2785
|
}
|
|
2748
2786
|
|
|
@@ -2792,6 +2830,7 @@ $('fix-opts').addEventListener('keydown', (e) => {
|
|
|
2792
2830
|
$('fix-close').addEventListener('click', () => $('fix').close());
|
|
2793
2831
|
// However it closes -- the button, Escape -- the bar shows where things stand.
|
|
2794
2832
|
$('fix').addEventListener('close', () => {
|
|
2833
|
+
TIP.sync();
|
|
2795
2834
|
const bar = $('fixbar');
|
|
2796
2835
|
const a = FIX && S.artifacts.find((x) => x.id === FIX.artifact);
|
|
2797
2836
|
if (bar && a) { paintFix(bar, a, FIX.q, FIX.q.corrected_at !== null); $('fix-open')?.focus(); }
|
|
@@ -2837,6 +2876,146 @@ for (const ev of ['wheel', 'touchmove', 'keydown']) {
|
|
|
2837
2876
|
}, { passive: true });
|
|
2838
2877
|
}
|
|
2839
2878
|
|
|
2879
|
+
/* ---------- feature tips ----------
|
|
2880
|
+
A beacon on each feature this screen has a tip for, and the first of them
|
|
2881
|
+
opened once, by itself. Driver.js's hints module does the placing, the
|
|
2882
|
+
arrow, Escape and click-outside; this keeps the list and what the reader
|
|
2883
|
+
has seen, per browser, in localStorage. Add a tip as one row of TIPS:
|
|
2884
|
+
`id` is never reused (renaming it shows the tip again to everyone who
|
|
2885
|
+
dismissed it), `where` names `<workflow>/<page>` pages from WORKFLOWS, `el`
|
|
2886
|
+
is the feature, `text` says what it does, and an optional `when()` limits
|
|
2887
|
+
it to data that makes it true. Order is priority. The browser suite's
|
|
2888
|
+
registry guard checks every row against the fixture. */
|
|
2889
|
+
const TIPS = [
|
|
2890
|
+
{ id: 'wf-switch', where: ['learning/dashboard'], el: '#wf-caret', side: 'right', title: 'Switch workflow',
|
|
2891
|
+
text: 'Eklavya has four workflows: Learning, Memory, Artifacts and Settings. Switch between them here.' },
|
|
2892
|
+
{ id: 'how-this-works', where: ['learning/dashboard', 'memory/dashboard'], el: '#view details.about > summary', title: 'How this works',
|
|
2893
|
+
text: 'Every page explains where its numbers come from. Open this to read it.' },
|
|
2894
|
+
{ id: 'project-scope', where: ['learning/sessions', 'memory/timeline'], el: '#proj', side: 'right', title: 'Project scope',
|
|
2895
|
+
text: 'Pick a project to narrow every page to its activity. Your scores stay the same everywhere.' },
|
|
2896
|
+
{ id: 'concept-filters', where: ['learning/concepts'], el: '#chips', title: 'Concept filters',
|
|
2897
|
+
text: 'Filter concepts by state. The filter is part of the link, so you can bookmark it.' },
|
|
2898
|
+
{ id: 'review-tabs', where: ['learning/review'], el: '#tabs', title: 'Review lists',
|
|
2899
|
+
text: 'Due, missed and skipped answers each have their own list here.' },
|
|
2900
|
+
{ id: 'timeline-open', where: ['memory/timeline'], el: '#view .tl-item > summary', title: 'Open an entry',
|
|
2901
|
+
text: 'Open a line to read what was remembered and the evidence it came from.' },
|
|
2902
|
+
{ id: 'to-correct', where: ['artifacts/dashboard'], el: '#view .chips [data-go*="to-correct"]', title: 'Answers to correct',
|
|
2903
|
+
text: 'Missed answers wait here. Open one, read the page, then correct your answer.',
|
|
2904
|
+
when: () => (S.artifacts ?? []).some((a) => a.correction === 'open') },
|
|
2905
|
+
{ id: 'artifact-tabs', where: ['artifacts/view'], el: '#view [role="tablist"]', title: 'Open pages',
|
|
2906
|
+
text: 'Pages you open stay here as tabs, up to eight. All artifacts takes you back.' },
|
|
2907
|
+
{ id: 'settings-scope', where: ['settings/dashboard'], el: '#nav', side: 'right', title: 'User or project',
|
|
2908
|
+
text: 'User settings apply everywhere. Project settings override them for one project.' },
|
|
2909
|
+
{ id: 'ground', where: ['settings/dashboard'], el: '.ground[aria-label="Colour ground"]', side: 'right', title: 'Ink or paper',
|
|
2910
|
+
text: 'Switch the dashboard between a dark and a light ground.' },
|
|
2911
|
+
];
|
|
2912
|
+
const TIPS_KEY = 'eklavya-dash-tips';
|
|
2913
|
+
const ICON_TIP = '<svg class="coach__icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M15 14c.2-1 .7-1.7 1.5-2.5 1-.9 1.5-2.2 1.5-3.5A6 6 0 0 0 6 8c0 1 .2 2.2 1.5 3.5.7.7 1.3 1.5 1.5 2.5"/><path d="M9 18h6"/><path d="M10 22h4"/></svg>';
|
|
2914
|
+
const TIP = {
|
|
2915
|
+
state: undefined, // { off, done, opened }; null when storage throws, which means no tips
|
|
2916
|
+
hints: null,
|
|
2917
|
+
shown: [], // [id, element] pairs the beacons were last drawn for
|
|
2918
|
+
timer: 0,
|
|
2919
|
+
load() {
|
|
2920
|
+
if (this.state !== undefined) return this.state;
|
|
2921
|
+
let raw = null, v = null;
|
|
2922
|
+
// Without memory a tip would reopen on every load, so no storage means no tips.
|
|
2923
|
+
try { raw = localStorage.getItem(TIPS_KEY); } catch (e) { return (this.state = null); }
|
|
2924
|
+
try { v = JSON.parse(raw); } catch (e) { /* malformed: the defaults */ }
|
|
2925
|
+
const ids = (a) => (Array.isArray(a) ? a.filter((x) => typeof x === 'string') : []);
|
|
2926
|
+
return (this.state = { off: v?.off === true, done: ids(v?.done), opened: ids(v?.opened) });
|
|
2927
|
+
},
|
|
2928
|
+
save() { try { localStorage.setItem(TIPS_KEY, JSON.stringify(this.state)); } catch (e) { this.state = null; } },
|
|
2929
|
+
mark(list, id) { if (this.state && !this.state[list].includes(id)) { this.state[list].push(id); this.save(); } },
|
|
2930
|
+
lib() {
|
|
2931
|
+
if (!this.hints && window.driverHints) {
|
|
2932
|
+
this.hints = window.driverHints.hints({
|
|
2933
|
+
overlay: false,
|
|
2934
|
+
onOpen: (el, h) => this.mark('opened', h.id),
|
|
2935
|
+
onDismiss: (el, h) => this.mark('done', h.id),
|
|
2936
|
+
});
|
|
2937
|
+
}
|
|
2938
|
+
return this.hints;
|
|
2939
|
+
},
|
|
2940
|
+
/** Which tips this screen shows: called after every render and every fill. */
|
|
2941
|
+
sync() {
|
|
2942
|
+
const h = this.lib();
|
|
2943
|
+
const st = S && h ? this.load() : null;
|
|
2944
|
+
clearTimeout(this.timer);
|
|
2945
|
+
if (!st || st.off || drawerOpen || $('fix').open || !menu.hidden || !pmenu.hidden || !smenu.hidden) {
|
|
2946
|
+
h?.hide();
|
|
2947
|
+
this.shown = [];
|
|
2948
|
+
return;
|
|
2949
|
+
}
|
|
2950
|
+
const at = `${CUR.wf}/${CUR.page}`;
|
|
2951
|
+
const eligible = (window.__eklavyaTestTips ?? TIPS).flatMap((t) => {
|
|
2952
|
+
const node = t.where.includes(at) && !st.done.includes(t.id) && (!t.when || t.when()) ? document.querySelector(t.el) : null;
|
|
2953
|
+
// On a narrow screen the rail is a drawer, closed or sliding away, whenever tips can show.
|
|
2954
|
+
return node?.getClientRects().length && !(narrow.matches && side.contains(node)) ? [[t, node]] : [];
|
|
2955
|
+
});
|
|
2956
|
+
// Same features, same nodes: leave a bubble the reader opened alone.
|
|
2957
|
+
if (eligible.length !== this.shown.length || eligible.some(([t, n], i) => this.shown[i][0] !== t.id || this.shown[i][1] !== n)) {
|
|
2958
|
+
this.shown = eligible.map(([t, n]) => [t.id, n]);
|
|
2959
|
+
h.setHints(eligible.map(([t, n]) => ({
|
|
2960
|
+
id: t.id,
|
|
2961
|
+
element: n,
|
|
2962
|
+
popover: {
|
|
2963
|
+
title: esc(t.title),
|
|
2964
|
+
description: `${ICON_TIP}<span><b>Tip:</b> ${esc(t.text)}</span>`,
|
|
2965
|
+
side: t.side ?? 'bottom', align: 'start', buttonText: 'Got it', popoverClass: 'coach',
|
|
2966
|
+
onPopoverRender: (p) => {
|
|
2967
|
+
const x = document.createElement('button');
|
|
2968
|
+
x.type = 'button';
|
|
2969
|
+
x.className = 'coach__x';
|
|
2970
|
+
x.setAttribute('aria-label', 'Close');
|
|
2971
|
+
x.innerHTML = ICON_X;
|
|
2972
|
+
// The library's own × is hidden and its click goes nowhere; this one keeps the beacon.
|
|
2973
|
+
x.addEventListener('click', () => {
|
|
2974
|
+
const beacon = document.querySelector('.driver-hint[aria-expanded="true"]');
|
|
2975
|
+
h.close();
|
|
2976
|
+
beacon?.focus();
|
|
2977
|
+
});
|
|
2978
|
+
p.wrapper.prepend(x);
|
|
2979
|
+
},
|
|
2980
|
+
},
|
|
2981
|
+
})));
|
|
2982
|
+
}
|
|
2983
|
+
h.show();
|
|
2984
|
+
// Only the screen's first tip opens by itself, and only once; the rest stay beacons.
|
|
2985
|
+
const first = eligible[0];
|
|
2986
|
+
if (!first || st.opened.includes(first[0].id)) return;
|
|
2987
|
+
const gen = GEN;
|
|
2988
|
+
this.timer = setTimeout(() => {
|
|
2989
|
+
const r = first[1].getBoundingClientRect();
|
|
2990
|
+
// Off screen, the bubble would scroll the page to itself; the beacon waits instead.
|
|
2991
|
+
if (gen !== GEN || h.getActive() || !first[1].isConnected || r.bottom <= 0 || r.top >= innerHeight) return;
|
|
2992
|
+
// Opening moves focus into the bubble; an automatic one must not take it from the reader.
|
|
2993
|
+
const was = document.activeElement;
|
|
2994
|
+
h.open(first[0].id);
|
|
2995
|
+
if (was && was !== document.body) was.focus({ preventScroll: true });
|
|
2996
|
+
else document.activeElement?.blur();
|
|
2997
|
+
}, 600);
|
|
2998
|
+
},
|
|
2999
|
+
/** The sidebar switch: off hides everything; on starts every tip over. */
|
|
3000
|
+
set(on) {
|
|
3001
|
+
if (!this.load()) return;
|
|
3002
|
+
this.state = on ? { off: false, done: [], opened: [] } : { ...this.state, off: true };
|
|
3003
|
+
this.save();
|
|
3004
|
+
this.paint();
|
|
3005
|
+
this.shown = [];
|
|
3006
|
+
this.sync();
|
|
3007
|
+
},
|
|
3008
|
+
paint() {
|
|
3009
|
+
const on = !this.load()?.off;
|
|
3010
|
+
document.querySelectorAll('[data-tips]').forEach((b) => b.setAttribute('aria-pressed', String((b.dataset.tips === 'on') === on)));
|
|
3011
|
+
},
|
|
3012
|
+
};
|
|
3013
|
+
// Using the feature is proof the tip worked: it goes for good.
|
|
3014
|
+
document.addEventListener('click', (e) => {
|
|
3015
|
+
for (const [id, n] of TIP.shown) if (n.contains(e.target)) TIP.hints.dismiss(id);
|
|
3016
|
+
}, true);
|
|
3017
|
+
document.querySelectorAll('[data-tips]').forEach((b) => b.addEventListener('click', () => TIP.set(b.dataset.tips === 'on')));
|
|
3018
|
+
|
|
2840
3019
|
/* ---------- artifact tabs ----------
|
|
2841
3020
|
Open pages stay open as tabs. The URL names the active one; the list itself
|
|
2842
3021
|
is a per-viewer convenience in localStorage (never the URL, never the
|
|
@@ -3542,6 +3721,7 @@ function openPicker() {
|
|
|
3542
3721
|
</button>`).join('');
|
|
3543
3722
|
menu.hidden = false;
|
|
3544
3723
|
caret.setAttribute('aria-expanded', 'true');
|
|
3724
|
+
TIP.sync();
|
|
3545
3725
|
placePicker();
|
|
3546
3726
|
(pickerItems().find((b) => b.dataset.wf === CUR.wf) ?? pickerItems()[0]).focus();
|
|
3547
3727
|
}
|
|
@@ -3551,6 +3731,7 @@ function closePicker(restore = true) {
|
|
|
3551
3731
|
const hadFocus = menu.contains(document.activeElement);
|
|
3552
3732
|
menu.hidden = true;
|
|
3553
3733
|
caret.setAttribute('aria-expanded', 'false');
|
|
3734
|
+
TIP.sync();
|
|
3554
3735
|
if (restore || hadFocus) caret.focus();
|
|
3555
3736
|
}
|
|
3556
3737
|
|
|
@@ -3618,6 +3799,7 @@ function openProjects() {
|
|
|
3618
3799
|
if (pbtn.disabled) return;
|
|
3619
3800
|
pmenu.hidden = false;
|
|
3620
3801
|
pbtn.setAttribute('aria-expanded', 'true');
|
|
3802
|
+
TIP.sync();
|
|
3621
3803
|
placePicker(pmenu, pbtn);
|
|
3622
3804
|
const cur = projOptions().find((o) => o.getAttribute('aria-selected') === 'true') ?? projOptions()[0];
|
|
3623
3805
|
cur.focus();
|
|
@@ -3629,6 +3811,7 @@ function closeProjects(restore = true) {
|
|
|
3629
3811
|
const hadFocus = pmenu.contains(document.activeElement);
|
|
3630
3812
|
pmenu.hidden = true;
|
|
3631
3813
|
pbtn.setAttribute('aria-expanded', 'false');
|
|
3814
|
+
TIP.sync();
|
|
3632
3815
|
if (restore || hadFocus) pbtn.focus();
|
|
3633
3816
|
}
|
|
3634
3817
|
|
|
@@ -3730,6 +3913,7 @@ function openSelect(b) {
|
|
|
3730
3913
|
smenu.hidden = false;
|
|
3731
3914
|
sOpen = b;
|
|
3732
3915
|
b.setAttribute('aria-expanded', 'true');
|
|
3916
|
+
TIP.sync();
|
|
3733
3917
|
placePicker(smenu, b);
|
|
3734
3918
|
const cur = selOptions()[Math.max(0, s.selectedIndex)];
|
|
3735
3919
|
cur?.focus();
|
|
@@ -3743,6 +3927,7 @@ function closeSelect(restore = true) {
|
|
|
3743
3927
|
smenu.hidden = true;
|
|
3744
3928
|
sOpen = null;
|
|
3745
3929
|
b.setAttribute('aria-expanded', 'false');
|
|
3930
|
+
TIP.sync();
|
|
3746
3931
|
if ((restore || hadFocus) && b.isConnected) b.focus();
|
|
3747
3932
|
}
|
|
3748
3933
|
|
|
@@ -3844,6 +4029,7 @@ function syncDrawer() {
|
|
|
3844
4029
|
$('scrim').classList.toggle('is-open', drawerOpen);
|
|
3845
4030
|
document.body.classList.toggle('drawer-open', drawerOpen);
|
|
3846
4031
|
$('menu').setAttribute('aria-expanded', String(drawerOpen));
|
|
4032
|
+
TIP.sync();
|
|
3847
4033
|
}
|
|
3848
4034
|
|
|
3849
4035
|
function openDrawer() {
|
|
@@ -3926,6 +4112,8 @@ function render(keepFocus) {
|
|
|
3926
4112
|
|
|
3927
4113
|
AFTER.length = 0;
|
|
3928
4114
|
LAZY.clear();
|
|
4115
|
+
// A bubble never survives a navigation.
|
|
4116
|
+
TIP.hints?.close();
|
|
3929
4117
|
// A screen that still has a correction open re-arms this when it draws its bar.
|
|
3930
4118
|
armLeave(false);
|
|
3931
4119
|
$('view').innerHTML = !pg ? viewNotFound('#/' + CUR.wf + '/' + CUR.page, false)
|
|
@@ -3934,6 +4122,7 @@ function render(keepFocus) {
|
|
|
3934
4122
|
// A clickable row has to be reachable by Tab as well as by mouse.
|
|
3935
4123
|
focusable($('view'));
|
|
3936
4124
|
for (const fn of AFTER) fn();
|
|
4125
|
+
TIP.sync();
|
|
3937
4126
|
|
|
3938
4127
|
if (keepFocus) {
|
|
3939
4128
|
const el = $(keepFocus.id);
|
|
@@ -4077,11 +4266,10 @@ document.querySelectorAll('[data-ground]').forEach((b) => {
|
|
|
4077
4266
|
});
|
|
4078
4267
|
|
|
4079
4268
|
/* ---------- staying honest about how old this page is ---------- */
|
|
4080
|
-
// ponytail: a poll, not SSE. Ceiling: a change shows up to POLL_MS late
|
|
4081
|
-
//
|
|
4082
|
-
//
|
|
4083
|
-
//
|
|
4084
|
-
// so that swap is this function, not the page.
|
|
4269
|
+
// ponytail: a poll, not SSE. Ceiling: a change shows up to POLL_MS late. Each
|
|
4270
|
+
// tick asks `/api/cursor` for the one string, which costs a single-row read and
|
|
4271
|
+
// a stat of the artifact files, never the payload. The upgrade is SSE over the
|
|
4272
|
+
// same cursor (PRD DASH-01), so that swap is this function, not the page.
|
|
4085
4273
|
const POLL_MS = 60000;
|
|
4086
4274
|
let polling = false;
|
|
4087
4275
|
|
|
@@ -4100,7 +4288,7 @@ function poll() {
|
|
|
4100
4288
|
// already up, or nobody is looking — a background tab must not poll at all.
|
|
4101
4289
|
if (!S || polling || !$('stale').hidden || document.visibilityState !== 'visible') return;
|
|
4102
4290
|
polling = true;
|
|
4103
|
-
fetch('/api/
|
|
4291
|
+
fetch('/api/cursor')
|
|
4104
4292
|
.then((r) => r.json())
|
|
4105
4293
|
.then((s) => { if (s.cursor !== S.cursor) $('stale').hidden = false; })
|
|
4106
4294
|
// A failed poll changes nothing: the page keeps working on the data it has.
|
|
@@ -4153,6 +4341,7 @@ Promise.all([json('/api/state'), json('/api/projects')]).then(([s, inv]) => {
|
|
|
4153
4341
|
// that logged concepts but was never asked a question, or that only ever
|
|
4154
4342
|
// captured memory, is a project and is listed.
|
|
4155
4343
|
buildProjects(inv);
|
|
4344
|
+
TIP.paint();
|
|
4156
4345
|
|
|
4157
4346
|
syncFromUrl();
|
|
4158
4347
|
$('app').classList.remove('booting');
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
The MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) Kamran Ahmed
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in
|
|
13
|
+
all copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
21
|
+
THE SOFTWARE.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.driver-popover{all:unset;font-family:var(--driver-popover-font-family,"Helvetica Neue", Inter, ui-sans-serif, "Apple Color Emoji", Helvetica, Arial, sans-serif);box-sizing:border-box;color:#2d2d2d;z-index:1000000000;background-color:#fff;border-radius:5px;min-width:250px;max-width:300px;margin:0;padding:15px;position:fixed;top:0;right:0;box-shadow:0 1px 10px #0006}.driver-popover-title{zoom:1;margin:0;font-size:19px;font-weight:700;line-height:1.5;display:block;position:relative}.driver-popover-close-btn{all:unset;cursor:pointer;color:#d2d2d2;z-index:1;text-align:center;width:32px;height:28px;font-size:18px;font-weight:500;transition:color .2s;position:absolute;top:0;right:0}.driver-popover-close-btn:hover,.driver-popover-close-btn:focus{color:#2d2d2d}.driver-popover-title[style*=block]+.driver-popover-description{margin-top:5px}.driver-popover-description{zoom:1;margin-bottom:0;font-size:14px;font-weight:400;line-height:1.5}.driver-popover-footer{text-align:right;zoom:1;justify-content:space-between;align-items:center;margin-top:15px;display:flex}.driver-popover-progress-text{color:#727272;zoom:1;font-size:13px;font-weight:400}.driver-popover-footer-btn{all:unset;box-sizing:border-box;color:#2d2d2d;cursor:pointer;zoom:1;background-color:#fff;border:1px solid #ccc;border-radius:3px;outline:0;padding:3px 7px;font-size:12px;line-height:1.3;text-decoration:none;display:inline-block}.driver-popover-footer .driver-popover-btn-disabled{opacity:.5;pointer-events:none}.driver-popover-footer-btn:hover,.driver-popover-footer-btn:focus{background-color:#f7f7f7}.driver-popover-navigation-btns{flex-grow:1;justify-content:flex-end;display:flex}.driver-popover-navigation-btns button+button{margin-left:4px}.driver-popover-arrow{content:"";border:5px solid #fff;position:absolute}.driver-popover-arrow-side-over{display:none}.driver-popover-arrow-side-left{border-top-color:#0000;border-bottom-color:#0000;border-right-color:#0000;left:100%}.driver-popover-arrow-side-right{border-top-color:#0000;border-bottom-color:#0000;border-left-color:#0000;right:100%}.driver-popover-arrow-side-top{border-bottom-color:#0000;border-left-color:#0000;border-right-color:#0000;top:100%}.driver-popover-arrow-side-bottom{border-top-color:#0000;border-left-color:#0000;border-right-color:#0000;bottom:100%}.driver-popover-arrow-side-center,.driver-popover-arrow-none{display:none}.driver-hint{all:unset;box-sizing:border-box;width:var(--driver-hint-size,24px);height:var(--driver-hint-size,24px);cursor:pointer;z-index:999999996;display:block;position:fixed;transform:translate(-50%,-50%)}.driver-hint[aria-expanded=true]{z-index:999999998}.driver-hint-hidden{display:none}.driver-hint-dot,.driver-hint-pulse{background-color:var(--driver-hint-color,#818cf8);border-radius:50%;position:absolute}.driver-hint-dot{inset:25%}.driver-hint-pulse{opacity:.6;pointer-events:none;animation:driver-hint-pulse var(--driver-hint-animation-duration,2s) ease-out infinite;inset:0}@keyframes driver-hint-pulse{0%{opacity:.6;transform:scale(.5)}70%{opacity:0;transform:scale(1.5)}to{opacity:0;transform:scale(1.5)}}.driver-hint-no-animation .driver-hint-pulse{animation:none}@media (prefers-reduced-motion:reduce){.driver-hint-pulse{animation:none}}.driver-hint-popover .driver-popover-arrow{border-width:7px}.driver-hint-popover.driver-popover{box-shadow:none;filter:drop-shadow(0 1px 4px #00000040)drop-shadow(0 4px 12px #0003)}.driver-hint-overlay{z-index:999999997;pointer-events:none;width:100%;height:100%;animation:.2s ease-out driver-hint-overlay-fade;position:fixed;inset:0}@keyframes driver-hint-overlay-fade{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.driver-hint-overlay{animation:none}}.driver-active .driver-hint{display:none}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
var driverHints=(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:`Module`});let t=[`pointerdown`,`mousedown`,`pointerup`,`mouseup`,`click`],n=new WeakMap;function r(e,r,a){i(e);let o=t=>{let n=t.target;e.contains(n)&&((!a||a(n))&&(t.preventDefault(),t.stopPropagation(),t.stopImmediatePropagation()),t.type===`click`&&r?.(t))};for(let e of t)document.addEventListener(e,o,!0);n.set(e,o)}function i(e){let r=n.get(e);if(r){for(let e of t)document.removeEventListener(e,r,!0);n.delete(e)}}function a(e,t){let n=e.wrapper.getBoundingClientRect();return{width:n.width+t,height:n.height+t,realWidth:n.width,realHeight:n.height}}function o(e,t){let{elementDimensions:n,popoverDimensions:r,popoverPadding:i,popoverArrowDimensions:a}=t;return e===`start`?Math.max(Math.min(n.top-i,window.innerHeight-r.realHeight-a.width),a.width):e===`end`?Math.max(Math.min(n.top-r?.realHeight+n.height+i,window.innerHeight-r?.realHeight-a.width),a.width):e===`center`?Math.max(Math.min(n.top+n.height/2-r?.realHeight/2,window.innerHeight-r?.realHeight-a.width),a.width):0}function s(e,t){let{elementDimensions:n,popoverDimensions:r,popoverPadding:i,popoverArrowDimensions:a}=t;return e===`start`?Math.max(Math.min(n.left-i,window.innerWidth-r.realWidth-a.width),a.width):e===`end`?Math.max(Math.min(n.left-r?.realWidth+n.width+i,window.innerWidth-r?.realWidth-a.width),a.width):e===`center`?Math.max(Math.min(n.left+n.width/2-r?.realWidth/2,window.innerWidth-r?.realWidth-a.width),a.width):0}function c(e,t,n){let{align:r,side:i}=n,c=n.centered?`over`:i,l=n.padding,u=a(e,n.offset),d=e.arrow.getBoundingClientRect(),p=t.getBoundingClientRect(),m=p.top-u.height,h=m>=0,g=window.innerHeight-(p.bottom+u.height),_=g>=0,v=p.left-u.width,y=v>=0,b=window.innerWidth-(p.right+u.width),x=b>=0,S=!h&&!_&&!y&&!x,C=c;if(c===`top`&&h?x=y=_=!1:c===`bottom`&&_?x=y=h=!1:c===`left`&&y?x=h=_=!1:c===`right`&&x&&(y=h=_=!1),c===`over`){let t=window.innerWidth/2-u.realWidth/2,n=window.innerHeight/2-u.realHeight/2;e.wrapper.style.left=`${t}px`,e.wrapper.style.right=`auto`,e.wrapper.style.top=`${n}px`,e.wrapper.style.bottom=`auto`}else if(S){let t=window.innerWidth/2-u?.realWidth/2;e.wrapper.style.left=`${t}px`,e.wrapper.style.right=`auto`,e.wrapper.style.bottom=`10px`,e.wrapper.style.top=`auto`}else if(y){let t=Math.min(v,window.innerWidth-u?.realWidth-d.width),n=o(r,{elementDimensions:p,popoverDimensions:u,popoverPadding:l,popoverArrowDimensions:d});e.wrapper.style.left=`${t}px`,e.wrapper.style.top=`${n}px`,e.wrapper.style.bottom=`auto`,e.wrapper.style.right=`auto`,C=`left`}else if(x){let t=Math.min(b,window.innerWidth-u?.realWidth-d.width),n=o(r,{elementDimensions:p,popoverDimensions:u,popoverPadding:l,popoverArrowDimensions:d});e.wrapper.style.right=`${t}px`,e.wrapper.style.top=`${n}px`,e.wrapper.style.bottom=`auto`,e.wrapper.style.left=`auto`,C=`right`}else if(h){let t=Math.min(m,window.innerHeight-u.realHeight-d.width),n=s(r,{elementDimensions:p,popoverDimensions:u,popoverPadding:l,popoverArrowDimensions:d});e.wrapper.style.top=`${t}px`,e.wrapper.style.left=`${n}px`,e.wrapper.style.bottom=`auto`,e.wrapper.style.right=`auto`,C=`top`}else if(_){let t=Math.min(g,window.innerHeight-u?.realHeight-d.width),n=s(r,{elementDimensions:p,popoverDimensions:u,popoverPadding:l,popoverArrowDimensions:d});e.wrapper.style.left=`${n}px`,e.wrapper.style.bottom=`${t}px`,e.wrapper.style.top=`auto`,e.wrapper.style.right=`auto`,C=`bottom`}f(e,S?`over`:C,r,t),[...e.wrapper.classList].filter(e=>e.startsWith(`driver-popover-side-`)||e.startsWith(`driver-popover-align-`)).forEach(t=>e.wrapper.classList.remove(t)),e.wrapper.classList.add(`driver-popover-side-${C}`),e.wrapper.classList.add(`driver-popover-align-${r}`)}function l(e,t,n,r,i,a=10){let o=r-n;return e<=n&&t>=r?i===`start`?15+a/2:i===`end`?o-15-a/2:o/2:(Math.min(Math.max(e,n),r)+Math.min(Math.max(t,n),r))/2-n}function u(e,t,n=10){let r=t-15-n;if(r<15)return Math.max(0,(t-n)/2);let i=e-n/2;return Math.min(Math.max(i,15),r)}function d(e,t,n){return e===`left`||e===`right`?t.bottom>n.top&&t.top<n.bottom?e:t.bottom<=n.top?`bottom`:`top`:t.right>n.left&&t.left<n.right?e:t.right<=n.left?`right`:`left`}function f(e,t,n,r){let i=e.arrow;if(i.className=`driver-popover-arrow`,i.style.top=``,i.style.right=``,i.style.bottom=``,i.style.left=``,t===`over`){i.classList.add(`driver-popover-arrow-none`);return}let a=r.getBoundingClientRect(),o=e.wrapper.getBoundingClientRect(),s=d(t,a,o);i.classList.add(`driver-popover-arrow-side-${s}`);let c=i.getBoundingClientRect().width||10;if(s===`left`||s===`right`){let e=l(a.top,a.bottom,o.top,o.bottom,n,c);i.style.top=`${u(e,o.height,c)}px`}else{let e=l(a.left,a.right,o.left,o.right,n,c);i.style.left=`${u(e,o.width,c)}px`}}function p(e){return typeof e==`function`?e():typeof e==`string`?document.querySelector(e):e}function m(e){let t=`a[href]:not([disabled]), button:not([disabled]), textarea:not([disabled]), input[type="text"]:not([disabled]), input[type="radio"]:not([disabled]), input[type="checkbox"]:not([disabled]), select:not([disabled])`;return e.flatMap(e=>{let n=e.matches(t),r=Array.from(e.querySelectorAll(t));return[...n?[e]:[],...r]}).filter(e=>getComputedStyle(e).pointerEvents!==`none`&&v(e))}function h(e,t){if(!e||_(e))return;let n=e.offsetHeight>window.innerHeight;e.scrollIntoView({behavior:!t||g(e)?`auto`:`smooth`,inline:`center`,block:n?`start`:`center`})}function g(e){if(!e||!e.parentElement)return;let t=e.parentElement;return t.scrollHeight>t.clientHeight}function _(e){let t=e.getBoundingClientRect();return t.top>=0&&t.left>=0&&t.bottom<=(window.innerHeight||document.documentElement.clientHeight)&&t.right<=(window.innerWidth||document.documentElement.clientWidth)}function v(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)}function y(e){e&&(e.wrapper.style.display=`none`)}function b(e,t){let n=S();document.body.appendChild(n.wrapper);let{title:i,description:a,showButtons:o,disableButtons:s,showProgress:l,nextBtnText:u,prevBtnText:d,progressText:f}=t;n.nextButton.innerHTML=u,n.previousButton.innerHTML=d,n.progress.innerHTML=f,n.closeButton.setAttribute(`aria-label`,t.closeBtnLabel),t.doneButton&&n.nextButton.classList.add(`driver-popover-done-btn`),i?(n.title.innerHTML=i,n.title.style.display=`block`):n.title.style.display=`none`,a?(n.description.innerHTML=a,n.description.style.display=`block`):n.description.style.display=`none`;let p=o.includes(`next`)||o.includes(`previous`)||l;n.closeButton.style.display=o.includes(`close`)?`block`:`none`,p?(n.footer.style.display=`flex`,n.progress.style.display=l?`block`:`none`,n.nextButton.style.display=o.includes(`next`)?`block`:`none`,n.previousButton.style.display=o.includes(`previous`)?`block`:`none`):n.footer.style.display=`none`,s.includes(`next`)&&(n.nextButton.disabled=!0,n.nextButton.classList.add(`driver-popover-btn-disabled`)),s.includes(`previous`)&&(n.previousButton.disabled=!0,n.previousButton.classList.add(`driver-popover-btn-disabled`)),s.includes(`close`)&&(n.closeButton.disabled=!0,n.closeButton.classList.add(`driver-popover-btn-disabled`));let g=n.wrapper;g.style.display=`block`,g.style.left=``,g.style.top=``,g.style.bottom=``,g.style.right=``,g.id=`driver-popover-content`,g.setAttribute(`role`,`dialog`),g.setAttribute(`aria-labelledby`,`driver-popover-title`),g.setAttribute(`aria-describedby`,`driver-popover-description`);let _=n.arrow;_.className=`driver-popover-arrow`,g.className=`driver-popover ${t.popoverClass||``}`.trim(),r(n.wrapper,e=>{let n=e.target;if(n.closest(`.driver-popover-next-btn`))return t.onNextClick?.();if(n.closest(`.driver-popover-prev-btn`))return t.onPrevClick?.();if(n.closest(`.driver-popover-close-btn`))return t.onCloseClick?.()},e=>n.description.contains(e)||n.title.contains(e)?!1:!!e.closest(`.driver-popover-prev-btn, .driver-popover-next-btn, .driver-popover-close-btn`)),t.onRender?.(n),c(n,e,t.position),x(n,e,t.position),h(g,t.smoothScroll);let v=m([g,e]);return v.length>0&&v[0].focus(),n}function x(e,t,n){e.wrapper.querySelectorAll(`img`).forEach(r=>{if(r.complete)return;let i=()=>c(e,t,n);r.addEventListener(`load`,i,{once:!0}),r.addEventListener(`error`,i,{once:!0})})}function S(){let e=document.createElement(`div`);e.classList.add(`driver-popover`);let t=document.createElement(`div`);t.classList.add(`driver-popover-arrow`);let n=document.createElement(`header`);n.id=`driver-popover-title`,n.classList.add(`driver-popover-title`),n.style.display=`none`,n.innerText=`Popover Title`;let r=document.createElement(`div`);r.id=`driver-popover-description`,r.classList.add(`driver-popover-description`),r.style.display=`none`,r.innerText=`Popover description is here`;let i=document.createElement(`button`);i.type=`button`,i.classList.add(`driver-popover-close-btn`),i.innerHTML=`×`;let a=document.createElement(`footer`);a.classList.add(`driver-popover-footer`);let o=document.createElement(`span`);o.classList.add(`driver-popover-progress-text`),o.innerText=``;let s=document.createElement(`span`);s.classList.add(`driver-popover-navigation-btns`);let c=document.createElement(`button`);c.type=`button`,c.classList.add(`driver-popover-prev-btn`,`driver-popover-footer-btn`),c.innerHTML=`Previous`;let l=document.createElement(`button`);return l.type=`button`,l.classList.add(`driver-popover-next-btn`,`driver-popover-footer-btn`),l.innerHTML=`Next`,s.appendChild(c),s.appendChild(l),a.appendChild(o),a.appendChild(s),e.appendChild(i),e.appendChild(t),e.appendChild(n),e.appendChild(r),e.appendChild(a),{wrapper:e,arrow:t,title:n,description:r,footer:a,previousButton:c,nextButton:l,closeButton:i,footerButtons:s,progress:o}}function C(e){e&&(i(e.wrapper),e.wrapper.parentElement?.removeChild(e.wrapper))}function w(e,t){let n=window.innerWidth,r=window.innerHeight,i=t.padding,a=t.radius,o=e.width+i*2,s=e.height+i*2,c=Math.min(a,o/2,s/2),l=Math.floor(Math.max(c,0)),u=e.x-i+l,d=e.y-i,f=o-l*2,p=s-l*2;return`M${n},0L0,0L0,${r}L${n},${r}L${n},0Z
|
|
2
|
+
M${u},${d} h${f} a${l},${l} 0 0 1 ${l},${l} v${p} a${l},${l} 0 0 1 -${l},${l} h-${f} a${l},${l} 0 0 1 -${l},-${l} v-${p} a${l},${l} 0 0 1 ${l},-${l} z`}function T(e={}){let t={...e},n=new Set,r=[],i=[],a,o,s,l,u=!1;function d(e,t){return e.id??`${t}`}function f(e){return r.find(t=>t.id===`${e}`)}function m(e){return{...t.beacon,...e.beacon}}function h(e,t){let n=document.createElement(`button`),{animate:r,className:i}=m(e);n.type=`button`,n.className=`driver-hint ${i||``}`.trim(),r===!1&&n.classList.add(`driver-hint-no-animation`),n.setAttribute(`aria-label`,e.popover?.title||`Show hint`),n.setAttribute(`aria-haspopup`,`dialog`),n.setAttribute(`aria-expanded`,`false`);let a=document.createElement(`span`);a.className=`driver-hint-pulse`;let o=document.createElement(`span`);return o.className=`driver-hint-dot`,n.appendChild(a),n.appendChild(o),n.addEventListener(`click`,e=>{e.preventDefault(),e.stopPropagation(),I(t)}),n}function g(e){let{side:t=`top`,align:n=`end`,offsetX:r=0,offsetY:i=0}=m(e.hint),a=e.element.getBoundingClientRect(),o,s;t===`top`||t===`bottom`?(o=t===`top`?a.top:a.bottom,s=n===`start`?a.left:n===`center`?a.left+a.width/2:a.right):(s=t===`left`?a.left:a.right,o=n===`start`?a.top:n===`center`?a.top+a.height/2:a.bottom),e.beacon.style.top=`${o+i}px`,e.beacon.style.left=`${s+r}px`}function _(e){typeof IntersectionObserver>`u`||(e.observer=new IntersectionObserver(([t])=>{e.beacon.classList.toggle(`driver-hint-hidden`,!t.isIntersecting),!t.isIntersecting&&a===e.id&&P()}),e.observer.observe(e.element))}function v(e,t){let n=p(e.element);if(!n)return;let i=h(e,t);document.body.appendChild(i);let a={hint:e,id:t,element:n,beacon:i};r.push(a),g(a),_(a)}function x(){(t.hints||[]).forEach((e,t)=>{let r=d(e,t);n.has(r)||f(r)||v(e,r)})}function S(){r.forEach(e=>{e.observer?.disconnect(),e.beacon.remove()}),r=[]}function T(){l&&window.cancelAnimationFrame(l),l=window.requestAnimationFrame(()=>B())}function E(){let e=e=>{if(!a)return;let t=e.target;o?.wrapper.contains(t)||r.some(e=>e.beacon.contains(t))||P()},t=e=>{if(e.key!==`Escape`||!a)return;let t=f(a)?.beacon;P(),t?.focus()};if(window.addEventListener(`scroll`,T,!0),window.addEventListener(`resize`,T),document.addEventListener(`click`,e),window.addEventListener(`keyup`,t),i=[()=>window.removeEventListener(`scroll`,T,!0),()=>window.removeEventListener(`resize`,T),()=>document.removeEventListener(`click`,e),()=>window.removeEventListener(`keyup`,t)],typeof MutationObserver>`u`)return;let n=new MutationObserver(()=>{document.body.classList.contains(`driver-active`)&&P()});n.observe(document.body,{attributes:!0,attributeFilter:[`class`]}),i.push(()=>n.disconnect())}function D(e){return t.overlay?e.element:e.beacon}function O(e){let n=e.hint.popover?.side||`bottom`,r=e.hint.popover?.align||`start`,i=t.popoverOffset??10;return t.overlay?{side:n,align:r,offset:10+i,padding:10}:{side:n,align:r,offset:i,padding:22-e.beacon.getBoundingClientRect().width/2}}function k(e){let t=e.getBoundingClientRect();return w({x:t.x,y:t.y,width:t.width,height:t.height},{padding:10,radius:5})}function A(e){if(!t.overlay||s)return;let n=document.createElementNS(`http://www.w3.org/2000/svg`,`svg`);n.setAttribute(`class`,`driver-hint-overlay`),n.setAttribute(`viewBox`,`0 0 ${window.innerWidth} ${window.innerHeight}`),n.setAttribute(`preserveAspectRatio`,`xMinYMin slice`),n.style.fillRule=`evenodd`;let r=document.createElementNS(`http://www.w3.org/2000/svg`,`path`);r.setAttribute(`d`,k(e.element)),r.style.fill=t.overlayColor||`#000`,r.style.opacity=`${t.overlayOpacity??.7}`,r.style.pointerEvents=`auto`,n.appendChild(r),document.body.appendChild(n),s=n}function j(e){s&&(s.setAttribute(`viewBox`,`0 0 ${window.innerWidth} ${window.innerHeight}`),s.firstElementChild?.setAttribute(`d`,k(e.element)))}function M(){s?.remove(),s=void 0}function N(e){let n=e.hint.popover||{},r=n.showButton??!0;return{title:n.title,description:n.description,showButtons:r?[`next`]:[],disableButtons:[],showProgress:!1,progressText:``,nextBtnText:n.buttonText??t.buttonText??`Got it`,prevBtnText:``,closeBtnLabel:`Close`,popoverClass:`driver-hint-popover ${n.popoverClass||t.popoverClass||``}`.trim(),onNextClick:()=>{let r=n.onButtonClick||t.onButtonClick;if(r)return r(e.element,e.hint,{config:t,hints:W});L(e.id)},onRender:t=>n.onPopoverRender?.(t,{hint:e.hint,hints:W}),position:O(e)}}function P(){if(!o)return;let e=f(a);e&&(e.beacon.setAttribute(`aria-expanded`,`false`),e.beacon.style.display=``),C(o),o=void 0,a=void 0,M()}function F(e){let n=f(e);n&&(P(),a=n.id,n.beacon.setAttribute(`aria-expanded`,`true`),A(n),t.overlay&&(n.beacon.style.display=`none`),o=b(D(n),N(n)),(n.hint.onOpen||t.onOpen)?.(n.element,n.hint,{config:t,hints:W}))}function I(e){if(a===`${e}`){P();return}F(e)}function L(e){let i=f(e);i&&(a===i.id&&P(),n.add(i.id),i.observer?.disconnect(),i.beacon.remove(),r=r.filter(e=>e!==i),(i.hint.onDismiss||t.onDismiss)?.(i.element,i.hint,{config:t,hints:W}))}function R(e){let r=`${e}`;if(!n.delete(r)||!u||f(r))return;let i=t.hints||[],a=i.findIndex((e,t)=>d(e,t)===r);a!==-1&&v(i[a],r)}function z(){n.clear(),u&&x()}function B(){r.forEach(g);let e=a?f(a):void 0;!e||!o||(c(o,D(e),O(e)),j(e),e.beacon.classList.contains(`driver-hint-hidden`)&&y(o))}function V(){u||(u=!0,E()),x(),B()}function H(){u&&(u=!1,P(),S(),i.forEach(e=>e()),i=[],l&&(window.cancelAnimationFrame(l),l=void 0))}function U(e){t.hints=e,n.clear(),u&&(P(),S(),x())}let W={show:V,hide:H,open:F,close:P,dismiss:L,restore:R,restoreAll:z,setHints:U,getHints:()=>t.hints||[],getActive:()=>a?f(a)?.hint:void 0,isVisible:()=>u,refresh:B};return W}return e.hints=T,e})({});
|
package/dist/dashboard.js
CHANGED
|
@@ -27,12 +27,12 @@ import path from 'node:path';
|
|
|
27
27
|
import { fileURLToPath } from 'node:url';
|
|
28
28
|
import { decayedScore, isKnown, isOwed, MS_PER_DAY } from './srs.js';
|
|
29
29
|
import { correctionStates, correctionTarget, CorrectionError, GLOBAL_PROJECT, levelStanding, PASSING_GRADE, projectKey, recordRetry, } from './store.js';
|
|
30
|
-
import { randomBytes, timingSafeEqual } from 'node:crypto';
|
|
30
|
+
import { createHash, randomBytes, timingSafeEqual } from 'node:crypto';
|
|
31
31
|
import { loadConfig, loadGlobalConfig, DEFAULT_CONFIG, configFileProblem, isGlobalOnlyKey, mainRepoRoot, readConfigFile, normalizeLegacyKeys, } from './config.js';
|
|
32
32
|
import { applySetting, knownKeys, SETTING_RULES, valueAt } from './config-path.js';
|
|
33
33
|
import { dashboardPort, dbPath, DEFAULT_PORT, eklavyaHome, globalConfigPath, projectConfigPath } from './paths.js';
|
|
34
34
|
import { ownVersion } from './dashboard-daemon.js';
|
|
35
|
-
import { artifactThumb, listArtifacts, resolveArtifact } from './artifacts.js';
|
|
35
|
+
import { artifactsStamp, artifactThumb, listArtifacts, resolveArtifact } from './artifacts.js';
|
|
36
36
|
import { LIMITS } from './tools/types.js';
|
|
37
37
|
import { DELIVERED, NOT_HELPER_RECEIPT, readTotals, receiptTotals, totalsDelivery } from './memory/store.js';
|
|
38
38
|
import { ESTIMATOR, savingsFrom, savingsLine } from './memory/tokens.js';
|
|
@@ -547,6 +547,27 @@ export function projectInventory(db) {
|
|
|
547
547
|
aliases[raw] = id;
|
|
548
548
|
return { projects, aliases, sessions: sessionProjects };
|
|
549
549
|
}
|
|
550
|
+
/**
|
|
551
|
+
* What an open page polls to notice that work landed while it was reading it
|
|
552
|
+
* (PRD DASH-01), served alone at `/api/cursor` so a poll builds no payload.
|
|
553
|
+
*
|
|
554
|
+
* Three parts, one per place the page's content comes from:
|
|
555
|
+
* - `change_version` (migration 021), which triggers move on every write to a
|
|
556
|
+
* table the page shows. In-place edits count: a session summary rewritten
|
|
557
|
+
* as the session runs, a receipt delivered, a memory read logged.
|
|
558
|
+
* - The effective config, hashed: the dials the page prints.
|
|
559
|
+
* - The artifact files' count, total size and newest mtime (`artifactsStamp`).
|
|
560
|
+
*
|
|
561
|
+
* Deliberately not `generated_at`, and not a hash of the payload: both change
|
|
562
|
+
* on every call -- scores are decayed against the clock -- and a page that
|
|
563
|
+
* announces new activity every minute is a page whose banner is ignored inside
|
|
564
|
+
* a day. Not watched: the prune stamp and spool drop count in the health panel.
|
|
565
|
+
*/
|
|
566
|
+
export function changeCursor(db, config = readConfig()) {
|
|
567
|
+
const version = one(db, 'SELECT n FROM change_version WHERE id = 1').n;
|
|
568
|
+
const dials = createHash('sha256').update(JSON.stringify(config)).digest('hex').slice(0, 12);
|
|
569
|
+
return `${version}:${dials}:${artifactsStamp()}`;
|
|
570
|
+
}
|
|
550
571
|
/** One entry with its tags, its raw evidence and the candidates it proposed. */
|
|
551
572
|
export function memoryEntry(db, id) {
|
|
552
573
|
const entry = one(db, 'SELECT * FROM memory_entries WHERE id = ?', id);
|
|
@@ -580,6 +601,9 @@ export function memoryEntry(db, id) {
|
|
|
580
601
|
export function dashboardState(db) {
|
|
581
602
|
const now = new Date();
|
|
582
603
|
const config = readConfig();
|
|
604
|
+
// First, before any of the payload is read: a write that lands while it is
|
|
605
|
+
// being built then shows as a notice on the next poll, never as a miss.
|
|
606
|
+
const cursor = changeCursor(db, config);
|
|
583
607
|
// One row per calendar day per project, split three ways. `grade >= 3` is the
|
|
584
608
|
// same pass line the level ladder uses, so the chart and the promotion agree.
|
|
585
609
|
const daily = db
|
|
@@ -772,33 +796,7 @@ export function dashboardState(db) {
|
|
|
772
796
|
return {
|
|
773
797
|
generated_at: now.toISOString(),
|
|
774
798
|
db_path: dbPath(),
|
|
775
|
-
|
|
776
|
-
* What an open page polls to notice that work landed while it was reading
|
|
777
|
-
* it (PRD DASH-01). Counts of rows the payload already carries, so it costs
|
|
778
|
-
* no extra query and moves exactly when the page's content does.
|
|
779
|
-
*
|
|
780
|
-
* Deliberately not `generated_at`, and not a hash of the payload: both
|
|
781
|
-
* change on every call — scores are decayed against the clock — and a page
|
|
782
|
-
* that announces new activity every minute is a page whose banner is
|
|
783
|
-
* ignored inside a day.
|
|
784
|
-
*
|
|
785
|
-
* Ceiling: counts cannot see an edit that leaves the counts alone. Every
|
|
786
|
-
* such edit here (a superseded entry, a deleted one) moves a *different*
|
|
787
|
-
* count in this list, so the gap is theoretical today; a real event cursor
|
|
788
|
-
* is the upgrade if that stops being true.
|
|
789
|
-
*/
|
|
790
|
-
cursor: [
|
|
791
|
-
allTime.answers,
|
|
792
|
-
allTime.corrected,
|
|
793
|
-
logged.length,
|
|
794
|
-
sessionCount,
|
|
795
|
-
memory.captured,
|
|
796
|
-
memory.processed,
|
|
797
|
-
memory.entries_total,
|
|
798
|
-
memory.superseded,
|
|
799
|
-
memory.deleted,
|
|
800
|
-
reuse.receipts,
|
|
801
|
-
].join(':'),
|
|
799
|
+
cursor,
|
|
802
800
|
timeline_days: TIMELINE_DAYS,
|
|
803
801
|
attempts_shown: attempts.length,
|
|
804
802
|
attempts_total: allTime.answers,
|
|
@@ -1291,6 +1289,8 @@ const MANIFEST = JSON.stringify({
|
|
|
1291
1289
|
});
|
|
1292
1290
|
/** Served from the bundled assets as-is; copied in from `web/public` at build. */
|
|
1293
1291
|
const APP_ICONS = new Set(['/icon-192.png', '/icon-512.png', '/apple-touch-icon.png']);
|
|
1292
|
+
/** The tips library, copied from node_modules at build by `copy-assets.mjs`. */
|
|
1293
|
+
const VENDOR = { '/vendor/driver-hints.js': 'text/javascript', '/vendor/driver-hints.css': 'text/css' };
|
|
1294
1294
|
function send(res, status, type, body, extra = {}) {
|
|
1295
1295
|
res.writeHead(status, {
|
|
1296
1296
|
'content-type': type,
|
|
@@ -1432,6 +1432,9 @@ export function startDashboard(db, opts = {}) {
|
|
|
1432
1432
|
if (url.pathname === '/api/settings') {
|
|
1433
1433
|
return send(res, 200, 'application/json', JSON.stringify(settingsState(db, url.searchParams.get('project'))));
|
|
1434
1434
|
}
|
|
1435
|
+
if (url.pathname === '/api/cursor') {
|
|
1436
|
+
return send(res, 200, 'application/json', JSON.stringify({ cursor: changeCursor(db) }));
|
|
1437
|
+
}
|
|
1435
1438
|
if (url.pathname === '/api/state') {
|
|
1436
1439
|
return send(res, 200, 'application/json', JSON.stringify(dashboardState(db)));
|
|
1437
1440
|
}
|
|
@@ -1507,6 +1510,12 @@ export function startDashboard(db, opts = {}) {
|
|
|
1507
1510
|
if (APP_ICONS.has(url.pathname)) {
|
|
1508
1511
|
return send(res, 200, 'image/png', fs.readFileSync(path.join(assets, url.pathname.slice(1))));
|
|
1509
1512
|
}
|
|
1513
|
+
const vendor = VENDOR[url.pathname];
|
|
1514
|
+
if (vendor) {
|
|
1515
|
+
return send(res, 200, vendor, fs.readFileSync(path.join(assets, url.pathname.slice(1))), {
|
|
1516
|
+
'cache-control': 'max-age=3600',
|
|
1517
|
+
});
|
|
1518
|
+
}
|
|
1510
1519
|
if (url.pathname === '/tokens.css') {
|
|
1511
1520
|
return send(res, 200, 'text/css', localTokens(fs.readFileSync(path.join(assets, 'tokens.css'), 'utf8')));
|
|
1512
1521
|
}
|
package/dist/dashboard.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dashboard.js","sourceRoot":"","sources":["../src/dashboard.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dashboard.js","sourceRoot":"","sources":["../src/dashboard.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
-- A change counter for the dashboard's stale-data notice.
|
|
2
|
+
--
|
|
3
|
+
-- An open dashboard polls to learn whether work landed since it loaded. It
|
|
4
|
+
-- used to compare a handful of row counts, and a count cannot see a row that
|
|
5
|
+
-- changes in place: a session summary is rewritten as the session runs
|
|
6
|
+
-- (`replaceEntry`), a receipt moves from prepared to delivered, a candidate is
|
|
7
|
+
-- accepted. The page kept showing the old next steps with no notice.
|
|
8
|
+
--
|
|
9
|
+
-- `change_version.n` moves on every insert, update and delete of a table the
|
|
10
|
+
-- dashboard displays, from whichever process writes it: hooks, the MCP server,
|
|
11
|
+
-- the worker, the CLI. The poll reads one integer. It never moves on a read,
|
|
12
|
+
-- so an unchanged database never raises the notice.
|
|
13
|
+
--
|
|
14
|
+
-- Left out on purpose: `meta` (schema and seed bookkeeping), `usage_counts`,
|
|
15
|
+
-- sync and import bookkeeping, checkpoints and stop markers, collections, and
|
|
16
|
+
-- `memory_batches` -- none of them is on the page. Two tables are narrowed:
|
|
17
|
+
-- `gates` is upserted on every turn but the page reads only its `repo`, and a
|
|
18
|
+
-- `memory_jobs` lease renewal is not a change the queue counts show.
|
|
19
|
+
CREATE TABLE IF NOT EXISTS change_version (
|
|
20
|
+
id INTEGER PRIMARY KEY CHECK (id = 1),
|
|
21
|
+
n INTEGER NOT NULL
|
|
22
|
+
);
|
|
23
|
+
INSERT OR IGNORE INTO change_version (id, n) VALUES (1, 0);
|
|
24
|
+
|
|
25
|
+
CREATE TRIGGER IF NOT EXISTS change_version_attempts_i AFTER INSERT ON attempts
|
|
26
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
27
|
+
CREATE TRIGGER IF NOT EXISTS change_version_attempts_u AFTER UPDATE ON attempts
|
|
28
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
29
|
+
CREATE TRIGGER IF NOT EXISTS change_version_attempts_d AFTER DELETE ON attempts
|
|
30
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
31
|
+
|
|
32
|
+
CREATE TRIGGER IF NOT EXISTS change_version_attempt_retries_i AFTER INSERT ON attempt_retries
|
|
33
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
34
|
+
CREATE TRIGGER IF NOT EXISTS change_version_attempt_retries_u AFTER UPDATE ON attempt_retries
|
|
35
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
36
|
+
CREATE TRIGGER IF NOT EXISTS change_version_attempt_retries_d AFTER DELETE ON attempt_retries
|
|
37
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
38
|
+
|
|
39
|
+
CREATE TRIGGER IF NOT EXISTS change_version_concepts_i AFTER INSERT ON concepts
|
|
40
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
41
|
+
CREATE TRIGGER IF NOT EXISTS change_version_concepts_u AFTER UPDATE ON concepts
|
|
42
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
43
|
+
CREATE TRIGGER IF NOT EXISTS change_version_concepts_d AFTER DELETE ON concepts
|
|
44
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
45
|
+
|
|
46
|
+
CREATE TRIGGER IF NOT EXISTS change_version_edges_i AFTER INSERT ON edges
|
|
47
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
48
|
+
CREATE TRIGGER IF NOT EXISTS change_version_edges_u AFTER UPDATE ON edges
|
|
49
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
50
|
+
CREATE TRIGGER IF NOT EXISTS change_version_edges_d AFTER DELETE ON edges
|
|
51
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
52
|
+
|
|
53
|
+
CREATE TRIGGER IF NOT EXISTS change_version_mastery_i AFTER INSERT ON mastery
|
|
54
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
55
|
+
CREATE TRIGGER IF NOT EXISTS change_version_mastery_u AFTER UPDATE ON mastery
|
|
56
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
57
|
+
CREATE TRIGGER IF NOT EXISTS change_version_mastery_d AFTER DELETE ON mastery
|
|
58
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
59
|
+
|
|
60
|
+
CREATE TRIGGER IF NOT EXISTS change_version_session_concepts_i AFTER INSERT ON session_concepts
|
|
61
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
62
|
+
CREATE TRIGGER IF NOT EXISTS change_version_session_concepts_u AFTER UPDATE ON session_concepts
|
|
63
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
64
|
+
CREATE TRIGGER IF NOT EXISTS change_version_session_concepts_d AFTER DELETE ON session_concepts
|
|
65
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
66
|
+
|
|
67
|
+
CREATE TRIGGER IF NOT EXISTS change_version_project_levels_i AFTER INSERT ON project_levels
|
|
68
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
69
|
+
CREATE TRIGGER IF NOT EXISTS change_version_project_levels_u AFTER UPDATE ON project_levels
|
|
70
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
71
|
+
CREATE TRIGGER IF NOT EXISTS change_version_project_levels_d AFTER DELETE ON project_levels
|
|
72
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
73
|
+
|
|
74
|
+
CREATE TRIGGER IF NOT EXISTS change_version_context_receipts_i AFTER INSERT ON context_receipts
|
|
75
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
76
|
+
CREATE TRIGGER IF NOT EXISTS change_version_context_receipts_u AFTER UPDATE ON context_receipts
|
|
77
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
78
|
+
CREATE TRIGGER IF NOT EXISTS change_version_context_receipts_d AFTER DELETE ON context_receipts
|
|
79
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
80
|
+
|
|
81
|
+
CREATE TRIGGER IF NOT EXISTS change_version_context_receipt_items_i AFTER INSERT ON context_receipt_items
|
|
82
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
83
|
+
CREATE TRIGGER IF NOT EXISTS change_version_context_receipt_items_u AFTER UPDATE ON context_receipt_items
|
|
84
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
85
|
+
CREATE TRIGGER IF NOT EXISTS change_version_context_receipt_items_d AFTER DELETE ON context_receipt_items
|
|
86
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
87
|
+
|
|
88
|
+
CREATE TRIGGER IF NOT EXISTS change_version_evidence_events_i AFTER INSERT ON evidence_events
|
|
89
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
90
|
+
CREATE TRIGGER IF NOT EXISTS change_version_evidence_events_u AFTER UPDATE ON evidence_events
|
|
91
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
92
|
+
CREATE TRIGGER IF NOT EXISTS change_version_evidence_events_d AFTER DELETE ON evidence_events
|
|
93
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
94
|
+
|
|
95
|
+
CREATE TRIGGER IF NOT EXISTS change_version_learning_sources_i AFTER INSERT ON learning_sources
|
|
96
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
97
|
+
CREATE TRIGGER IF NOT EXISTS change_version_learning_sources_u AFTER UPDATE ON learning_sources
|
|
98
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
99
|
+
CREATE TRIGGER IF NOT EXISTS change_version_learning_sources_d AFTER DELETE ON learning_sources
|
|
100
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
101
|
+
|
|
102
|
+
CREATE TRIGGER IF NOT EXISTS change_version_memory_entries_i AFTER INSERT ON memory_entries
|
|
103
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
104
|
+
CREATE TRIGGER IF NOT EXISTS change_version_memory_entries_u AFTER UPDATE ON memory_entries
|
|
105
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
106
|
+
CREATE TRIGGER IF NOT EXISTS change_version_memory_entries_d AFTER DELETE ON memory_entries
|
|
107
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
108
|
+
|
|
109
|
+
CREATE TRIGGER IF NOT EXISTS change_version_memory_entry_tags_i AFTER INSERT ON memory_entry_tags
|
|
110
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
111
|
+
CREATE TRIGGER IF NOT EXISTS change_version_memory_entry_tags_u AFTER UPDATE ON memory_entry_tags
|
|
112
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
113
|
+
CREATE TRIGGER IF NOT EXISTS change_version_memory_entry_tags_d AFTER DELETE ON memory_entry_tags
|
|
114
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
115
|
+
|
|
116
|
+
CREATE TRIGGER IF NOT EXISTS change_version_memory_entry_events_i AFTER INSERT ON memory_entry_events
|
|
117
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
118
|
+
CREATE TRIGGER IF NOT EXISTS change_version_memory_entry_events_u AFTER UPDATE ON memory_entry_events
|
|
119
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
120
|
+
CREATE TRIGGER IF NOT EXISTS change_version_memory_entry_events_d AFTER DELETE ON memory_entry_events
|
|
121
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
122
|
+
|
|
123
|
+
CREATE TRIGGER IF NOT EXISTS change_version_memory_vectors_i AFTER INSERT ON memory_vectors
|
|
124
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
125
|
+
CREATE TRIGGER IF NOT EXISTS change_version_memory_vectors_u AFTER UPDATE ON memory_vectors
|
|
126
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
127
|
+
CREATE TRIGGER IF NOT EXISTS change_version_memory_vectors_d AFTER DELETE ON memory_vectors
|
|
128
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
129
|
+
|
|
130
|
+
CREATE TRIGGER IF NOT EXISTS change_version_memory_reads_i AFTER INSERT ON memory_reads
|
|
131
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
132
|
+
CREATE TRIGGER IF NOT EXISTS change_version_memory_reads_u AFTER UPDATE ON memory_reads
|
|
133
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
134
|
+
CREATE TRIGGER IF NOT EXISTS change_version_memory_reads_d AFTER DELETE ON memory_reads
|
|
135
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
136
|
+
|
|
137
|
+
CREATE TRIGGER IF NOT EXISTS change_version_gates_i AFTER INSERT ON gates
|
|
138
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
139
|
+
CREATE TRIGGER IF NOT EXISTS change_version_gates_u AFTER UPDATE ON gates
|
|
140
|
+
WHEN old.repo IS NOT new.repo BEGIN UPDATE change_version SET n = n + 1; END;
|
|
141
|
+
CREATE TRIGGER IF NOT EXISTS change_version_gates_d AFTER DELETE ON gates
|
|
142
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
143
|
+
|
|
144
|
+
CREATE TRIGGER IF NOT EXISTS change_version_memory_jobs_i AFTER INSERT ON memory_jobs
|
|
145
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
146
|
+
CREATE TRIGGER IF NOT EXISTS change_version_memory_jobs_u AFTER UPDATE ON memory_jobs
|
|
147
|
+
WHEN old.status IS NOT new.status OR old.error_class IS NOT new.error_class
|
|
148
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
149
|
+
CREATE TRIGGER IF NOT EXISTS change_version_memory_jobs_d AFTER DELETE ON memory_jobs
|
|
150
|
+
BEGIN UPDATE change_version SET n = n + 1; END;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "eklavya",
|
|
3
3
|
"displayName": "Eklavya",
|
|
4
|
-
"version": "1.
|
|
4
|
+
"version": "1.48.0",
|
|
5
5
|
"description": "Learn while your agent works. Turns coding-agent generation time into adaptive, Socratic learning grounded in the code being written.",
|
|
6
6
|
"author": {
|
|
7
7
|
"name": "Ajay Kumar"
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "eklavya",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.48.0",
|
|
4
4
|
"description": "Learn while your agent works — local knowledge graph, spaced repetition, and quiz gating for agent-assisted development.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -56,6 +56,7 @@
|
|
|
56
56
|
"@types/better-sqlite3": "^7.6.11",
|
|
57
57
|
"@types/node": "^22.0.0",
|
|
58
58
|
"c8": "^12.0.0",
|
|
59
|
+
"driver.js": "1.9.0",
|
|
59
60
|
"playwright-core": "^1.63.0",
|
|
60
61
|
"tsx": "^4.19.0",
|
|
61
62
|
"typescript": "^5.6.0",
|