dsh-diagnostic-tutor 0.1.1 → 0.2.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.
Files changed (115) hide show
  1. package/README.md +224 -59
  2. package/lib/api.js +178 -0
  3. package/lib/api.js.map +1 -1
  4. package/lib/block-types.js +25 -0
  5. package/lib/block-types.js.map +1 -0
  6. package/lib/client.js +9448 -1654
  7. package/lib/client.js.map +1 -1
  8. package/lib/diagnostics.js +170 -0
  9. package/lib/diagnostics.js.map +1 -0
  10. package/lib/index.js +75 -13
  11. package/lib/index.js.map +1 -1
  12. package/lib/insights.js +82 -0
  13. package/lib/insights.js.map +1 -0
  14. package/lib/interactions.js +70 -0
  15. package/lib/interactions.js.map +1 -0
  16. package/lib/journal.js +122 -0
  17. package/lib/journal.js.map +1 -0
  18. package/lib/lesson-markdown.js +72 -0
  19. package/lib/lesson-markdown.js.map +1 -0
  20. package/lib/lesson.js +152 -3
  21. package/lib/lesson.js.map +1 -1
  22. package/lib/math.js +126 -0
  23. package/lib/math.js.map +1 -0
  24. package/lib/path-api.js +140 -0
  25. package/lib/path-api.js.map +1 -0
  26. package/lib/path-runtime.js +361 -0
  27. package/lib/path-runtime.js.map +1 -0
  28. package/lib/path-tools.js +107 -0
  29. package/lib/path-tools.js.map +1 -0
  30. package/lib/path.js +179 -0
  31. package/lib/path.js.map +1 -0
  32. package/lib/plan-tools.js +89 -0
  33. package/lib/plan-tools.js.map +1 -0
  34. package/lib/plan.js +82 -0
  35. package/lib/plan.js.map +1 -0
  36. package/lib/project-session.js +48 -0
  37. package/lib/project-session.js.map +1 -0
  38. package/lib/prompt.js +4 -19
  39. package/lib/prompt.js.map +1 -1
  40. package/lib/review-sync.js +51 -0
  41. package/lib/review-sync.js.map +1 -0
  42. package/lib/review-tools.js +115 -0
  43. package/lib/review-tools.js.map +1 -0
  44. package/lib/review.js +103 -0
  45. package/lib/review.js.map +1 -0
  46. package/lib/source-schema.js +24 -0
  47. package/lib/source-schema.js.map +1 -0
  48. package/lib/source-tools.js +61 -0
  49. package/lib/source-tools.js.map +1 -0
  50. package/lib/sources.js +78 -0
  51. package/lib/sources.js.map +1 -0
  52. package/lib/state.js +148 -7
  53. package/lib/state.js.map +1 -1
  54. package/lib/tools.js +456 -40
  55. package/lib/tools.js.map +1 -1
  56. package/lib/types/api.d.ts +7 -0
  57. package/lib/types/api.d.ts.map +1 -1
  58. package/lib/types/block-types.d.ts +12 -0
  59. package/lib/types/block-types.d.ts.map +1 -0
  60. package/lib/types/contract.d.ts +33 -1
  61. package/lib/types/contract.d.ts.map +1 -1
  62. package/lib/types/diagnostics.d.ts +95 -0
  63. package/lib/types/diagnostics.d.ts.map +1 -0
  64. package/lib/types/handoff.d.ts +2 -2
  65. package/lib/types/index.d.ts +15 -9
  66. package/lib/types/index.d.ts.map +1 -1
  67. package/lib/types/insights.d.ts +57 -0
  68. package/lib/types/insights.d.ts.map +1 -0
  69. package/lib/types/interactions.d.ts +23 -0
  70. package/lib/types/interactions.d.ts.map +1 -0
  71. package/lib/types/journal.d.ts +57 -0
  72. package/lib/types/journal.d.ts.map +1 -0
  73. package/lib/types/lesson-markdown.d.ts +11 -0
  74. package/lib/types/lesson-markdown.d.ts.map +1 -0
  75. package/lib/types/lesson.d.ts +697 -5
  76. package/lib/types/lesson.d.ts.map +1 -1
  77. package/lib/types/math.d.ts +50 -0
  78. package/lib/types/math.d.ts.map +1 -0
  79. package/lib/types/path-api.d.ts +5 -0
  80. package/lib/types/path-api.d.ts.map +1 -0
  81. package/lib/types/path-runtime.d.ts +1558 -0
  82. package/lib/types/path-runtime.d.ts.map +1 -0
  83. package/lib/types/path-tools.d.ts +4 -0
  84. package/lib/types/path-tools.d.ts.map +1 -0
  85. package/lib/types/path.d.ts +744 -0
  86. package/lib/types/path.d.ts.map +1 -0
  87. package/lib/types/plan-tools.d.ts +4 -0
  88. package/lib/types/plan-tools.d.ts.map +1 -0
  89. package/lib/types/plan.d.ts +53 -0
  90. package/lib/types/plan.d.ts.map +1 -0
  91. package/lib/types/project-session.d.ts +33 -0
  92. package/lib/types/project-session.d.ts.map +1 -0
  93. package/lib/types/prompt.d.ts.map +1 -1
  94. package/lib/types/review-sync.d.ts +17 -0
  95. package/lib/types/review-sync.d.ts.map +1 -0
  96. package/lib/types/review-tools.d.ts +4 -0
  97. package/lib/types/review-tools.d.ts.map +1 -0
  98. package/lib/types/review.d.ts +65 -0
  99. package/lib/types/review.d.ts.map +1 -0
  100. package/lib/types/source-schema.d.ts +31 -0
  101. package/lib/types/source-schema.d.ts.map +1 -0
  102. package/lib/types/source-tools.d.ts +4 -0
  103. package/lib/types/source-tools.d.ts.map +1 -0
  104. package/lib/types/sources.d.ts +33 -0
  105. package/lib/types/sources.d.ts.map +1 -0
  106. package/lib/types/state.d.ts +516 -9
  107. package/lib/types/state.d.ts.map +1 -1
  108. package/lib/types/tools.d.ts +3 -1
  109. package/lib/types/tools.d.ts.map +1 -1
  110. package/lib/types/version.d.ts +11 -0
  111. package/lib/types/version.d.ts.map +1 -0
  112. package/lib/types/vocabulary.d.ts +2 -2
  113. package/lib/version.js +26 -0
  114. package/lib/version.js.map +1 -0
  115. package/package.json +20 -18
