eklavya 1.75.1 → 1.77.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 CHANGED
@@ -122,7 +122,7 @@ npx eklavya --version
122
122
 
123
123
  The [CLI reference](https://eklavya-run.web.app/docs/cli/) lists all commands and
124
124
  flags. `feedback generate` reviews one of your earlier prompts, using what your later prompts in that session had to add, when `feedback.enabled`,
125
- memory and `providers.observer` are set. The dashboard reads the database (its Concepts page shows each concept's tags and filters by one with `?tag=`) and has five guarded writes: a setting
125
+ memory and `providers.observer` are set. Once a day, after your first answer, the Learning dashboard opens one card on arrival (a milestone, a welcome back, the most overdue concept and so on), chosen by the engine in `assets/daily-card.cjs`; the Daily card switch on Settings, Companion, turns it off. Dashboard counts of 1,000 or more read short (1K, 1.2K, 1M). The dashboard reads the database (its Concepts page shows each concept's tags and filters by one with `?tag=`) and has five guarded writes: a setting
126
126
  change, a correction of a missed answer (which can also complete a level), and acknowledging, deleting or counting the opening of a
127
127
  feedback item (`POST /api/feedback/acknowledge`, `/delete`, `/opened`; the reads are `GET /api/feedback` and `/api/feedback/list`). An open page listens to
128
128
  `GET /api/events`, a stream of the change cursor (a counter that moves on every
@@ -133,7 +133,7 @@ times the dashboard's builders, payload and routes on a seeded database, and
133
133
  ([how to run it](https://github.com/ProjectAJ14/eklavya/blob/main/CONTRIBUTING.md#dashboard-performance)). A request
134
134
  it cannot parse gets a 400 without stopping the server
135
135
  ([what it is, underneath](https://eklavya-run.web.app/docs/dashboard/#what-it-is-underneath)).
136
- Its Learning page shows your streak and its calendar under the summary tiles; a
136
+ Its Learning page shows your streak and its calendar under the summary tiles, with the archer and a short line beside the streak; a
137
137
  **To be corrected** tile there and on the Artifacts page counts missed answers still
138
138
  waiting for a correction; correcting one closes its dialog after three seconds unless you choose **Stay open**. The
139
139
  review page lists due concepts as cards; opening one shows the steps to quiz that single concept in
@@ -0,0 +1,188 @@
1
+ /* The daily card engine. Pure: signals, memory and context in, a decision out. No DOM, no storage, no clock,
2
+ no randomness of its own, so a test can run a year of days through it and the page can run it in under a
3
+ millisecond on every arrival at the Learning dashboard.
4
+
5
+ Three steps, always in this order:
6
+ 1. gate one reason not to show anything today (off, already shown, nothing to say, wrong place, busy)
7
+ 2. rank every card whose condition holds gets a score: its base, plus what makes it urgent today,
8
+ minus a penalty for having been shown in the last three days
9
+ 3. decide the top score wins; a tie goes to the card earlier in ORDER (the order `rank` adds them in)
10
+
11
+ `remember` then returns the memory to store, which is what makes tomorrow's gate and penalties work. */
12
+ (function (root, factory) {
13
+ if (typeof module === 'object' && module.exports) module.exports = factory();
14
+ /* c8 ignore next -- a page's way in: run and asserted in daily-card.test.ts through `vm`, which c8 cannot attribute to this file */
15
+ else root.EklavyaDaily = factory();
16
+ })(this, function () {
17
+ 'use strict';
18
+
19
+ /** Streak lengths that are celebrated, once each. */
20
+ const MILESTONES = Object.freeze([7, 14, 30, 60, 100, 200, 365]);
21
+ /** Answers that make a day's goal. */
22
+ const GOAL = 3;
23
+ /** Days away that turn a greeting into a welcome back. */
24
+ const LAPSED_DAYS = 3;
25
+ /** A weekly recap needs at least this many answers in the week it recaps to say anything true. */
26
+ const WEEKLY_MIN = 5;
27
+ /** The recap is of last week, so it is offered Monday to Wednesday only: on a Saturday it is stale. */
28
+ const WEEKLY_DAYS = 3;
29
+ /** A milestone is celebrated while the run is at most this many days past it, so a missed day is not a missed party. */
30
+ const MILESTONE_WINDOW = 2;
31
+ /** Tie-break order, and the list of card ids. */
32
+ const ORDER = Object.freeze(['milestone', 'comeback', 'weekly', 'due', 'goals', 'ahead', 'checkin']);
33
+ /** What a card shown `n` days ago costs: shown yesterday is the most, three days ago the least. */
34
+ const REPEAT_COST = Object.freeze({ 1: 25, 2: 15, 3: 8 });
35
+ /** The avatar's face for each card, as `mascot.js` names states. */
36
+ const MOOD = Object.freeze({ milestone: 'complete', comeback: 'idle', weekly: 'complete', due: 'review', goals: 'info', ahead: 'empty', checkin: 'success' });
37
+
38
+ const DAY_MS = 86400000;
39
+ const asDay = (k) => Date.parse(k + 'T00:00:00Z');
40
+ /** Whole days from key `a` to key `b`, both local-day keys (`YYYY-MM-DD`). */
41
+ const daysBetween = (a, b) => Math.round((asDay(b) - asDay(a)) / DAY_MS);
42
+
43
+ /** The ISO week a day key falls in, as `YYYY-Www`: the key a weekly card is remembered under. */
44
+ function weekKey(day) {
45
+ const d = new Date(asDay(day));
46
+ const dow = (d.getUTCDay() + 6) % 7; // Monday is 0
47
+ d.setUTCDate(d.getUTCDate() - dow + 3); // the Thursday of this week names the year
48
+ const jan4 = new Date(Date.UTC(d.getUTCFullYear(), 0, 4));
49
+ const week = 1 + Math.round(((d - jan4) / DAY_MS - 3 + ((jan4.getUTCDay() + 6) % 7)) / 7);
50
+ return d.getUTCFullYear() + '-W' + String(week).padStart(2, '0');
51
+ }
52
+
53
+ /** Monday is 0 … Sunday is 6, for a day key. */
54
+ const weekday = (day) => (new Date(asDay(day)).getUTCDay() + 6) % 7;
55
+
56
+ /** A real calendar day key: the right shape, and a date that survives a round trip (so not 2026-02-31). */
57
+ const isDay = (v) => typeof v === 'string' && /^\d{4}-\d{2}-\d{2}$/.test(v) && Number.isFinite(asDay(v)) && new Date(asDay(v)).toISOString().slice(0, 10) === v;
58
+
59
+ /** What storage held, made safe: anything unreadable is the empty memory, never an error. */
60
+ function normalize(raw) {
61
+ const v = raw && typeof raw === 'object' ? raw : {};
62
+ const last = {};
63
+ if (v.last && typeof v.last === 'object') for (const id of ORDER) if (isDay(v.last[id])) last[id] = v.last[id];
64
+ const said = {};
65
+ if (v.said && typeof v.said === 'object') for (const [k, n] of Object.entries(v.said)) if (Number.isInteger(n) && n >= 0) said[k] = n;
66
+ return {
67
+ off: v.off === true,
68
+ day: isDay(v.day) ? v.day : null,
69
+ last,
70
+ said,
71
+ milestones: Array.isArray(v.milestones) ? v.milestones.filter((n) => MILESTONES.includes(n)) : [],
72
+ weekly: typeof v.weekly === 'string' ? v.weekly : null,
73
+ };
74
+ }
75
+
76
+ /** Why nothing shows today, or null when something may. The first reason that holds is the one given. */
77
+ function gate(sig, mem, ctx) {
78
+ if (mem.off) return 'off';
79
+ // A stored day that is today or later (a clock set back, a flight west) also counts: one card a calendar day, whatever the clock does.
80
+ if (mem.day !== null && mem.day >= sig.day) return 'shown-today';
81
+ if (!(sig.answers > 0)) return 'nothing-to-say'; // nothing has been answered, so there is nothing to report
82
+ if (ctx.route !== 'learning/dashboard') return 'wrong-place';
83
+ if (ctx.busy || ctx.hidden) return 'busy';
84
+ return null;
85
+ }
86
+
87
+ /**
88
+ * The milestone to celebrate, or null: the highest one the run has passed, if it was reached recently and has not been
89
+ * celebrated in this run. Highest only, so a first visit with a 30-day run gets 30, not 7 and 14 as well.
90
+ */
91
+ function milestoneFor(streak, mem) {
92
+ let m = null;
93
+ for (const n of MILESTONES) if (n <= streak.current) m = n;
94
+ return m !== null && streak.current - m <= MILESTONE_WINDOW && !mem.milestones.includes(m) ? m : null;
95
+ }
96
+
97
+ /** The cost of showing `id` again so soon. */
98
+ function repeatCost(mem, id, day) {
99
+ return mem.last[id] ? REPEAT_COST[daysBetween(mem.last[id], day)] ?? 0 : 0;
100
+ }
101
+
102
+ /** Every card whose condition holds, with its score and the sentence the card says about why it is here. */
103
+ function rank(sig, mem) {
104
+ const out = [];
105
+ const add = (id, base, why) => out.push({ id, score: base - repeatCost(mem, id, sig.day), why });
106
+ const s = sig.streak;
107
+
108
+ const m = milestoneFor(s, mem);
109
+ if (m !== null) add('milestone', 100, `Your streak reached ${m} days.`);
110
+ if (sig.daysAway !== null && sig.daysAway >= LAPSED_DAYS) {
111
+ add('comeback', 90, `Your last answer was ${sig.daysAway} days ago.`);
112
+ }
113
+ if (sig.lastWeek.answers >= WEEKLY_MIN && weekday(sig.day) < WEEKLY_DAYS && mem.weekly !== weekKey(sig.day)) {
114
+ add('weekly', 70, 'A new week: here is last week.');
115
+ }
116
+ if (sig.due > 0 && sig.top) {
117
+ add('due', 60 + Math.min(25, sig.top.days), `${sig.due} ${sig.due === 1 ? 'concept is' : 'concepts are'} due for review.`);
118
+ }
119
+ if (sig.answersToday < GOAL) {
120
+ add('goals', 45, `${sig.answersToday} of ${GOAL} answers so far today.`);
121
+ }
122
+ if (sig.due + sig.upcoming > 0) {
123
+ add('ahead', 35 + (weekday(sig.day) === 0 ? 15 : 0), weekday(sig.day) === 0 ? 'Monday: the week ahead.' : 'Reviews are scheduled this week.');
124
+ }
125
+ add('checkin', 40 + (s.current >= 3 ? 10 : 0), s.current ? `You are on a ${s.current}-day streak.` : 'A daily check-in.');
126
+
127
+ // The cards above are added in ORDER and `sort` is stable, so a tie keeps that order.
128
+ return out.sort((a, b) => b.score - a.score);
129
+ }
130
+
131
+ /**
132
+ * The whole decision. `sig` is the learner's numbers (see `SIGNALS` in the page), `mem` is `normalize`d storage,
133
+ * `ctx` is what the page knows about this moment: `{ route, busy, hidden }`.
134
+ * Returns `{ show, id, why, reason, ranked }`: `reason` says why not when `show` is false.
135
+ */
136
+ function decide(sig, mem, ctx) {
137
+ const reason = gate(sig, mem, ctx);
138
+ if (reason) return { show: false, id: null, why: null, reason, ranked: [] };
139
+ const ranked = rank(sig, mem);
140
+ return { show: true, id: ranked[0].id, why: ranked[0].why, reason: null, ranked };
141
+ }
142
+
143
+ /** The memory to store once a decision has been shown. Never mutates its input. */
144
+ function remember(mem, decision, sig) {
145
+ if (!decision.show) return mem;
146
+ // Milestones are remembered per run: one the streak has fallen below is forgotten, so reaching it again is celebrated again.
147
+ const next = { ...mem, day: sig.day, last: { ...mem.last, [decision.id]: sig.day }, milestones: mem.milestones.filter((n) => n <= sig.streak.current) };
148
+ if (decision.id === 'milestone') next.milestones.push(milestoneFor(sig.streak, mem));
149
+ if (decision.id === 'weekly') next.weekly = weekKey(sig.day);
150
+ return next;
151
+ }
152
+
153
+ /* The avatar's lines. `{n}` is the streak, `{m}` is one more; a line is only picked from a pool whose claims are
154
+ true for these signals, so a line never states a streak that is not there. */
155
+ const LINES = {
156
+ none: ['Every streak starts with one answer. Ready when you are.', 'Today is a good day to begin.', 'One question is all it takes to start.'],
157
+ short: ['{n} days in a row. Nice start, keep going.', 'You are building a habit. {n} days and counting.', 'Good work. Come back tomorrow and make it {m}.', '{n} days so far. Small steps add up.'],
158
+ long: ['You are doing great. A {n}-day streak is really good.', '{n} days in a row. That is real consistency.', 'Look at that run. {n} days, and it keeps growing.', '{n} days. Your future self will thank you.', 'Keep going. {n} days and the concepts are sticking.'],
159
+ };
160
+ const poolOf = (n) => (n < 1 ? 'none' : n < 7 ? 'short' : 'long');
161
+
162
+ /**
163
+ * A line for the streak chart's avatar, never the one it said last (`mem.said[pool]`).
164
+ * `rand` is a function returning [0, 1). Returns `{ text, mem }`.
165
+ */
166
+ function streakLine(streak, mem, rand) {
167
+ const pool = poolOf(streak);
168
+ const lines = LINES[pool];
169
+ let i = Math.min(lines.length - 1, Math.floor(rand() * lines.length));
170
+ if (mem.said[pool] === i) i = (i + 1) % lines.length; // every pool has more than one line
171
+ const text = lines[i].replace('{n}', streak).replace('{m}', streak + 1);
172
+ return { text, mem: { ...mem, said: { ...mem.said, [pool]: i } } };
173
+ }
174
+
175
+ /** The card's own greeting, from the same pools of true statements. */
176
+ const GREETING = {
177
+ milestone: (sig) => `${sig.streak.current} days. That is a real habit now.`,
178
+ comeback: () => 'Good to see you. Pick up where you left off.',
179
+ weekly: () => 'Here is how last week went.',
180
+ due: (sig) => (sig.due === 1 ? 'One concept needs you today.' : 'A few concepts need you today.'),
181
+ goals: () => 'Three small goals for today.',
182
+ ahead: () => 'Here is what is coming up.',
183
+ checkin: (sig) => (sig.streak.current >= 2 ? `Welcome back. ${sig.streak.current} days in a row.` : 'Welcome back.'),
184
+ };
185
+ const greeting = (id, sig) => GREETING[id](sig);
186
+
187
+ return Object.freeze({ MILESTONES, MILESTONE_WINDOW, GOAL, LAPSED_DAYS, WEEKLY_MIN, WEEKLY_DAYS, ORDER, REPEAT_COST, MOOD, daysBetween, weekKey, weekday, normalize, gate, rank, decide, remember, streakLine, greeting });
188
+ });
@@ -46,6 +46,7 @@
46
46
  <link rel="stylesheet" href="/tokens.css">
47
47
  <link rel="stylesheet" href="/brand/mascot/mascot.css">
48
48
  <script src="/brand/mascot/mascot.js" defer></script>
49
+ <script src="/daily-card.js" defer></script>
49
50
  <!-- Feature tips: Driver.js's hints module, pinned and served by this server (see TIP). -->
50
51
  <link rel="stylesheet" href="/vendor/driver-hints.css">
51
52
  <script src="/vendor/driver-hints.js" defer></script>
@@ -243,6 +244,10 @@
243
244
  select:focus-visible, input:focus-visible, button:focus-visible, a:focus-visible,
244
245
  [tabindex]:focus-visible { outline:none; box-shadow:var(--ring); }
245
246
 
247
+ .cmp { margin-top:var(--space-4); border-top:1px solid var(--line); }
248
+ .cmp__row { display:flex; align-items:center; justify-content:space-between; gap:var(--space-4); padding:var(--space-4) 0; border-bottom:1px solid var(--line); }
249
+ .cmp__row > div:first-child { min-width:0; } .cmp__row p, .cmp__note { margin:var(--space-1) 0 0; color:var(--dim); font-size:13.5px; }
250
+ .cmp__note { color:var(--faint); font-size:12px; margin-top:var(--space-3); }
246
251
  .ground { display:flex; border:1px solid var(--line-2); width:max-content; }
247
252
  .ground button { font-family:var(--font-mono); font-size:10.5px; letter-spacing:.12em;
248
253
  text-transform:uppercase; background:none; border:0; color:var(--faint);
@@ -732,6 +737,71 @@
732
737
  .toast__x:focus-visible, .toast__act:focus-visible { outline:none; box-shadow:var(--ring); }
733
738
  .toast.is-out { opacity:0; transform:translateY(8px); transition:opacity var(--duration-base) var(--ease), transform var(--duration-base) var(--ease); }
734
739
  @keyframes toast-in { from { opacity:0; transform:translateY(10px); } }
740
+ /* The daily card (see DAILY): one native dialog, square, hairline, the archer on top. */
741
+ dialog.daily { width:min(440px, calc(100vw - 32px)); max-height:calc(100vh - 32px); max-height:calc(100dvh - 32px); margin:auto; padding:0;
742
+ border:1px solid var(--line-2); border-radius:0; background:var(--panel); color:var(--ink); box-shadow:0 0 0 1px var(--line-2), 0 24px 80px rgba(0,0,0,.6);
743
+ overflow-x:hidden; overflow-y:auto; }
744
+ dialog.daily::backdrop { background:color-mix(in srgb, var(--ink) 55%, transparent); backdrop-filter:blur(10px) saturate(.8); }
745
+ dialog.daily[open] { animation:daily-in var(--duration-slow) var(--ease); }
746
+ @keyframes daily-in { from { opacity:0; transform:translateY(16px); } }
747
+ .daily__x { position:absolute; top:var(--space-2); right:var(--space-2); width:32px; height:32px; display:grid; place-items:center;
748
+ border:1px solid transparent; background:transparent; color:var(--faint); cursor:pointer; padding:0; }
749
+ .daily__x:hover { border-color:var(--line-2); color:var(--ink); }
750
+ .daily__x:focus-visible, .daily__btn:focus-visible { outline:none; box-shadow:var(--ring); }
751
+ .daily__x svg { width:16px; height:16px; }
752
+ .daily__top { display:flex; align-items:flex-end; gap:var(--space-1); padding:var(--space-5) var(--space-5) 0; }
753
+ .daily__body { padding:var(--space-2) var(--space-5) var(--space-5); display:flex; flex-direction:column; gap:var(--space-4); }
754
+ .daily__foot { border-top:1px solid var(--line-2); padding:var(--space-4) var(--space-5); display:flex; gap:var(--space-2); flex-wrap:wrap; align-items:center; }
755
+ .daily__why { margin:0; padding:0 var(--space-5) var(--space-4); font:400 11px/1.4 var(--font-mono); color:var(--faint); }
756
+ .daily__btn { border:1px solid var(--line-2); background:var(--panel); color:var(--ink); padding:10px var(--space-4); cursor:pointer;
757
+ font:500 12px/1 var(--font-mono); letter-spacing:.06em; }
758
+ .daily__btn:hover { border-color:var(--spot); color:var(--spot); }
759
+ .daily__btn--go { flex:1 1 auto; background:var(--spot); border-color:var(--spot); color:var(--spot-ink); font-weight:600; padding:12px var(--space-4); }
760
+ .daily__btn--go:hover { background:var(--ink); border-color:var(--ink); color:var(--bg); }
761
+ .daily__btn--quiet { border-color:transparent; background:transparent; color:var(--dim); }
762
+ .say { position:relative; background:var(--bg); border:1.5px solid var(--ink); padding:10px 14px; max-width:260px; font:600 13.5px/1.4 var(--font-body);
763
+ margin-bottom:26px; }
764
+ .say::after { content:""; position:absolute; left:-9px; bottom:14px; width:14px; height:14px; background:var(--bg);
765
+ border-left:1.5px solid var(--ink); border-bottom:1.5px solid var(--ink); transform:rotate(45deg); }
766
+ .daily__row { display:flex; gap:var(--space-4); align-items:center; }
767
+ .daily__big { font:900 56px/.9 var(--font-disp); letter-spacing:-.05em; font-variant-numeric:tabular-nums; }
768
+ .daily__lbl { font:500 10.5px/1 var(--font-mono); letter-spacing:.18em; text-transform:uppercase; color:var(--faint); }
769
+ .daily__note { margin:0; font:400 12px/1.5 var(--font-mono); color:var(--faint); }
770
+ .daily__flame { width:40px; height:40px; color:var(--warning); flex:none; transform-origin:50% 90%; }
771
+ .daily__flame.is-live { animation:flame 1.6s ease-in-out infinite; }
772
+ @keyframes flame { 0%,100% { transform:scale(1) rotate(0); } 30% { transform:scale(1.07,1.12) rotate(-2deg); } 60% { transform:scale(.97,1.03) rotate(1.5deg); } }
773
+ .daily__week { display:grid; grid-template-columns:repeat(7,1fr); gap:6px; }
774
+ .daily__week div { display:flex; flex-direction:column; align-items:center; gap:6px; font:500 10.5px/1 var(--font-mono); color:var(--faint); }
775
+ .daily__week i { width:100%; max-width:34px; aspect-ratio:1; display:grid; place-items:center; background:var(--mass); color:var(--spot-ink); }
776
+ .daily__week i.on { background:var(--spot); }
777
+ .daily__week i.now { background:transparent; outline:1.5px dashed var(--spot); outline-offset:2px; }
778
+ .daily__week svg { width:14px; height:14px; }
779
+ .daily__ring { position:relative; width:76px; height:76px; flex:none; }
780
+ .daily__ring svg { width:76px; height:76px; transform:rotate(-90deg); }
781
+ .daily__ring circle { fill:none; stroke-width:8; }
782
+ .daily__ring .t { stroke:var(--mass); } .daily__ring .f { stroke:var(--spot); transition:stroke-dashoffset 1s var(--ease); }
783
+ .daily__ring b { position:absolute; inset:0; display:grid; place-items:center; font:600 14px var(--font-mono); font-variant-numeric:tabular-nums; }
784
+ .daily__bar { height:8px; background:var(--mass); overflow:hidden; }
785
+ .daily__bar > b { display:block; height:100%; background:var(--spot); width:0; transition:width 1s var(--ease); }
786
+ .daily__bar.is-warn > b { background:var(--warning); }
787
+ .daily__bars { display:flex; align-items:flex-end; gap:6px; height:84px; }
788
+ .daily__bars div { flex:1; display:flex; flex-direction:column; align-items:center; gap:6px; justify-content:flex-end; height:100%; font:500 10px var(--font-mono); color:var(--faint); }
789
+ .daily__bars i { display:block; width:100%; background:var(--spot); height:0; transition:height .8s var(--ease); min-height:2px; }
790
+ .daily__bars i.is-low { background:var(--warning); }
791
+ .daily__chips { display:flex; gap:6px; flex-wrap:wrap; }
792
+ .daily__chip { border:1px solid var(--line-2); padding:4px 8px; font:500 11px/1 var(--font-mono); color:var(--dim); }
793
+ .daily__chip.is-warn { color:var(--warning); border-color:var(--warning); }
794
+ .daily__chip.is-good { color:var(--spot); border-color:var(--spot); }
795
+ .daily__h { margin:0; font:900 24px/1.1 var(--font-disp); letter-spacing:-.03em; }
796
+ .daily__confetti { position:absolute; inset:0; pointer-events:none; overflow:hidden; }
797
+ .daily__confetti i { position:absolute; top:-10px; width:8px; height:8px; opacity:0; animation:confetti 2.2s var(--ease) forwards; }
798
+ @keyframes confetti { 0% { opacity:1; transform:translateY(0) rotate(0); } 100% { opacity:0; transform:translateY(480px) rotate(540deg); } }
799
+ .streak__talk { display:flex; align-items:flex-end; gap:var(--space-1); max-width:100%; }
800
+ .streak__talk .say { margin-bottom:30px; }
801
+ /* Here the archer stands to the right of the bubble, so its tail points right. */
802
+ .streak__talk .say::after { left:auto; right:-9px; border-left:0; border-bottom:0; border-right:1.5px solid var(--ink); border-top:1.5px solid var(--ink); }
803
+ @media (prefers-reduced-motion:reduce) { dialog.daily[open], .daily__flame.is-live { animation:none; }
804
+ .daily__ring .f, .daily__bar > b, .daily__bars i { transition:none; } .daily__confetti { display:none; } }
735
805
  dialog.dlg { width:min(460px, calc(100vw - 32px)); margin:auto; padding:0; border:1px solid var(--line-2); border-radius:0;
736
806
  background:var(--panel); color:var(--ink); }
737
807
  dialog.dlg::backdrop { background:color-mix(in srgb, var(--ink) 40%, transparent); backdrop-filter:blur(6px); }
@@ -1208,14 +1278,6 @@
1208
1278
  <button type="button" data-ground="paper" aria-pressed="false">paper</button>
1209
1279
  </div>
1210
1280
  </div>
1211
-
1212
- <div class="side__group">
1213
- <p class="side__label">Tips</p>
1214
- <div class="ground" role="group" aria-label="Feature tips">
1215
- <button type="button" data-tips="on" aria-pressed="true">on</button>
1216
- <button type="button" data-tips="off" aria-pressed="false">off</button>
1217
- </div>
1218
- </div>
1219
1281
  </div>
1220
1282
 
1221
1283
  <div class="side__about" id="about" aria-label="About this dashboard">
@@ -1244,6 +1306,7 @@
1244
1306
  </div>
1245
1307
 
1246
1308
  <div class="toasts" id="toasts"></div>
1309
+ <dialog class="daily" id="daily" aria-labelledby="daily-h"></dialog>
1247
1310
  <dialog class="dlg" id="dlg" aria-labelledby="dlg-h"><form method="dialog">
1248
1311
  <div class="dlg__b"><span id="dlg-av"></span><div><h2 id="dlg-h"></h2><p id="dlg-p"></p></div><textarea id="dlg-in" hidden></textarea></div>
1249
1312
  <div class="dlg__f"><button class="btn" value="cancel" id="dlg-c"></button><button class="btn" value="ok" id="dlg-ok"></button></div>
@@ -1325,7 +1388,10 @@ const stamp = (ts) => {
1325
1388
  return d.toLocaleDateString(undefined, { month:'short', day:'numeric' })
1326
1389
  + ', ' + d.toLocaleTimeString(undefined, { hour:'2-digit', minute:'2-digit' });
1327
1390
  };
1328
- const plural = (n, w) => `${n} ${w}${n === 1 ? '' : 's'}`;
1391
+ /** Counts of 1,000 and up read short: 1K, 1.2K, 1M. Below that, the number as it is. Strings pass through. */
1392
+ const COMPACT = new Intl.NumberFormat('en', { notation:'compact', maximumFractionDigits:1 });
1393
+ const fmtN = (n) => (typeof n === 'number' && Math.abs(n) >= 1000 ? COMPACT.format(n) : n);
1394
+ const plural = (n, w) => `${fmtN(n)} ${w}${n === 1 ? '' : 's'}`;
1329
1395
 
1330
1396
  const TIER = { 1:'recall', 2:'mechanism', 3:'judgement', 4:'failure modes', 5:'design' };
1331
1397
  const tierLabel = (t) => `T${t}${TIER[t] ? ' ' + TIER[t] : ''}`;
@@ -1656,7 +1722,7 @@ const statePill = (c) =>
1656
1722
  function tiles(items) {
1657
1723
  return `<div class="stats">` + items.map(([k, v, n, kind, go]) =>
1658
1724
  `<div class="tile${kind ? ' is-' + kind : ''}"${go ? ` data-go="${esc(go)}" tabindex="0" role="link"` : ''}>`
1659
- + `<b>${esc(k)}</b><strong>${esc(v)}</strong><span>${esc(n)}</span></div>`
1725
+ + `<b>${esc(k)}</b><strong>${esc(fmtN(v))}</strong><span>${esc(n)}</span></div>`
1660
1726
  ).join('') + `</div>`;
1661
1727
  }
1662
1728
 
@@ -2098,6 +2164,24 @@ function chartHeatmap(el) {
2098
2164
  }
2099
2165
  }
2100
2166
 
2167
+ /**
2168
+ * The archer beside the streak, with a line that changes on every arrival and not on a redraw: a tab, a resize or new
2169
+ * data keeps the line it has, unless the streak itself moved (a line must never state a streak that is not there).
2170
+ */
2171
+ const SAY = { streak: null, text: '' };
2172
+ function streakSays(st) {
2173
+ const E = window.EklavyaDaily;
2174
+ if (!E) return '';
2175
+ if (SAY.streak !== st.current || (!LIVE_PASS && !ADJUSTING)) {
2176
+ // The last line said is kept with the card's memory, so a reload does not repeat it either.
2177
+ const r = E.streakLine(st.current, DAILY.reload() ?? E.normalize(null), Math.random);
2178
+ SAY.streak = st.current; SAY.text = r.text;
2179
+ if (DAILY.mem) { DAILY.mem = r.mem; DAILY.save(); }
2180
+ }
2181
+ const face = st.current < 1 ? 'idle' : st.current >= 30 ? 'complete' : 'success';
2182
+ return `<div class="streak__talk"><div class="say">${esc(SAY.text)}</div><eklavya-mascot state="${face}" variant="body" size="88"></eklavya-mascot></div>`;
2183
+ }
2184
+
2101
2185
  /** The streak, up front: the run, the longest, and the calendar it is counted from. */
2102
2186
  function streakCard(st) {
2103
2187
  chart('c-heat', chartHeatmap);
@@ -2110,6 +2194,7 @@ function streakCard(st) {
2110
2194
  <div><h2>${st.current ? `${st.current} day streak` : 'No streak yet'}</h2>
2111
2195
  ${sub ? `<p class="streak__sub">${esc(sub)}</p>` : ''}</div>
2112
2196
  ${st.best ? `<p class="streak__best">Longest streak <span aria-hidden="true">|</span> ${esc(plural(st.best, 'day'))}</p>` : ''}
2197
+ ${streakSays(st)}
2113
2198
  </div>
2114
2199
  <div class="streak__cal">
2115
2200
  <button type="button" class="streak__arr" id="heat-prev" aria-label="Earlier weeks" hidden>‹</button>
@@ -2574,8 +2659,8 @@ function viewLearningDashboard() {
2574
2659
  answered moves a score.`),
2575
2660
 
2576
2661
  tiles([
2577
- ['Accuracy', answered ? pct(passed, answered) + '%' : '—', answered ? `${passed} right of ${answered}` : 'No assessments yet', answered && pct(passed, answered) >= 70 ? 'good' : '', LH('sessions')],
2578
- ['Mastered', mastered.length, `of ${seen.length} asked`, mastered.length ? 'good' : '', LH('concepts', 'mastered')],
2662
+ ['Accuracy', answered ? pct(passed, answered) + '%' : '—', answered ? `${fmtN(passed)} right of ${fmtN(answered)}` : 'No assessments yet', answered && pct(passed, answered) >= 70 ? 'good' : '', LH('sessions')],
2663
+ ['Mastered', mastered.length, `of ${fmtN(seen.length)} asked`, mastered.length ? 'good' : '', LH('concepts', 'mastered')],
2579
2664
  ['Due now', due.length, due.length ? 'ready for review' : 'nothing waiting', due.length ? 'warn' : '', LH('review')],
2580
2665
  toCorrectTile(),
2581
2666
  ]),
@@ -3338,10 +3423,10 @@ function memTiles() {
3338
3423
  const { scoped, events, pending, entries, sessions } = memCounts();
3339
3424
  const everywhere = scoped ? 'all projects · ' : '';
3340
3425
  return tiles([
3341
- ['Observations', entries, scoped ? 'live in this project' : `${M.indexed} indexed`, '', MH('timeline')],
3426
+ ['Observations', entries, scoped ? 'live in this project' : `${fmtN(M.indexed)} indexed`, '', MH('timeline')],
3342
3427
  ['Sessions', sessions, 'captured or remembered', '', MH('sessions')],
3343
- ['Pending', pending, pending ? `of ${events} evidence events` : `all ${events} distilled`, pending ? 'warn' : '', MH('health')],
3344
- ['Reused', M.reused, `${everywhere}${M.exposed} delivered`, '', MH('reuse')],
3428
+ ['Pending', pending, pending ? `of ${fmtN(events)} evidence events` : `all ${fmtN(events)} distilled`, pending ? 'warn' : '', MH('health')],
3429
+ ['Reused', M.reused, `${everywhere}${fmtN(M.exposed)} delivered`, '', MH('reuse')],
3345
3430
  ]);
3346
3431
  }
3347
3432
 
@@ -3434,7 +3519,7 @@ function viewMemoryDashboard() {
3434
3519
 
3435
3520
  return [
3436
3521
  pageHead('What does memory hold?', [
3437
- `${M.processed} distilled`, `${M.indexed} indexed`, `${M.reused} reused`, `${M.exposed} delivered`, `${M.assessed} assessed`,
3522
+ `${fmtN(M.processed)} distilled`, `${fmtN(M.indexed)} indexed`, `${fmtN(M.reused)} reused`, `${fmtN(M.exposed)} delivered`, `${fmtN(M.assessed)} assessed`,
3438
3523
  ], `Captured, processed, stored, retrieved, delivered, assessed — six different things that can happen to one
3439
3524
  piece of evidence, counted separately. None of them is an answer: only a question you answered moves
3440
3525
  mastery. Reuse, delivery and assessment are counted across all projects.`),
@@ -3658,13 +3743,13 @@ function viewHealth() {
3658
3743
  !H.capture.enabled ? 'memory is disabled' : !H.capture.newest_event ? 'nothing has been captured yet' : '',
3659
3744
  Q.failed ? `${plural(Q.failed, 'job')} failed after retries` : '',
3660
3745
  Q.paused ? `${plural(Q.paused, 'job')} paused, waiting on a decision` : '',
3661
- H.spool_dropped ? `${H.spool_dropped} events dropped by the spool` : '',
3746
+ H.spool_dropped ? `${fmtN(H.spool_dropped)} events dropped by the spool` : '',
3662
3747
  ].filter(Boolean);
3663
3748
  return [
3664
3749
  pageHead('Health', [
3665
3750
  `last capture ${esc(H.capture.newest_event ? ago(H.capture.newest_event) : 'never')}`,
3666
3751
  H.capture.enabled ? `capture is ${esc(H.capture.mode)}` : 'memory off',
3667
- `${Q.pending} queued${Q.pending ? `, oldest ${esc(oldest)}` : ''}`,
3752
+ `${fmtN(Q.pending)} queued${Q.pending ? `, oldest ${esc(oldest)}` : ''}`,
3668
3753
  ], `Where memory stops, when it stops. Capture, processing, indexing, retrieval and delivery fail in
3669
3754
  different ways and this page keeps them apart. Error classes only — no log dumps, no keys, no raw
3670
3755
  request bodies. Transient failures retry on their own; auth, quota and missing need you.`),
@@ -4154,7 +4239,7 @@ const TIP = {
4154
4239
  const h = this.lib();
4155
4240
  const st = S && h ? this.load() : null;
4156
4241
  clearTimeout(this.timer);
4157
- if (!st || st.off || drawerOpen || $('fix').open || !menu.hidden || !pmenu.hidden || !smenu.hidden) {
4242
+ if (!st || st.off || drawerOpen || $('fix').open || $('daily').open || !menu.hidden || !pmenu.hidden || !smenu.hidden) {
4158
4243
  h?.hide();
4159
4244
  this.shown = [];
4160
4245
  return;
@@ -4235,7 +4320,215 @@ const TIP = {
4235
4320
  document.addEventListener('click', (e) => {
4236
4321
  for (const [id, n] of TIP.shown) if (n.contains(e.target)) TIP.hints.dismiss(id);
4237
4322
  }, true);
4238
- document.querySelectorAll('[data-tips]').forEach((b) => b.addEventListener('click', () => TIP.set(b.dataset.tips === 'on')));
4323
+ // The switches live on the Settings page (Companion tab), which is redrawn: one listener on the document.
4324
+ document.addEventListener('click', (e) => { const b = e.target.closest('[data-tips]'); if (b) TIP.set(b.dataset.tips === 'on'); });
4325
+
4326
+ /* ---------- the daily card ----------
4327
+ One card, once a local day, on arrival at the Learning dashboard. *Which* card, and whether to show one at all,
4328
+ is the engine's (`/daily-card.js`, `EklavyaDaily`: gate, rank, decide); this block gathers the signals it reads,
4329
+ remembers what it showed, and draws the answer. The memory is a per-browser convenience in localStorage, like the
4330
+ tips: storage that throws means no card, because a card that cannot remember would greet every navigation. */
4331
+ const DAILY_KEY = 'eklavya-dash-daily';
4332
+ const DAILY_DELAY_MS = 450;
4333
+ const DAILY = {
4334
+ mem: undefined, // the engine's normalized memory; null when storage throws
4335
+ timer: 0,
4336
+ pending: false, // arrived while the tab was hidden: decided when it becomes visible
4337
+ opener: null,
4338
+ load() {
4339
+ if (this.mem !== undefined) return this.mem;
4340
+ if (!window.EklavyaDaily) return null; // the script has not run yet: nothing is remembered about that
4341
+ let raw = null, v = null;
4342
+ try { raw = localStorage.getItem(DAILY_KEY); } catch (e) { return (this.mem = null); }
4343
+ try { v = JSON.parse(raw); } catch (e) { /* malformed: the empty memory */ }
4344
+ return (this.mem = window.EklavyaDaily.normalize(v));
4345
+ },
4346
+ /** Read again from storage: another tab of this browser may have shown today's card or changed the switch since. */
4347
+ reload() { this.mem = undefined; return this.load(); },
4348
+ save() { try { localStorage.setItem(DAILY_KEY, JSON.stringify(this.mem)); } catch (e) { this.mem = null; } },
4349
+ set(on) {
4350
+ if (!this.reload()) return;
4351
+ this.mem = { ...this.mem, off: !on };
4352
+ this.save();
4353
+ this.paint();
4354
+ if (!on && $('daily').open) $('daily').close();
4355
+ },
4356
+ paint() {
4357
+ const on = !this.load()?.off;
4358
+ document.querySelectorAll('[data-daily]').forEach((b) => b.setAttribute('aria-pressed', String((b.dataset.daily === 'on') === on)));
4359
+ },
4360
+ /** Something else owns the screen: a dialog, the drawer, an open list. The card never sits on top of one. */
4361
+ busy() {
4362
+ return drawerOpen || $('dlg').open || $('sheet').open || $('fix').open || $('daily').open
4363
+ || !menu.hidden || !pmenu.hidden || !smenu.hidden || $('view').getAttribute('aria-busy') === 'true';
4364
+ },
4365
+ /** The numbers the engine reads, from the readings the page already holds (nothing is queried for the card). */
4366
+ signals() {
4367
+ const E = window.EklavyaDaily;
4368
+ const day = todayKey(), map = dailyInScope(), st = streaks(), seen = seenConcepts();
4369
+ const total = (k) => map.get(k)?.total ?? 0;
4370
+ const back = (n) => dayKey(new Date(fromKey(day).getTime() - n * DAY_MS));
4371
+ const wd = E.weekday(day);
4372
+ const sum = (from, to) => { let answers = 0, right = 0; for (let i = from; i <= to; i++) { const d = map.get(back(i)); if (d) { answers += d.total; right += d.passed + d.corrected; } } return { answers, right }; };
4373
+ const weekDays = Array.from({ length: 7 }, (_, i) => i <= wd && total(back(wd - i)) > 0);
4374
+ let lastDay = null;
4375
+ for (const d of map.values()) if (d.total > 0 && (!lastDay || d.day > lastDay)) lastDay = d.day;
4376
+ const dueList = seen.filter((c) => c.due).sort((a, b) => (b.overdue_days ?? 0) - (a.overdue_days ?? 0));
4377
+ const ahead = Array.from({ length: 7 }, (_, i) => { const k = dayKey(new Date(fromKey(day).getTime() + i * DAY_MS)); return seen.filter((c) => c.owed && !c.due && c.next_review && localKey(parse(c.next_review)) === k).length; });
4378
+ const by = new Map();
4379
+ for (const c of seen) { const g = by.get(c.domain) ?? { name: c.domain, n: 0, sum: 0 }; g.n += 1; g.sum += c.score; by.set(c.domain, g); }
4380
+ const ranked = [...by.values()].filter((g) => g.n >= 2).map((g) => ({ name: g.name, avg: g.sum / g.n })).sort((a, b) => a.avg - b.avg);
4381
+ const top = dueList[0] ? { slug: dueList[0].slug, name: dueList[0].name, project: conceptStart(dueList[0]).project, domain: dueList[0].domain, tier: dueList[0].tier, score: dueList[0].score, days: dueList[0].overdue_days ?? 0 } : null;
4382
+ return {
4383
+ day, answers: scopeTotals().answers, answersToday: total(day),
4384
+ daysAway: lastDay ? E.daysBetween(lastDay, day) : null,
4385
+ streak: { current: st.current, best: st.best, today: st.today },
4386
+ due: dueList.length, upcoming: ahead.reduce((a, b) => a + b, 0), top,
4387
+ lastWeek: { ...sum(wd + 1, wd + 7), prev: sum(wd + 8, wd + 14) },
4388
+ // Read by the card's drawing, not by the engine.
4389
+ weekDays, wd, ahead, weakest: ranked.length > 1 ? ranked[0].name : null, strongest: ranked.length > 1 ? ranked.at(-1).name : null,
4390
+ };
4391
+ },
4392
+ /** Called after a navigation draws (never an adjustment or new data): schedules a decision once the page has painted. */
4393
+ arrive() {
4394
+ clearTimeout(this.timer);
4395
+ if (!window.EklavyaDaily || !S || CUR.wf !== 'learning' || CUR.page !== 'dashboard') return;
4396
+ const mem = this.reload();
4397
+ if (!mem || mem.off || mem.day >= todayKey()) return;
4398
+ this.timer = setTimeout(() => this.decide(), window.__eklavyaDailyDelay ?? DAILY_DELAY_MS);
4399
+ },
4400
+ decide() {
4401
+ const E = window.EklavyaDaily, mem = this.reload();
4402
+ if (!mem || !S) return;
4403
+ const ctx = { route: CUR.wf + '/' + CUR.page, busy: this.busy(), hidden: document.visibilityState !== 'visible' };
4404
+ this.pending = ctx.hidden;
4405
+ const sig = this.signals();
4406
+ const d = E.decide(sig, mem, ctx);
4407
+ if (!d.show) return;
4408
+ // Drawn first: a card that cannot be drawn is not remembered as shown, and the page goes on without it.
4409
+ let view;
4410
+ try { view = DAILY_CARDS[d.id](sig, d); } catch (e) { console.error('daily card', d.id, e); return; }
4411
+ this.mem = E.remember(mem, d, sig);
4412
+ this.save();
4413
+ this.open(d, sig, view);
4414
+ },
4415
+ open(d, sig, view) {
4416
+ const E = window.EklavyaDaily;
4417
+ this.opener = document.activeElement;
4418
+ $('daily').innerHTML = `<button type="button" class="daily__x" data-daily-close aria-label="Close">${ICON_X}</button>
4419
+ <div class="daily__top"><eklavya-mascot state="${E.MOOD[d.id]}" variant="body" size="104"></eklavya-mascot>
4420
+ <div class="say" id="daily-h">${esc(E.greeting(d.id, sig))}</div></div>
4421
+ <div class="daily__body">${view.markup}</div>
4422
+ <div class="daily__foot"><button type="button" class="daily__btn daily__btn--go" autofocus data-daily-go="${esc(view.go ?? '')}">${esc(view.label)}</button>
4423
+ <button type="button" class="daily__btn daily__btn--quiet" data-daily-close>Not now</button></div>
4424
+ <p class="daily__why">${esc(d.why)} Shown once a day.</p>`;
4425
+ $('daily').dataset.card = d.id;
4426
+ $('daily').showModal();
4427
+ TIP.sync();
4428
+ this.animate(d.id);
4429
+ },
4430
+ animate(id) {
4431
+ const root = $('daily'), still = matchMedia('(prefers-reduced-motion: reduce)').matches;
4432
+ root.querySelectorAll('[data-count]').forEach((el) => {
4433
+ const to = +el.dataset.count;
4434
+ if (still) { el.textContent = to; return; }
4435
+ const t0 = performance.now();
4436
+ const step = (t) => { const p = Math.min(1, (t - t0) / 900); el.textContent = Math.round(to * (1 - Math.pow(1 - p, 3))); if (p < 1) requestAnimationFrame(step); };
4437
+ requestAnimationFrame(step);
4438
+ });
4439
+ requestAnimationFrame(() => requestAnimationFrame(() => {
4440
+ root.querySelectorAll('.daily__ring .f').forEach((c) => { c.style.strokeDashoffset = c.dataset.to; });
4441
+ root.querySelectorAll('[data-w]').forEach((b) => { b.style.width = b.dataset.w + '%'; });
4442
+ root.querySelectorAll('[data-h]').forEach((b) => { b.style.height = b.dataset.h + '%'; });
4443
+ }));
4444
+ if (id === 'milestone' && !still) {
4445
+ const c = document.createElement('div');
4446
+ c.className = 'daily__confetti';
4447
+ c.setAttribute('aria-hidden', 'true');
4448
+ const roles = ['var(--spot)', 'var(--warning)', 'var(--ink)', 'var(--mascot-coral)'];
4449
+ c.innerHTML = Array.from({ length: 26 }, (_, i) => `<i style="left:${(i * 37) % 100}%;background:${roles[i % 4]};animation-delay:${(i % 7) * 0.07}s;animation-duration:${1.6 + (i % 5) * 0.2}s"></i>`).join('');
4450
+ root.append(c);
4451
+ setTimeout(() => c.remove(), 3200);
4452
+ }
4453
+ },
4454
+ };
4455
+
4456
+ const DAILY_ICON = {
4457
+ flame: '<svg class="daily__flame is-live" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M8.5 14.5A2.5 2.5 0 0 0 11 12c0-1.38-.5-2-1-3-1.072-2.143-.224-4.054 2-6 .5 2.5 2 4.9 4 6.5 2 1.6 3 3.5 3 5.5a7 7 0 1 1-14 0c0-1.153.433-2.294 1-3a2.5 2.5 0 0 0 2.5 2.5z"/></svg>',
4458
+ check: '<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M20 6 9 17l-5-5"/></svg>',
4459
+ };
4460
+ const DAILY_DAYS = ['M', 'T', 'W', 'T', 'F', 'S', 'S'];
4461
+ const dailyWeek = (sig) => `<div class="daily__week" role="img" aria-label="${plural(sig.weekDays.filter(Boolean).length, 'day')} active this week">${DAILY_DAYS.map((d, i) =>
4462
+ `<div><i class="${sig.weekDays[i] ? 'on' : i === sig.wd ? 'now' : ''}">${sig.weekDays[i] ? DAILY_ICON.check : ''}</i>${d}</div>`).join('')}</div>`;
4463
+ const dailyRing = (done, goal) => { const c = 2 * Math.PI * 30; return `<div class="daily__ring"><svg viewBox="0 0 76 76" aria-hidden="true"><circle class="t" cx="38" cy="38" r="30"/><circle class="f" cx="38" cy="38" r="30" stroke-dasharray="${c}" stroke-dashoffset="${c}" data-to="${c * (1 - Math.min(1, done / goal))}"/></svg><b>${Math.min(done, goal)}/${goal}</b></div>`; };
4464
+ const dailyBars = (vals, labels, cls) => { const max = Math.max(...vals, 1); return `<div class="daily__bars" aria-hidden="true">${vals.map((v, i) => `<div><i class="${cls?.(v) ?? ''}" data-h="${Math.round((v / max) * 100)}"></i>${esc(labels[i])}</div>`).join('')}</div>`; };
4465
+ const dailyQueue = () => LH('review');
4466
+
4467
+ /** One drawing per card id: `{ markup, label, go }`. `go` is a hash to navigate to, `sheet:<slug>` to open a concept's review sheet, or '' to just close. */
4468
+ const DAILY_CARDS = {
4469
+ checkin: (sig) => ({
4470
+ markup: `<div class="daily__row">${DAILY_ICON.flame}<div class="daily__big" data-count="${sig.streak.current}">0</div><div><div class="daily__lbl">day streak</div><p class="daily__note">Longest: ${plural(sig.streak.best, 'day')}</p></div></div>
4471
+ ${dailyWeek(sig)}
4472
+ <div class="daily__row">${dailyRing(sig.answersToday, window.EklavyaDaily.GOAL)}<div><b>Today's goal</b><p class="daily__note">Answer ${window.EklavyaDaily.GOAL} questions. ${sig.answersToday ? `${sig.answersToday} done.` : 'None yet.'}</p></div></div>`,
4473
+ label: sig.due ? 'Open the review queue' : 'See your concepts', go: sig.due ? dailyQueue() : LH('concepts'),
4474
+ }),
4475
+ due: (sig) => ({
4476
+ markup: `<div><div class="daily__lbl">Start here</div><h2 class="daily__h" style="margin-top:8px">${esc(sig.top.name)}</h2><p class="daily__note" style="margin-top:6px">${esc(sig.top.project ?? 'no project recorded')} · ${esc(sig.top.domain)}</p></div>
4477
+ <div class="daily__chips"><span class="daily__chip ${sig.top.days > 0 ? 'is-warn' : ''}">${sig.top.days > 0 ? plural(sig.top.days, 'day') + ' overdue' : 'due today'}</span><span class="daily__chip">${esc(tierLabel(sig.top.tier))}</span><span class="daily__chip">Score ${Math.round(sig.top.score * 100)}%</span></div>
4478
+ <div class="daily__bar is-warn" role="img" aria-label="Score ${Math.round(sig.top.score * 100)} percent"><b data-w="${Math.round(sig.top.score * 100)}"></b></div>
4479
+ <p class="daily__note">${sig.due > 1 ? `${plural(sig.due - 1, 'more concept')} due. One at a time.` : 'The only one due.'}</p>`,
4480
+ label: 'Review this concept', go: 'sheet:' + sig.top.slug,
4481
+ }),
4482
+ weekly: (sig) => {
4483
+ const w = sig.lastWeek, acc = Math.round((w.right / w.answers) * 100), prev = w.prev.answers ? Math.round((w.prev.right / w.prev.answers) * 100) : null;
4484
+ const delta = prev === null ? null : acc - prev;
4485
+ return {
4486
+ markup: `<div class="daily__row"><div class="daily__big"><span data-count="${acc}">0</span>%</div><div>${delta === null ? '' : `<span class="daily__chip ${delta >= 0 ? 'is-good' : 'is-warn'}">${delta >= 0 ? '+' : '−'}${Math.abs(delta)} pts vs the week before</span>`}<p class="daily__note" style="margin-top:6px">${w.right} of ${plural(w.answers, 'answer')} right last week</p></div></div>
4487
+ ${sig.strongest && sig.weakest ? `<div class="daily__row" style="justify-content:space-between;align-items:flex-start"><div><div class="daily__lbl">Strongest</div><b>${esc(sig.strongest)}</b></div><div><div class="daily__lbl">Needs work</div><b style="color:var(--warning)">${esc(sig.weakest)}</b></div></div>` : ''}`,
4488
+ label: sig.weakest ? `See ${sig.weakest}` : 'See your concepts', go: sig.weakest ? LH('concepts', 'all', { domain: sig.weakest }) : LH('concepts'),
4489
+ };
4490
+ },
4491
+ goals: (sig) => {
4492
+ const G = window.EklavyaDaily.GOAL, left = G - sig.answersToday;
4493
+ return {
4494
+ markup: `<div class="daily__row">${dailyRing(sig.answersToday, G)}<div><b>Answer ${G} questions today</b><p class="daily__note">${left === G ? 'None yet.' : `${plural(left, 'to go')}.`} Quizzes run in your Claude session.</p></div></div>
4495
+ ${sig.due ? `<p class="daily__note">${plural(sig.due, 'concept')} due. The review queue has the command.</p>` : ''}`,
4496
+ label: 'Open the review queue', go: dailyQueue(),
4497
+ };
4498
+ },
4499
+ ahead: (sig) => {
4500
+ const labels = sig.ahead.map((_, i) => i === 0 ? 'today' : fmtDay(dayKey(new Date(fromKey(sig.day).getTime() + i * DAY_MS))).replace(/^\D+ /, ''));
4501
+ return {
4502
+ markup: `${dailyBars(sig.ahead, labels)}<p><b>${plural(sig.due, 'concept')} due now</b> <span style="color:var(--dim)">and ${sig.upcoming} scheduled over the next six days.</span></p>`,
4503
+ label: 'Open the review queue', go: dailyQueue(),
4504
+ };
4505
+ },
4506
+ milestone: (sig) => ({
4507
+ markup: `<div style="text-align:center;display:flex;flex-direction:column;gap:12px;align-items:center">${DAILY_ICON.flame.replace('class="daily__flame is-live"', 'class="daily__flame is-live" style="width:56px;height:56px"')}
4508
+ <div class="daily__big" style="font-size:64px"><span data-count="${sig.streak.current}">0</span></div><div class="daily__lbl">day streak${sig.streak.current >= sig.streak.best ? ' · your longest' : ''}</div></div>`,
4509
+ label: 'Keep going', go: '',
4510
+ }),
4511
+ comeback: (sig) => ({
4512
+ markup: `<div><div class="daily__lbl">Your longest streak</div><div class="daily__big" style="margin-top:8px">${sig.streak.best} <span style="font-size:20px;letter-spacing:-.02em">${sig.streak.best === 1 ? 'day' : 'days'}</span></div><p class="daily__note" style="margin-top:8px">Last answer: ${plural(sig.daysAway, 'day')} ago</p></div>
4513
+ <p style="color:var(--dim);margin:0">${sig.due ? `${plural(sig.due, 'concept')} ${sig.due === 1 ? 'is' : 'are'} ready to review. Starting with the most overdue is the quickest way back.` : 'Nothing is overdue. Any question brings the streak back.'}</p>`,
4514
+ label: sig.top ? 'Review ' + sig.top.name : 'See your concepts', go: sig.top ? 'sheet:' + sig.top.slug : LH('concepts'),
4515
+ }),
4516
+ };
4517
+
4518
+ /** Closing and acting. A native dialog already gives Escape, the focus trap and the backdrop. */
4519
+ $('daily').addEventListener('click', (e) => {
4520
+ if (e.target === $('daily') || e.target.closest('[data-daily-close]')) return $('daily').close();
4521
+ const go = e.target.closest('[data-daily-go]');
4522
+ if (!go) return;
4523
+ const to = go.dataset.dailyGo;
4524
+ DAILY.opener = null; // the action moves the reader on; focus does not go back to what was behind the card
4525
+ $('daily').close();
4526
+ if (to.startsWith('sheet:')) openSheet(to.slice(6));
4527
+ else if (to) goTo(to);
4528
+ });
4529
+ $('daily').addEventListener('close', () => { $('daily').innerHTML = ''; DAILY.opener?.focus?.(); DAILY.opener = null; TIP.sync(); });
4530
+ document.addEventListener('click', (e) => { const b = e.target.closest('[data-daily]'); if (b) DAILY.set(b.dataset.daily === 'on'); });
4531
+ document.addEventListener('visibilitychange', () => { if (document.visibilityState === 'visible' && DAILY.pending) { DAILY.pending = false; DAILY.arrive(); } });
4239
4532
 
4240
4533
  /* ---------- artifact tabs ----------
4241
4534
  Open pages stay open as tabs. The URL names the active one; the list itself
@@ -4562,6 +4855,10 @@ const SW_ICON = {
4562
4855
  project: '<path d="M3 7a2 2 0 0 1 2-2h4l2 2h8a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"/>',
4563
4856
  };
4564
4857
 
4858
+ /** One on/off switch of the Companion tab: `attr` is the data attribute (`tips`, `daily`) the page's click handler reads. */
4859
+ const companionSwitch = (attr, label, help, on) => `<div class="cmp__row"><div><b>${esc(label)}</b><p>${esc(help)}</p></div>
4860
+ <div class="ground" role="group" aria-label="${esc(label)}">${['on', 'off'].map((v) => `<button type="button" data-${attr}="${v}" data-focus="${attr}:${v}" aria-pressed="${on === (v === 'on')}">${v}</button>`).join('')}</div></div>`;
4861
+
4565
4862
  /**
4566
4863
  * The switchboard. On the left, the scope: you (user settings, the default) or
4567
4864
  * one project. On the right, that scope's settings one category at a time, each
@@ -4621,7 +4918,12 @@ function drawSettings(d, scope) {
4621
4918
  v: `<span class="mono">${esc(showValue(file.effective[c.key]))}</span>` }))));
4622
4919
  } else if (here.id === 'companion') {
4623
4920
  body = card('Your companion', 'The mascot that appears in tips, loaders and empty pages. The gallery shows every expression, both grounds and the loading animation.',
4624
- `<div class="ek-companion"><eklavya-mascot state="info" size="72"></eklavya-mascot><a class="link" href="/mascot.html">Open the companion gallery ↗</a></div>`);
4921
+ `<div class="ek-companion"><eklavya-mascot state="info" size="72"></eklavya-mascot><a class="link" href="/mascot.html">Open the companion gallery ↗</a></div>
4922
+ <div class="cmp">
4923
+ ${companionSwitch('tips', 'Tips', 'A dot and a short bubble beside each feature, on your first visits. On starts every tip again.', !TIP.load()?.off)}
4924
+ ${companionSwitch('daily', 'Daily card', 'One card the first time you open the Learning dashboard each day.', !DAILY.reload()?.off)}
4925
+ <p class="cmp__note">Both are remembered in this browser only, not in your config.</p>
4926
+ </div>`);
4625
4927
  } else if (here.id === 'changed') {
4626
4928
  const tabOf = (k) => { const f = d.fields.find((x) => x.key === k); return f ? swTab(f.group) : 'terminal'; };
4627
4929
  body = card(`Set ${scope === 'project' ? 'for this project' : 'by you'}`,
@@ -4687,6 +4989,9 @@ function fbEmpty(F) {
4687
4989
  } else if (F.failed) {
4688
4990
  state = 'error';
4689
4991
  body = `<p>Couldn't review the last session. It will try again at a later start.</p>`;
4992
+ } else if (F.acknowledged > 0) {
4993
+ state = 'happy';
4994
+ body = `<p>The next feedback is on its way. Eklavya will share it once it's available.</p>`;
4690
4995
  } else {
4691
4996
  body = `<p>Nothing to review yet. When a session ends, the next one you start reviews one of its prompts.</p>`;
4692
4997
  }
@@ -4860,7 +5165,7 @@ const fbDecide = (it) => `<section class="card fb__card fb__decide" aria-labelle
4860
5165
  <div class="fb__dh"><eklavya-mascot state="info" variant="face" size="32"></eklavya-mascot><h3 id="fb-decide-h">Done reading?</h3></div>
4861
5166
  <p class="fb__dp">${esc(FB.rulePending)}</p>
4862
5167
  ${fbActions(it.id)}
4863
- <p class="fb__foot"><span>1 waiting</span><span>${esc(S.feedback.acknowledged + ' in history')}</span></p></section>`;
5168
+ <p class="fb__foot"><span>1 waiting</span><span>${esc(fmtN(S.feedback.acknowledged) + ' in history')}</span></p></section>`;
4864
5169
 
4865
5170
  /**
4866
5171
  * One item: the verdict, the two prompts, what worked, what it left out and the
@@ -5940,6 +6245,8 @@ function render(opts) {
5940
6245
  }
5941
6246
  for (const fn of AFTER) fn();
5942
6247
  TIP.sync();
6248
+ // The daily card is for arriving, not for redraws: not an adjustment, not new data.
6249
+ if (!adjusting && !LIVE_PASS) DAILY.arrive();
5943
6250
 
5944
6251
  // A new screen opens at its top, at once. `html` asks for smooth scrolling (for in-page jumps), and a scroll that
5945
6252
  // does not name its behavior follows it, so a reader coming from the bottom of a long page would see the new
@@ -6499,6 +6806,7 @@ function paintChrome(s, inv) {
6499
6806
  // captured memory, is a project and is listed.
6500
6807
  buildProjects(inv);
6501
6808
  TIP.paint();
6809
+ DAILY.paint();
6502
6810
  }
6503
6811
 
6504
6812
  /* ---------- live: the open page is told, and never asks ----------
package/dist/dashboard.js CHANGED
@@ -1953,6 +1953,7 @@ const MASCOT_ASSETS = new Map([
1953
1953
  ['/brand/mascot/mascot.js', ['mascot/mascot.js', 'text/javascript; charset=utf-8']],
1954
1954
  ['/brand/mascot/mascot.css', ['mascot/mascot.css', 'text/css; charset=utf-8']],
1955
1955
  ['/mascot.html', ['mascot.html', 'text/html; charset=utf-8']],
1956
+ ['/daily-card.js', ['daily-card.cjs', 'text/javascript; charset=utf-8']],
1956
1957
  ]);
1957
1958
  /** The tips library, copied from node_modules at build by `copy-assets.mjs`. */
1958
1959
  const VENDOR = { '/vendor/driver-hints.js': 'text/javascript', '/vendor/driver-hints.css': 'text/css' };
@@ -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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"}
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "eklavya",
3
3
  "displayName": "Eklavya",
4
- "version": "1.75.1",
4
+ "version": "1.77.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.75.1",
3
+ "version": "1.77.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": {