eklavya 1.50.2 → 1.51.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
|
@@ -100,7 +100,9 @@ change and a correction of a missed answer, which can also complete a level. An
|
|
|
100
100
|
counter that moves on every write it would show, and offers a refresh. A request
|
|
101
101
|
it cannot parse gets a 400 without stopping the server
|
|
102
102
|
([what it is, underneath](https://eklavya-run.web.app/docs/dashboard/#what-it-is-underneath)).
|
|
103
|
-
Its Learning page shows your streak and its calendar under the summary tiles
|
|
103
|
+
Its Learning page shows your streak and its calendar under the summary tiles; a
|
|
104
|
+
**To be corrected** tile there and on the Artifacts page counts missed answers still
|
|
105
|
+
waiting for a correction. The
|
|
104
106
|
review queue gives each project a command to copy that starts Claude Code on its due
|
|
105
107
|
concepts, in the project's folder when that folder is available.
|
|
106
108
|
Its feature tips use Driver.js, bundled in `dist/` at build and served by the
|
|
@@ -1738,6 +1738,7 @@ function viewLearningDashboard() {
|
|
|
1738
1738
|
['Accuracy', answered ? pct(passed, answered) + '%' : '—', answered ? `${passed} right of ${answered}` : 'No assessments yet', answered && pct(passed, answered) >= 70 ? 'good' : '', LH('sessions')],
|
|
1739
1739
|
['Mastered', mastered.length, `of ${seen.length} asked`, mastered.length ? 'good' : '', LH('concepts', 'mastered')],
|
|
1740
1740
|
['Due now', due.length, due.length ? 'ready for review' : 'nothing waiting', due.length ? 'warn' : '', LH('review')],
|
|
1741
|
+
toCorrectTile(),
|
|
1741
1742
|
]),
|
|
1742
1743
|
|
|
1743
1744
|
next,
|
|
@@ -2775,6 +2776,12 @@ const artifactUrl = (a) => '/artifacts/' + a.id.split('/').map(encodeURIComponen
|
|
|
2775
2776
|
// The thumbnail's URL names the ground, and the size busts its cache when a page is rewritten.
|
|
2776
2777
|
const thumbUrl = (a, mode) => `${artifactUrl(a)}?thumb=${mode}&v=${a.bytes}`;
|
|
2777
2778
|
|
|
2779
|
+
/** Missed answers whose explainer still waits for a correction: one tile on both Dashboards. */
|
|
2780
|
+
function toCorrectTile() {
|
|
2781
|
+
const n = artifactsInScope().filter((a) => a.correction === 'open').length;
|
|
2782
|
+
return ['To be corrected', n, n ? `missed answer${n === 1 ? '' : 's'} to correct` : 'nothing to correct', n ? 'warn' : '', AH('dashboard', 'to-correct')];
|
|
2783
|
+
}
|
|
2784
|
+
|
|
2778
2785
|
function artifactCard(a) {
|
|
2779
2786
|
const known = a.concept && S.concepts.some((c) => c.slug === a.concept);
|
|
2780
2787
|
const concept = !a.concept ? ''
|
|
@@ -2829,6 +2836,11 @@ function viewArtifacts(param) {
|
|
|
2829
2836
|
${TAB_MAX} stay open. An explainer for a missed question carries a <b>Correct your answer</b> bar: pick the right
|
|
2830
2837
|
option and the miss shows as corrected. That counts as a pass for the concept's score, but not toward a
|
|
2831
2838
|
commit gate or a level, and the concept still comes back for review.`),
|
|
2839
|
+
tiles([
|
|
2840
|
+
['Pages', all.length, 'in scope', '', AH('dashboard')],
|
|
2841
|
+
['Explainers', counts.explainer, 'one concept each', '', AH('dashboard', 'explainer')],
|
|
2842
|
+
toCorrectTile(),
|
|
2843
|
+
]),
|
|
2832
2844
|
card(null, null,
|
|
2833
2845
|
`<div class="filters">
|
|
2834
2846
|
<div class="grow"><input type="search" id="aq" value="${esc(t.q)}" placeholder="Search artifacts" aria-label="Search artifacts"></div>
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "eklavya",
|
|
3
3
|
"displayName": "Eklavya",
|
|
4
|
-
"version": "1.
|
|
4
|
+
"version": "1.51.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