package/lib/api.js CHANGED
@@ -18,7 +18,13 @@
18
18
  */
19
19
  import { beginHandoff, handoffView, withFocusRecorded, withObserved, withPromptFailure, withPrompted, } from './handoff.js';
20
20
  import { focusPromptText } from './prompt.js';
21
+ import { resolveLearningSession } from './project-session.js';
22
+ import { buildDiagnostics } from './diagnostics.js';
21
23
  import { guarded } from './trust-fence.js';
24
+ import { handlePathApi } from './path-api.js';
25
+ import { buildIcs, sortTasks, taskView } from './plan.js';
26
+ import { buildInsights } from './insights.js';
27
+ import { REVIEW_RATINGS, dueCards, scheduleReview } from './review.js';
22
28
  /** Largest request body accepted, in bytes. */
23
29
  export const MAX_BODY_BYTES = 64 * 1024;
24
30
  /** Route prefix owned by this plugin. */
@@ -138,6 +144,12 @@ function libraryOf(state) {
138
144
  .listCourses()
139
145
  .map((course) => {
140
146
  const nodes = state.listNodes(course.id);
147
+ const learningPath = state.readPath(course.id);
148
+ const status = learningPath?.acceptedVersion != null
149
+ ? 'accepted'
150
+ : learningPath !== undefined && (learningPath.brief !== null || learningPath.assessment !== null || learningPath.curricula.length > 0)
151
+ ? 'active'
152
+ : 'legacy';
141
153
  return {
142
154
  id: course.id,
143
155
  title: course.title,
@@ -145,10 +157,20 @@ function libraryOf(state) {
145
157
  confirmed: nodes.filter((node) => node.state === 'confirmed').length,
146
158
  total: nodes.length,
147
159
  updatedAt: course.updatedAt,
160
+ status,
161
+ acceptedVersion: learningPath?.acceptedVersion ?? null,
148
162
  };
149
163
  })
150
164
  .sort((left, right) => right.updatedAt.localeCompare(left.updatedAt));
151
165
  }
166
+ function reviewView(card) {
167
+ return {
168
+ id: card.id, front: card.front, back: card.back, dueAt: card.dueAt,
169
+ ...(card.courseId === undefined ? {} : { courseId: card.courseId }),
170
+ ...(card.nodeId === undefined ? {} : { nodeId: card.nodeId }),
171
+ ...(card.sourceRefs === undefined ? {} : { sourceRefs: card.sourceRefs }),
172
+ };
173
+ }
152
174
  async function handleOverview(state, deps, sessionId, res) {
153
175
  // Availability belongs to the requesting conversation and can change while
154
176
  // the plugin stays loaded. A failed observation is inconclusive.
@@ -176,6 +198,7 @@ async function handleOverview(state, deps, sessionId, res) {
176
198
  handoff: null,
177
199
  teachingBrain,
178
200
  lessonCount: state.lessonCount(),
201
+ tasks: sortTasks(state.listTasks()).map(taskView),
179
202
  library,
180
203
  });
181
204
  return;
@@ -194,6 +217,7 @@ async function handleOverview(state, deps, sessionId, res) {
194
217
  // rebuilds the progress line instead of showing a blank wait.
195
218
  handoff: mine === undefined ? null : handoffFor(state, sessionId ?? '', mine.nodeId, Date.now()),
196
219
  lessonCount: state.lessonCount(),
220
+ tasks: sortTasks(state.listTasks()).map(taskView),
197
221
  library,
198
222
  });
