@happyvertical/smrt-education 0.57.45 → 0.57.47
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/AGENTS.md +5 -0
- package/README.md +7 -1
- package/agents/learner-service.md +31 -2
- package/agents/question-extraction.md +108 -0
- package/agents/submission-service.md +15 -0
- package/dist/chunks/{workbook-photo-service-DKgoUHeb.js → workbook-photo-service-B7Tujv__.js} +6494 -1153
- package/dist/chunks/workbook-photo-service-B7Tujv__.js.map +1 -0
- package/dist/collections.d.ts +4 -1
- package/dist/collections.d.ts.map +1 -1
- package/dist/course-authoring-contracts.d.ts +1 -1
- package/dist/course-authoring-contracts.d.ts.map +1 -1
- package/dist/index.d.ts +11 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1049 -4628
- package/dist/index.js.map +1 -1
- package/dist/ingestion.d.ts +2 -0
- package/dist/ingestion.d.ts.map +1 -1
- package/dist/ingestion.js +197 -2
- package/dist/ingestion.js.map +1 -1
- package/dist/learner-history.d.ts +50 -0
- package/dist/learner-history.d.ts.map +1 -0
- package/dist/learner-service.d.ts +78 -2
- package/dist/learner-service.d.ts.map +1 -1
- package/dist/manifest.json +4255 -1444
- package/dist/question-extraction-contracts.d.ts +231 -0
- package/dist/question-extraction-contracts.d.ts.map +1 -0
- package/dist/question-extraction-ingestion.d.ts +44 -0
- package/dist/question-extraction-ingestion.d.ts.map +1 -0
- package/dist/question-extraction-models.d.ts +56 -0
- package/dist/question-extraction-models.d.ts.map +1 -0
- package/dist/question-extraction-service.d.ts +71 -0
- package/dist/question-extraction-service.d.ts.map +1 -0
- package/dist/question-extraction.d.ts +317 -0
- package/dist/question-extraction.d.ts.map +1 -0
- package/dist/smrt-knowledge.json +961 -143
- package/dist/submission-service.d.ts +34 -1
- package/dist/submission-service.d.ts.map +1 -1
- package/dist/submissions.d.ts +25 -1
- package/dist/submissions.d.ts.map +1 -1
- package/package.json +10 -10
- package/dist/chunks/workbook-photo-service-DKgoUHeb.js.map +0 -1
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { SmrtCollection, SmrtObject, type SmrtSaveOptions } from '@happyvertical/smrt-core';
|
|
2
|
+
import type { EnrollmentStatus, LessonProgressStatus } from './learners.js';
|
|
3
|
+
/** Service operation that moved one lesson's progress status. */
|
|
4
|
+
export type LessonProgressTransitionKind = 'put-back' | 'start';
|
|
5
|
+
/**
|
|
6
|
+
* Append-only status history for one `LessonProgress` row. The progress row
|
|
7
|
+
* keeps one identity per enrollment and lesson, so earlier states live here.
|
|
8
|
+
* Written by `LearnerService` in the same transaction as the status change.
|
|
9
|
+
*/
|
|
10
|
+
export declare class LessonProgressTransition extends SmrtObject {
|
|
11
|
+
tenantId: string;
|
|
12
|
+
progressId: string;
|
|
13
|
+
enrollmentId: string;
|
|
14
|
+
learnerId: string;
|
|
15
|
+
lessonId: string;
|
|
16
|
+
fromStatus: LessonProgressStatus;
|
|
17
|
+
toStatus: LessonProgressStatus;
|
|
18
|
+
kind: LessonProgressTransitionKind;
|
|
19
|
+
actorUserId: string;
|
|
20
|
+
recordedAt: Date;
|
|
21
|
+
constructor(options?: Record<string, unknown>);
|
|
22
|
+
delete(): Promise<void>;
|
|
23
|
+
save(options?: SmrtSaveOptions): Promise<this>;
|
|
24
|
+
}
|
|
25
|
+
export declare class LessonProgressTransitionCollection extends SmrtCollection<LessonProgressTransition> {
|
|
26
|
+
static readonly _itemClass: typeof LessonProgressTransition;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Append-only audit of one enrollment status change made through
|
|
30
|
+
* `LearnerService.setEnrollmentStatus`: who changed it and the host policy
|
|
31
|
+
* setting relied on, in the same transaction as the change.
|
|
32
|
+
*/
|
|
33
|
+
export declare class EnrollmentStatusChange extends SmrtObject {
|
|
34
|
+
tenantId: string;
|
|
35
|
+
enrollmentId: string;
|
|
36
|
+
learnerId: string;
|
|
37
|
+
fromStatus: EnrollmentStatus;
|
|
38
|
+
toStatus: EnrollmentStatus;
|
|
39
|
+
actorUserId: string;
|
|
40
|
+
/** Host setting value that allowed this actor to change the status. */
|
|
41
|
+
policyBasis: string;
|
|
42
|
+
recordedAt: Date;
|
|
43
|
+
constructor(options?: Record<string, unknown>);
|
|
44
|
+
delete(): Promise<void>;
|
|
45
|
+
save(options?: SmrtSaveOptions): Promise<this>;
|
|
46
|
+
}
|
|
47
|
+
export declare class EnrollmentStatusChangeCollection extends SmrtCollection<EnrollmentStatusChange> {
|
|
48
|
+
static readonly _itemClass: typeof EnrollmentStatusChange;
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=learner-history.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"learner-history.d.ts","sourceRoot":"","sources":["../src/learner-history.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,cAAc,EACd,UAAU,EACV,KAAK,eAAe,EAErB,MAAM,0BAA0B,CAAC;AAElC,OAAO,KAAK,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAmC5E,iEAAiE;AACjE,MAAM,MAAM,4BAA4B,GAAG,UAAU,GAAG,OAAO,CAAC;AAEhE;;;;GAIG;AACH,qBAEa,wBAAyB,SAAQ,UAAU;IAC1C,QAAQ,SAAM;IACwB,UAAU,SAAM;IACpB,YAAY,SAAM;IACrB,SAAS,SAAM;IAChB,QAAQ,SAAM;IACxD,UAAU,EAAE,oBAAoB,CAAiB;IACjD,QAAQ,EAAE,oBAAoB,CAAiB;IAC/C,IAAI,EAAE,4BAA4B,CAAc;IAChD,WAAW,SAAM;IACjB,UAAU,OAAc;gBACZ,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM;IAIlC,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAGvB,IAAI,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;CAuB9D;AACD,qBAAa,kCAAmC,SAAQ,cAAc,CAAC,wBAAwB,CAAC;IAC9F,MAAM,CAAC,QAAQ,CAAC,UAAU,kCAA4B;CACvD;AAUD;;;;GAIG;AACH,qBAEa,sBAAuB,SAAQ,UAAU;IACxC,QAAQ,SAAM;IACoB,YAAY,SAAM;IACrB,SAAS,SAAM;IAC1D,UAAU,EAAE,gBAAgB,CAAa;IACzC,QAAQ,EAAE,gBAAgB,CAAa;IACvC,WAAW,SAAM;IACjB,uEAAuE;IACvE,WAAW,SAAM;IACjB,UAAU,OAAc;gBACZ,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM;IAIlC,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAGvB,IAAI,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;CAsB9D;AACD,qBAAa,gCAAiC,SAAQ,cAAc,CAAC,sBAAsB,CAAC;IAC1F,MAAM,CAAC,QAAQ,CAAC,UAAU,gCAA0B;CACrD"}
|
|
@@ -2,6 +2,7 @@ import type { DatabaseInterface } from '@happyvertical/sql';
|
|
|
2
2
|
import type { Course, Lesson } from './catalog.js';
|
|
3
3
|
import { type CatalogAuthorizer, type CatalogProjection } from './catalog-service.js';
|
|
4
4
|
import { type CourseDelegation } from './course-delegation.js';
|
|
5
|
+
import { type LessonProgressTransitionKind } from './learner-history.js';
|
|
5
6
|
import type { Curriculum, Enrollment, Learner, LessonProgress } from './learners.js';
|
|
6
7
|
/** One lesson row an enrollment may work on, with the course row it belongs to. */
|
|
7
8
|
export type EnrollmentLessonEntry = Readonly<{
|
|
@@ -64,7 +65,7 @@ export interface LearnerServiceOptions {
|
|
|
64
65
|
export type LearnerAuthorizer = (request: LearnerRequest & {
|
|
65
66
|
/** The active service executor; host policy reads must share its transaction. */
|
|
66
67
|
executor: DatabaseInterface;
|
|
67
|
-
action: 'education.learner.read' | 'education.learner.plan' | 'education.learner.start' | 'education.learner.submit' | 'education.learner.grade' | 'education.learner.packet' | 'education.learner.notes.read' | 'education.learner.notes.add' | 'education.learner.complete' | 'education.learner.respond' | 'education.learner.review-response' | 'education.learner.setup';
|
|
68
|
+
action: 'education.learner.read' | 'education.learner.plan' | 'education.learner.start' | 'education.learner.submit' | 'education.learner.grade' | 'education.learner.packet' | 'education.learner.notes.read' | 'education.learner.notes.add' | 'education.learner.complete' | 'education.learner.respond' | 'education.learner.review-response' | 'education.learner.setup' | 'education.progress.put-back' | 'education.enrollment.set-status' | 'education.learner.attest-own';
|
|
68
69
|
own: boolean;
|
|
69
70
|
relationshipTypeId?: string;
|
|
70
71
|
/** True only for a delegated assignment; `relationshipTypeId` is then undefined. */
|
|
@@ -81,6 +82,48 @@ export type LearnerAuthorizer = (request: LearnerRequest & {
|
|
|
81
82
|
export declare class LearnerAuthorizationError extends Error {
|
|
82
83
|
constructor();
|
|
83
84
|
}
|
|
85
|
+
/** Base for request-shape and state-conflict errors raised by learner workflows. */
|
|
86
|
+
export declare class LearnerValidationError extends Error {
|
|
87
|
+
constructor(message: string);
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* `putBackLesson` refused because the lesson is past the point a learner can
|
|
91
|
+
* take it back: submitted, under review, complete or skipped. Completion is
|
|
92
|
+
* undone only through the guardian paths.
|
|
93
|
+
*/
|
|
94
|
+
export declare class LessonPutBackError extends LearnerValidationError {
|
|
95
|
+
readonly status: LessonProgress['status'];
|
|
96
|
+
constructor(status: LessonProgress['status']);
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* Statuses `setEnrollmentStatus` may move an enrollment to, keyed by its
|
|
100
|
+
* current status. `completed` is reached only through the completion path.
|
|
101
|
+
*/
|
|
102
|
+
export declare const ENROLLMENT_STATUS_TRANSITIONS: Readonly<Record<Enrollment['status'], ReadonlyArray<Enrollment['status']>>>;
|
|
103
|
+
/** `setEnrollmentStatus` asked for a move the transition table does not allow. */
|
|
104
|
+
export declare class EnrollmentStatusTransitionError extends LearnerValidationError {
|
|
105
|
+
readonly from: Enrollment['status'];
|
|
106
|
+
readonly to: string;
|
|
107
|
+
constructor(from: Enrollment['status'], to: string);
|
|
108
|
+
}
|
|
109
|
+
/** A required history table has not been migrated on this host. */
|
|
110
|
+
export declare class LearnerHistoryUnavailableError extends Error {
|
|
111
|
+
readonly table: string;
|
|
112
|
+
constructor(table: string);
|
|
113
|
+
}
|
|
114
|
+
/** Result of `putBackLesson`; `changed` is false for an idempotent replay. */
|
|
115
|
+
export type PutBackLessonResult = Readonly<{
|
|
116
|
+
changed: boolean;
|
|
117
|
+
/** Null when the lesson never had progress (nothing to put back). */
|
|
118
|
+
progress: LessonProgressView | null;
|
|
119
|
+
}>;
|
|
120
|
+
/** Result of `setEnrollmentStatus`; `changed` is false when already in that status. */
|
|
121
|
+
export type SetEnrollmentStatusResult = Readonly<{
|
|
122
|
+
changed: boolean;
|
|
123
|
+
enrollment: EnrollmentView;
|
|
124
|
+
}>;
|
|
125
|
+
/** The host setting relied on: 1-200 characters, no control characters. */
|
|
126
|
+
export declare function requirePolicyBasis(value: unknown): string;
|
|
84
127
|
/** Service results contain data only, with no transaction-bound model handle. */
|
|
85
128
|
export type LearnerView = Readonly<{
|
|
86
129
|
id: string;
|
|
@@ -250,10 +293,43 @@ export declare class LearnerService {
|
|
|
250
293
|
requiresOnlineResource: boolean;
|
|
251
294
|
};
|
|
252
295
|
}>>;
|
|
253
|
-
/**
|
|
296
|
+
/** Appends one progress status change in the caller's transaction. */
|
|
297
|
+
protected recordProgressTransition(request: LearnerRequest, row: LessonProgress, from: LessonProgress['status'], kind: LessonProgressTransitionKind): Promise<void>;
|
|
298
|
+
/**
|
|
299
|
+
* Start once. Caller-supplied learner/status/score/counter patches are never
|
|
300
|
+
* applied. A lesson that was put back (`not_started`) moves to `in_progress`
|
|
301
|
+
* again, keeping its counters, score and first start time.
|
|
302
|
+
*/
|
|
254
303
|
startLesson(request: LearnerRequest & {
|
|
255
304
|
enrollmentId: string;
|
|
256
305
|
lessonId: string;
|
|
257
306
|
}): Promise<LessonProgressView>;
|
|
307
|
+
/**
|
|
308
|
+
* Takes a started lesson back to `not_started` for the learner or an
|
|
309
|
+
* authorized guardian (`education.progress.put-back`). Only `in_progress`
|
|
310
|
+
* progress moves; the earlier state is appended to the progress history.
|
|
311
|
+
* Counters, score, submissions, grades, workbook and evidence records are
|
|
312
|
+
* never touched. Already not started (or never started) is an idempotent
|
|
313
|
+
* no-op; submitted, review, complete and skipped lessons refuse with
|
|
314
|
+
* `LessonPutBackError`.
|
|
315
|
+
*/
|
|
316
|
+
putBackLesson(request: LearnerRequest & {
|
|
317
|
+
enrollmentId: string;
|
|
318
|
+
lessonId: string;
|
|
319
|
+
}): Promise<PutBackLessonResult>;
|
|
320
|
+
/**
|
|
321
|
+
* Moves an enrollment along `ENROLLMENT_STATUS_TRANSITIONS` under
|
|
322
|
+
* `education.enrollment.set-status`; the host decides whether a learner may
|
|
323
|
+
* act on their own enrollment. Records the actor and `policyBasis` in an
|
|
324
|
+
* `EnrollmentStatusChange`. The first activation sets `startedAt`. Progress,
|
|
325
|
+
* submissions and history are never touched. Requesting the current status
|
|
326
|
+
* is an idempotent no-op; any other move refuses with
|
|
327
|
+
* `EnrollmentStatusTransitionError`.
|
|
328
|
+
*/
|
|
329
|
+
setEnrollmentStatus(request: LearnerRequest & {
|
|
330
|
+
enrollmentId: string;
|
|
331
|
+
status: Enrollment['status'];
|
|
332
|
+
policyBasis: string;
|
|
333
|
+
}): Promise<SetEnrollmentStatusResult>;
|
|
258
334
|
}
|
|
259
335
|
//# sourceMappingURL=learner-service.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"learner-service.d.ts","sourceRoot":"","sources":["../src/learner-service.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EAEvB,MAAM,sBAAsB,CAAC;AAgB9B,OAAO,EAAE,KAAK,gBAAgB,EAAkB,MAAM,wBAAwB,CAAC;AAK/E,OAAO,KAAK,EACV,UAAU,EACV,UAAU,EACV,OAAO,EACP,cAAc,EACf,MAAM,eAAe,CAAC;AAIvB,mFAAmF;AACnF,MAAM,MAAM,qBAAqB,GAAG,QAAQ,CAAC;IAC3C,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC,CAAC;AACH,oFAAoF;AACpF,MAAM,MAAM,qBAAqB,GAAG,QAAQ,CAAC;IAC3C,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,aAAa,CAAC,qBAAqB,CAAC,CAAC;CAC/C,CAAC,CAAC;AAEH,uEAAuE;AACvE,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,sBAAsB,CAAC,EAAE,MAAM,CAAC;CACjC;AAED;;;;;GAKG;AACH,MAAM,MAAM,wBAAwB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;AAEjE,iFAAiF;AACjF,MAAM,WAAW,yBAAyB;IACxC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;CACvB;AACD,MAAM,MAAM,kBAAkB,GAAG,QAAQ,CAAC;IAAE,UAAU,EAAE,OAAO,CAAA;CAAE,CAAC,CAAC;AAEnE,+EAA+E;AAC/E,MAAM,MAAM,yBAAyB,GACjC,OAAO,GACP;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAEzD;;;;GAIG;AACH,MAAM,MAAM,yBAAyB,GAAG,CACtC,QAAQ,EAAE,iBAAiB,EAC3B,OAAO,EAAE;IACP,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,wBAAwB,EAAE,MAAM,CAAC;IACjC,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,0EAA0E;IAC1E,SAAS,CAAC,EAAE,mBAAmB,GAAG,QAAQ,CAAC;CAC5C,KACE,yBAAyB,GAAG,OAAO,CAAC,yBAAyB,CAAC,CAAC;AAEpE,MAAM,WAAW,qBAAqB;IACpC,gBAAgB,CAAC,EAAE,yBAAyB,CAAC;CAC9C;AAED,gFAAgF;AAChF,MAAM,MAAM,iBAAiB,GAAG,CAC9B,OAAO,EAAE,cAAc,GAAG;IACxB,iFAAiF;IACjF,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,MAAM,EACF,wBAAwB,GACxB,wBAAwB,GACxB,yBAAyB,GACzB,0BAA0B,GAC1B,yBAAyB,GACzB,0BAA0B,GAC1B,8BAA8B,GAC9B,6BAA6B,GAC7B,4BAA4B,GAC5B,2BAA2B,GAC3B,mCAAmC,GACnC,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"learner-service.d.ts","sourceRoot":"","sources":["../src/learner-service.ts"],"names":[],"mappings":"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"}
|