@happyvertical/smrt-education 0.57.33 → 0.57.35

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 (55) hide show
  1. package/AGENTS.md +8 -1
  2. package/README.md +117 -13
  3. package/agents/catalog-sync.md +46 -0
  4. package/agents/photo-intake.md +249 -0
  5. package/agents/workbook-service.md +355 -0
  6. package/agents/workbook-test-matrix.md +74 -0
  7. package/dist/catalog-acquisition-service.d.ts.map +1 -1
  8. package/dist/catalog-capability.d.ts +21 -0
  9. package/dist/catalog-capability.d.ts.map +1 -0
  10. package/dist/catalog-contracts.d.ts +40 -0
  11. package/dist/catalog-contracts.d.ts.map +1 -1
  12. package/dist/catalog-database-sync-store.d.ts.map +1 -1
  13. package/dist/catalog-models.d.ts +5 -1
  14. package/dist/catalog-models.d.ts.map +1 -1
  15. package/dist/catalog-read-service.d.ts +2 -1
  16. package/dist/catalog-read-service.d.ts.map +1 -1
  17. package/dist/catalog-service.d.ts +5 -0
  18. package/dist/catalog-service.d.ts.map +1 -1
  19. package/dist/chunks/workbook-photo-service-1wcnf-Xf.js +27359 -0
  20. package/dist/chunks/workbook-photo-service-1wcnf-Xf.js.map +1 -0
  21. package/dist/index.d.ts +11 -2
  22. package/dist/index.d.ts.map +1 -1
  23. package/dist/index.js +339 -24864
  24. package/dist/index.js.map +1 -1
  25. package/dist/ingestion.d.ts +37 -0
  26. package/dist/ingestion.d.ts.map +1 -1
  27. package/dist/ingestion.js +829 -20
  28. package/dist/ingestion.js.map +1 -1
  29. package/dist/learner-service.d.ts +15 -0
  30. package/dist/learner-service.d.ts.map +1 -1
  31. package/dist/manifest.json +4735 -6
  32. package/dist/smrt-knowledge.json +1760 -26
  33. package/dist/sources/public-illustrative-mathematics-adapter.d.ts.map +1 -1
  34. package/dist/sources/public-illustrative-mathematics-parser.d.ts.map +1 -1
  35. package/dist/submission-service.d.ts +38 -11
  36. package/dist/submission-service.d.ts.map +1 -1
  37. package/dist/workbook-answer-regions.d.ts +11 -0
  38. package/dist/workbook-answer-regions.d.ts.map +1 -0
  39. package/dist/workbook-contracts.d.ts +224 -0
  40. package/dist/workbook-contracts.d.ts.map +1 -0
  41. package/dist/workbook-layout.d.ts +13 -0
  42. package/dist/workbook-layout.d.ts.map +1 -0
  43. package/dist/workbook-models.d.ts +129 -0
  44. package/dist/workbook-models.d.ts.map +1 -0
  45. package/dist/workbook-photo-contracts.d.ts +56 -0
  46. package/dist/workbook-photo-contracts.d.ts.map +1 -0
  47. package/dist/workbook-photo-ingestion.d.ts +70 -0
  48. package/dist/workbook-photo-ingestion.d.ts.map +1 -0
  49. package/dist/workbook-photo-models.d.ts +63 -0
  50. package/dist/workbook-photo-models.d.ts.map +1 -0
  51. package/dist/workbook-photo-service.d.ts +72 -0
  52. package/dist/workbook-photo-service.d.ts.map +1 -0
  53. package/dist/workbook-service.d.ts +158 -0
  54. package/dist/workbook-service.d.ts.map +1 -0
  55. package/package.json +8 -8
@@ -1,4 +1,5 @@
1
1
  import type { TenantCollection } from '@happyvertical/smrt-users';
2
+ import type { DatabaseInterface } from '@happyvertical/sql';
2
3
  import type { Course, CourseSection, Lesson } from './catalog.js';
3
4
  import type { CourseCollection, CourseSectionCollection, LessonAssetCollection, LessonCollection } from './collections.js';
4
5
  import type { LessonAsset } from './lesson-assets.js';
@@ -6,6 +7,8 @@ import type { LessonAsset } from './lesson-assets.js';
6
7
  export type TenantCatalogReadScope = TenantCollection['withTenantCatalogReadScope'];
7
8
  export type CatalogActorContext = Parameters<Parameters<TenantCatalogReadScope>[0]['authorize']>[0];
8
9
  export type CatalogAuthorizer = (request: Omit<CatalogActorContext, 'mode'> & {
10
+ /** Actual collection executor, including the current education transaction. */
11
+ executor: DatabaseInterface;
9
12
  action: 'education.catalog.read' | 'education.catalog.read-private' | 'education.catalog.answer-key.read' | 'education.catalog.manage';
10
13
  }) => boolean | Promise<boolean>;