199
223
  }
@@ -458,6 +482,60 @@ async function handleObserved(state, req, res) {
458
482
  await state.writeHandoff(withObserved(record, new Date().toISOString()));
459
483
  sendJson(res, 200, { ok: true, handoff: handoffFor(state, sessionId, nodeId, Date.now()) });
460
484
  }
485
+ /**
486
+ * `GET /preferences` — the learner's interface language, if one is saved.
487
+ *
488
+ * The value lives on the learner singleton rather than in the browser so it
489
+ * survives DSH restarts (the web port changes, and browser storage does not
490
+ * follow it) and applies to every conversation. It is a display preference
491
+ * only: nothing about the diagnosis, teaching or stored evidence changes.
492
+ */
493
+ function handlePreferences(state, res) {
494
+ const language = state.readLearner().preferredLanguage;
495
+ sendJson(res, 200, {
496
+ ok: true,
497
+ language: language === 'en' || language === 'zh' ? language : null,
498
+ });
499
+ }
500
+ /** One of the two languages this build ships copy for. */
501
+ const LANGUAGES = ['en', 'zh'];
502
+ /**
503
+ * `POST /preferences/language { language }` — remember the interface language.
504
+ *
505
+ * Validated here rather than trusted from the body: an unknown value would
506
+ * leave the UI without copy after the next load, so it is rejected instead of
507
+ * stored.
508
+ */
509
+ async function handleSetLanguage(state, req, res) {
510
+ const body = await readJsonBody(req);
511
+ if (body === undefined)
512
+ return fail(res, 400, 'bad-body');
513
+ const language = body.language;
514
+ if (typeof language !== 'string' || !LANGUAGES.includes(language)) {
515
+ return fail(res, 400, 'unsupported-language');
516
+ }
517
+ const now = new Date().toISOString();
518
+ await state.updateLearner({ preferredLanguage: language }, now);
519
+ sendJson(res, 200, { ok: true, language });
520
+ }
521
+ /**
522
+ * `GET /project/session?courseId=&sessionId=` — which conversation resumes a project.
523
+ *
524
+ * A project is shared, but where it was last studied is not. The browser asks
525
+ * this before "entering learning" so continuing a project opens the
526
+ * conversation that actually holds its focus/run instead of rebinding the
527
+ * project to whichever conversation happens to be on screen. Read-only: no
528
+ * selection is written by answering it.
529
+ */
530
+ function handleProjectSession(state, url, res) {
531
+ const courseId = url.searchParams.get('courseId');
532
+ if (courseId === null || courseId.length === 0)
533
+ return fail(res, 400, 'missing-course-id');
534
+ const resolved = resolveLearningSession(state, courseId, url.searchParams.get('sessionId') ?? undefined);
535
+ if (resolved === null)
536
+ return fail(res, 404, 'no-such-course');
537
+ sendJson(res, 200, { ok: true, sessionId: resolved.sessionId, reason: resolved.reason });
538
+ }
461
539
  /**
462
540
  * Build the request handler.
463
541
  *
@@ -470,6 +548,8 @@ export function createApiHandler(deps) {
470
548
  const method = req.method ?? 'GET';
471
549
  const url = new URL(req.url ?? '/', 'http://localhost');
472
550
  const route = url.pathname.slice(API_PREFIX.length) || '/';
551
+ if (await handlePathApi(route, req, res, deps, url))
552
+ return;
473
553
  // Read per request, not once: a conversation's project is its own, and the
474
554
  // route that changes it must not be answered from a value captured before.
475
555
  const asker = url.searchParams.get('sessionId') ?? undefined;
@@ -477,12 +557,104 @@ export function createApiHandler(deps) {
477
557
  if (method === 'GET' && route === '/overview') {
478
558
  return handleOverview(state, deps, url.searchParams.get('sessionId') ?? undefined, res);
479
559
  }
560
+ if (method === 'GET' && route === '/project/session')
561
+ return handleProjectSession(state, url, res);
562
+ if (method === 'GET' && route === '/diagnostics') {
563
+ if (deps.journal === undefined)
564
+ return fail(res, 503, 'diagnostics-disabled');
565
+ try {
566
+ sendJson(res, 200, await buildDiagnostics(state, deps.journal, { ...(deps.pluginVersion === undefined ? {} : { pluginVersion: deps.pluginVersion }) }));
567
+ }
568
+ catch (cause) {
569
+ deps.onEvent?.('diagnostics.error', { error: cause.message.slice(0, 240) });
570
+ return fail(res, 500, 'diagnostics-unavailable');
571
+ }
572
+ return;
573
+ }
480
574
  if (method === 'POST' && route === '/project')
481
575
  return await handleSelectProject(state, req, res);
482
576
  if (method === 'GET' && route === '/export')
483
577
  return handleExport(state, res);
484
578
  if (method === 'POST' && route === '/reset')
485
579
  return await handleReset(state, res);
580
+ if (method === 'POST' && route === '/plan/task') {
581
+ const input = await readJsonBody(req);
582
+ const taskId = input === undefined ? undefined : stringField(input, 'taskId');
583
+ if (taskId === undefined)
584
+ return fail(res, 400, 'missing-task-id');
585
+ const task = state.readTask(taskId);
586
+ if (task === undefined)
587
+ return fail(res, 404, 'no-such-task');
588
+ const status = input?.status === 'open' || input?.status === 'archived' ? input.status : 'done';
589
+ await state.writeTask({ ...task, status, updatedAt: new Date().toISOString() });
590
+ return sendJson(res, 200, { ok: true, tasks: sortTasks(state.listTasks()).map(taskView) });
591
+ }
592
+ if (method === 'GET' && route === '/insights') {
593
+ const courseId = url.searchParams.get('courseId') ?? course?.id;
594
+ if (courseId === undefined || courseId.length === 0)
595
+ return fail(res, 404, 'no-such-course');
596
+ const target = state.readCourse(courseId);
597
+ if (target === undefined)
598
+ return fail(res, 404, 'no-such-course');
599
+ return sendJson(res, 200, buildInsights(state, target, new Date().toISOString()));
600
+ }
601
+ if (method === 'POST' && route === '/review/undo') {
602
+ const input = await readJsonBody(req);
603
+ const cardId = input === undefined ? undefined : stringField(input, 'cardId');
604
+ if (cardId === undefined)
605
+ return fail(res, 400, 'missing-card-id');
606
+ const card = state.readReviewCard(cardId);
607
+ if (card === undefined)
608
+ return fail(res, 404, 'no-such-review-card');
609
+ const log = state.listReviewLog().filter((entry) => entry.cardId === cardId).sort((left, right) => left.at.localeCompare(right.at)).at(-1);
610
+ if (log === undefined || log.previousIntervalDays === undefined || log.previousEase === undefined || log.previousReps === undefined || log.previousLapses === undefined)
611
+ return fail(res, 409, 'cannot-undo');
612
+ const restored = {
613
+ ...card, dueAt: log.previousDue, intervalDays: log.previousIntervalDays, ease: log.previousEase,
614
+ reps: log.previousReps, lapses: log.previousLapses, updatedAt: new Date().toISOString(),
615
+ };
616
+ await state.writeReviewCard(restored);
617
+ await state.deleteReviewLog(log.id);
618
+ return sendJson(res, 200, { ok: true, card: reviewView(restored), remaining: dueCards(state.listReviewCards()).length });
619
+ }
620
+ if (method === 'GET' && route === '/review') {
621
+ const cards = dueCards(state.listReviewCards()).slice(0, 20).map(reviewView);
622
+ return sendJson(res, 200, { ok: true, cards, count: cards.length });
623
+ }
624
+ if (method === 'POST' && route === '/review/grade') {
625
+ const input = await readJsonBody(req);
626
+ const cardId = input === undefined ? undefined : stringField(input, 'cardId');
627
+ const rating = input === undefined ? undefined : stringField(input, 'rating');
628
+ if (cardId === undefined)
629
+ return fail(res, 400, 'missing-card-id');
630
+ if (rating === undefined || !REVIEW_RATINGS.includes(rating))
631
+ return fail(res, 400, 'invalid-rating');
632
+ const card = state.readReviewCard(cardId);
633
+ if (card === undefined)
634
+ return fail(res, 404, 'no-such-review-card');
635
+ const graded = scheduleReview(card, rating);
636
+ await state.writeReviewCard(graded.card);
637
+ await state.writeReviewLog(graded.log);
638
+ return sendJson(res, 200, { ok: true, card: reviewView(graded.card), remaining: dueCards(state.listReviewCards()).length });
639
+ }
640
+ if (method === 'GET' && route === '/plan/ics') {
641
+ const calendar = buildIcs(state.listTasks(), new Date());
642
+ res.statusCode = 200;
643
+ res.setHeader('content-type', 'text/calendar; charset=utf-8');
644
+ res.setHeader('content-disposition', 'attachment; filename="dsh-diagnostic-tutor-plan.ics"');
645
+ res.setHeader('cache-control', 'no-store');
646
+ res.end(calendar);
647
+ return;
648
+ }
649
+ if (method === 'GET' && route === '/source') {
650
+ const sourceId = url.searchParams.get('id');
651
+ if (sourceId === null || sourceId.length === 0)
652
+ return fail(res, 400, 'missing-id');
653
+ const source = state.readSource(sourceId);
654
+ if (source === undefined)
655
+ return fail(res, 404, 'no-such-source');
656
+ return sendJson(res, 200, { ok: true, source });
657
+ }
486
658
  if (method === 'GET' && route === '/node') {
487
659
  const nodeId = url.searchParams.get('id');
488
660
  if (nodeId === null || nodeId.length === 0)
@@ -501,6 +673,12 @@ export function createApiHandler(deps) {
501
673
  if (method === 'POST' && route === '/handoff/observed') {
502
674
  return handleObserved(state, req, res);
503
675
  }
676
+ if (method === 'GET' && route === '/preferences') {
677
+ return handlePreferences(state, res);
678
+ }
679
+ if (method === 'POST' && route === '/preferences/language') {
680
+ return await handleSetLanguage(state, req, res);
681
+ }
504
682
  return fail(res, method === 'GET' || method === 'POST' ? 404 : 405, 'no-such-route');
505
683
  };
506
684
  }
package/lib/api.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * The block-type names the current build understands.
3
+ *
4
+ * Kept in a zod-free module so the browser half can import the runtime guard
5
+ * without dragging the host's schema (and zod) into the single-file client
6
+ * bundle. `lesson.ts` owns validation; this module owns the shared vocabulary.
7
+ */
8
+ export const KNOWN_BLOCK_TYPE_NAMES = [
9
+ 'text',
10
+ 'example',
11
+ 'diagram',
12
+ 'check',
13
+ 'formula',
14
+ 'code',
15
+ 'quiz',
16
+ 'flashcard',
17
+ 'resource',
18
+ 'comparison',
19
+ ];
20
+ const KNOWN = new Set(KNOWN_BLOCK_TYPE_NAMES);
21
+ /** Narrow stored data to the renderer registry without importing the validation library. */
22
+ export function isKnownBlock(block) {
23
+ return KNOWN.has(block.type);
24
+ }
25
+ //# sourceMappingURL=block-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"block-types.js","sourceRoot":"","sources":["../src/block-types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,MAAM;IACN,SAAS;IACT,SAAS;IACT,OAAO;IACP,SAAS;IACT,MAAM;IACN,MAAM;IACN,WAAW;IACX,UAAU;IACV,YAAY;CACJ,CAAA;AAEV,MAAM,KAAK,GAAG,IAAI,GAAG,CAAS,sBAAsB,CAAC,CAAA;AAErD,4FAA4F;AAC5F,MAAM,UAAU,YAAY,CAAC,KAAkB;IAC7C,OAAO,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;AAC9B,CAAC"}