11
14
  export interface CatalogReadRequest {
@@ -40,6 +43,8 @@ export declare class CatalogService {
40
43
  private readonly tenants;
41
44
  private readonly authorize;
42
45
  constructor(courses: CourseCollection, sections: CourseSectionCollection, lessons: LessonCollection, assets: LessonAssetCollection, tenants: Pick<TenantCollection, 'withTenantCatalogReadScope'>, authorize: CatalogAuthorizer);
46
+ private executor;
47
+ private authorizeInScope;
43
48
  findVisible(request: CatalogReadRequest): Promise<Course[]>;
44
49
  /** Project one already-visible course without exposing answer-key assets by default. */
45
50
  projectCourse(request: CatalogReadRequest & {
@@ -1 +1 @@
1
- {"version":3,"file":"catalog-service.d.ts","sourceRoot":"","sources":["../src/catalog-service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAClE,OAAO,KAAK,EACV,gBAAgB,EAChB,uBAAuB,EACvB,qBAAqB,EACrB,gBAAgB,EACjB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEtD,iFAAiF;AACjF,MAAM,MAAM,sBAAsB,GAChC,gBAAgB,CAAC,4BAA4B,CAAC,CAAC;AACjD,MAAM,MAAM,mBAAmB,GAAG,UAAU,CAC1C,UAAU,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CACnD,CAAC,CAAC,CAAC,CAAC;AAEL,MAAM,MAAM,iBAAiB,GAAG,CAC9B,OAAO,EAAE,IAAI,CAAC,mBAAmB,EAAE,MAAM,CAAC,GAAG;IAC3C,MAAM,EACF,wBAAwB,GACxB,gCAAgC,GAChC,mCAAmC,GACnC,0BAA0B,CAAC;CAChC,KACE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AAEhC,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,OAAO,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;CAClE;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,KAAK,CAAC;QACd,OAAO,EAAE,aAAa,CAAC;QACvB,OAAO,EAAE,KAAK,CAAC;YAAE,MAAM,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,WAAW,EAAE,CAAA;SAAE,CAAC,CAAC;KAC3D,CAAC,CAAC;CACJ;AAED,qBAAa,yBAA0B,SAAQ,KAAK;;CAKnD;AAUD;;;;GAIG;AACH,qBAAa,cAAc;IAEvB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAIxB,OAAO,CAAC,QAAQ,CAAC,SAAS;gBART,OAAO,EAAE,gBAAgB,EACzB,QAAQ,EAAE,uBAAuB,EACjC,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,qBAAqB,EAC7B,OAAO,EAAE,IAAI,CAC5B,gBAAgB,EAChB,4BAA4B,CAC7B,EACgB,SAAS,EAAE,iBAAiB;IAEzC,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAuDjE,wFAAwF;IAClF,aAAa,CACjB,OAAO,EAAE,kBAAkB,GAAG;QAC5B,QAAQ,EAAE,MAAM,CAAC;QACjB,iBAAiB,CAAC,EAAE,OAAO,CAAC;KAC7B,GACA,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC;CA+DrC"}
1
+ {"version":3,"file":"catalog-service.d.ts","sourceRoot":"","sources":["../src/catalog-service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAClE,OAAO,KAAK,EACV,gBAAgB,EAChB,uBAAuB,EACvB,qBAAqB,EACrB,gBAAgB,EACjB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEtD,iFAAiF;AACjF,MAAM,MAAM,sBAAsB,GAChC,gBAAgB,CAAC,4BAA4B,CAAC,CAAC;AACjD,MAAM,MAAM,mBAAmB,GAAG,UAAU,CAC1C,UAAU,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CACnD,CAAC,CAAC,CAAC,CAAC;AAEL,MAAM,MAAM,iBAAiB,GAAG,CAC9B,OAAO,EAAE,IAAI,CAAC,mBAAmB,EAAE,MAAM,CAAC,GAAG;IAC3C,+EAA+E;IAC/E,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,MAAM,EACF,wBAAwB,GACxB,gCAAgC,GAChC,mCAAmC,GACnC,0BAA0B,CAAC;CAChC,KACE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AAEhC,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,OAAO,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;CAClE;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,KAAK,CAAC;QACd,OAAO,EAAE,aAAa,CAAC;QACvB,OAAO,EAAE,KAAK,CAAC;YAAE,MAAM,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,WAAW,EAAE,CAAA;SAAE,CAAC,CAAC;KAC3D,CAAC,CAAC;CACJ;AAED,qBAAa,yBAA0B,SAAQ,KAAK;;CAKnD;AAUD;;;;GAIG;AACH,qBAAa,cAAc;IAEvB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAIxB,OAAO,CAAC,QAAQ,CAAC,SAAS;gBART,OAAO,EAAE,gBAAgB,EACzB,QAAQ,EAAE,uBAAuB,EACjC,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,qBAAqB,EAC7B,OAAO,EAAE,IAAI,CAC5B,gBAAgB,EAChB,4BAA4B,CAC7B,EACgB,SAAS,EAAE,iBAAiB;IAE/C,OAAO,CAAC,QAAQ;IAWhB,OAAO,CAAC,gBAAgB;IAKlB,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAuDjE,wFAAwF;IAClF,aAAa,CACjB,OAAO,EAAE,kBAAkB,GAAG;QAC5B,QAAQ,EAAE,MAAM,CAAC;QACjB,iBAAiB,CAAC,EAAE,OAAO,CAAC;KAC7B,GACA,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC;CA+DrC"}