@contractspec/example.learning-journey-duo-drills 1.46.2 → 1.47.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.
@@ -1,5 +1,5 @@
1
1
  $ tsdown
2
- ℹ tsdown v0.18.4 powered by rolldown v1.0.0-beta.57
2
+ ℹ tsdown v0.19.0 powered by rolldown v1.0.0-beta.59
3
3
  ℹ config file: /home/runner/work/contractspec/contractspec/packages/examples/learning-journey-duo-drills/tsdown.config.js
4
4
  ℹ entry: src/example.ts, src/index.ts, src/track.ts, src/docs/duo-drills.docblock.ts, src/docs/index.ts
5
5
  ℹ target: esnext
@@ -8,18 +8,18 @@ $ tsdown
8
8
  ℹ Cleaning 16 files
9
9
  ℹ dist/track.js 1.71 kB │ gzip: 0.74 kB
10
10
  ℹ dist/docs/duo-drills.docblock.js 1.43 kB │ gzip: 0.79 kB
11
- ℹ dist/example.js 0.92 kB │ gzip: 0.51 kB
11
+ ℹ dist/example.js 0.99 kB │ gzip: 0.54 kB
12
12
  ℹ dist/index.js 0.22 kB │ gzip: 0.13 kB
13
13
  ℹ dist/docs/index.js 0.04 kB │ gzip: 0.06 kB
14
- ℹ dist/track.js.map 2.83 kB │ gzip: 1.08 kB
14
+ ℹ dist/track.js.map 2.73 kB │ gzip: 1.08 kB
15
15
  ℹ dist/docs/duo-drills.docblock.js.map 1.84 kB │ gzip: 0.97 kB
16
- ℹ dist/example.js.map 1.44 kB │ gzip: 0.73 kB
16
+ ℹ dist/example.js.map 1.43 kB │ gzip: 0.74 kB
17
+ ℹ dist/example.d.ts.map 0.14 kB │ gzip: 0.13 kB
17
18
  ℹ dist/track.d.ts.map 0.13 kB │ gzip: 0.13 kB
18
- ℹ dist/example.d.ts.map 0.12 kB │ gzip: 0.12 kB
19
19
  ℹ dist/track.d.ts 0.34 kB │ gzip: 0.20 kB
20
- ℹ dist/example.d.ts 0.20 kB │ gzip: 0.16 kB
20
+ ℹ dist/example.d.ts 0.25 kB │ gzip: 0.17 kB
21
21
  ℹ dist/index.d.ts 0.16 kB │ gzip: 0.10 kB
22
22
  ℹ dist/docs/duo-drills.docblock.d.ts 0.01 kB │ gzip: 0.03 kB
23
23
  ℹ dist/docs/index.d.ts 0.01 kB │ gzip: 0.03 kB
24
- ℹ 15 files, total: 11.41 kB
25
- ✔ Build complete in 17453ms
24
+ ℹ 15 files, total: 11.44 kB
25
+ ✔ Build complete in 19134ms
@@ -1,7 +1,7 @@
1
1
  $ bun build:types && bun build:bundle
2
2
  $ tsc --noEmit
3
3
  $ tsdown
4
- ℹ tsdown v0.18.4 powered by rolldown v1.0.0-beta.57
4
+ ℹ tsdown v0.19.0 powered by rolldown v1.0.0-beta.59
5
5
  ℹ config file: /home/runner/work/contractspec/contractspec/packages/examples/learning-journey-duo-drills/tsdown.config.js
6
6
  ℹ entry: src/example.ts, src/index.ts, src/track.ts, src/docs/duo-drills.docblock.ts, src/docs/index.ts
7
7
  ℹ target: esnext
@@ -9,18 +9,18 @@ $ tsdown
9
9
  ℹ Build start
10
10
  ℹ dist/track.js 1.71 kB │ gzip: 0.74 kB
11
11
  ℹ dist/docs/duo-drills.docblock.js 1.43 kB │ gzip: 0.79 kB
12
- ℹ dist/example.js 0.92 kB │ gzip: 0.51 kB
12
+ ℹ dist/example.js 0.99 kB │ gzip: 0.54 kB
13
13
  ℹ dist/index.js 0.22 kB │ gzip: 0.13 kB
14
14
  ℹ dist/docs/index.js 0.04 kB │ gzip: 0.06 kB
15
- ℹ dist/track.js.map 2.83 kB │ gzip: 1.08 kB
15
+ ℹ dist/track.js.map 2.73 kB │ gzip: 1.08 kB
16
16
  ℹ dist/docs/duo-drills.docblock.js.map 1.84 kB │ gzip: 0.97 kB
17
- ℹ dist/example.js.map 1.44 kB │ gzip: 0.73 kB
17
+ ℹ dist/example.js.map 1.43 kB │ gzip: 0.74 kB
18
+ ℹ dist/example.d.ts.map 0.14 kB │ gzip: 0.13 kB
18
19
  ℹ dist/track.d.ts.map 0.13 kB │ gzip: 0.13 kB
19
- ℹ dist/example.d.ts.map 0.12 kB │ gzip: 0.12 kB
20
20
  ℹ dist/track.d.ts 0.34 kB │ gzip: 0.20 kB
21
- ℹ dist/example.d.ts 0.20 kB │ gzip: 0.16 kB
21
+ ℹ dist/example.d.ts 0.25 kB │ gzip: 0.17 kB
22
22
  ℹ dist/index.d.ts 0.16 kB │ gzip: 0.10 kB
23
23
  ℹ dist/docs/duo-drills.docblock.d.ts 0.01 kB │ gzip: 0.03 kB
24
24
  ℹ dist/docs/index.d.ts 0.01 kB │ gzip: 0.03 kB
25
- ℹ 15 files, total: 11.41 kB
26
- ✔ Build complete in 19126ms
25
+ ℹ 15 files, total: 11.44 kB
26
+ ✔ Build complete in 21139ms
package/CHANGELOG.md CHANGED
@@ -1,5 +1,27 @@
1
1
  # @contractspec/example.learning-journey-duo-drills
2
2
 
3
+ ## 1.47.0
4
+
5
+ ### Minor Changes
6
+
7
+ - caf8701: feat: add cli vibe command to run workflow
8
+ - c69b849: feat: add api web services (mcp & website)
9
+ - 42b8d78: feat: add cli `contractspec vibe` workflow to simplify usage
10
+ - fd38e85: feat: auto-fix contractspec issues
11
+
12
+ ### Patch Changes
13
+
14
+ - e7ded36: feat: improve stability (adding ts-morph)
15
+ - c231a8b: test: improve workspace stability
16
+ - Updated dependencies [e7ded36]
17
+ - Updated dependencies [caf8701]
18
+ - Updated dependencies [c69b849]
19
+ - Updated dependencies [c231a8b]
20
+ - Updated dependencies [42b8d78]
21
+ - Updated dependencies [fd38e85]
22
+ - @contractspec/module.learning-journey@1.47.0
23
+ - @contractspec/lib.contracts@1.47.0
24
+
3
25
  ## 1.46.2
4
26
 
5
27
  ### Patch Changes
package/dist/example.d.ts CHANGED
@@ -1,7 +1,7 @@
1
- import { ExampleSpec } from "@contractspec/lib.contracts";
1
+ import * as _contractspec_lib_contracts0 from "@contractspec/lib.contracts";
2
2
 
3
3
  //#region src/example.d.ts
4
- declare const example: ExampleSpec;
4
+ declare const example: _contractspec_lib_contracts0.ExampleSpec;
5
5
  //#endregion
6
6
  export { example as default };
7
7
  //# sourceMappingURL=example.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"example.d.ts","names":[],"sources":["../src/example.ts"],"sourcesContent":[],"mappings":";;;cAEM,SAAS"}
1
+ {"version":3,"file":"example.d.ts","names":[],"sources":["../src/example.ts"],"sourcesContent":[],"mappings":";;;cAEM,SA0BJ,4BAAA,CA1BW"}
package/dist/example.js CHANGED
@@ -1,5 +1,7 @@
1
+ import { defineExample } from "@contractspec/lib.contracts";
2
+
1
3
  //#region src/example.ts
2
- const example = {
4
+ const example = defineExample({
3
5
  meta: {
4
6
  key: "learning-journey-duo-drills",
5
7
  version: "1.0.0",
@@ -33,7 +35,7 @@ const example = {
33
35
  },
34
36
  mcp: { enabled: true }
35
37
  }
36
- };
38
+ });
37
39
  var example_default = example;
38
40
 
39
41
  //#endregion
@@ -1 +1 @@
1
- {"version":3,"file":"example.js","names":["example: ExampleSpec"],"sources":["../src/example.ts"],"sourcesContent":["import type { ExampleSpec } from '@contractspec/lib.contracts';\n\nconst example: ExampleSpec = {\n meta: {\n key: 'learning-journey-duo-drills',\n version: '1.0.0',\n title: 'Learning Journey — Duo Drills',\n description:\n 'Short drill/SRS example with XP and streak hooks for language, finance, or ContractSpec concept drills.',\n kind: 'template',\n visibility: 'public',\n stability: 'experimental',\n owners: ['@platform.core'],\n tags: ['learning', 'drills', 'srs', 'xp'],\n },\n docs: {\n rootDocId: 'docs.learning-journey.duo-drills',\n },\n entrypoints: {\n packageName: '@contractspec/example.learning-journey-duo-drills',\n docs: './docs',\n },\n surfaces: {\n templates: true,\n sandbox: { enabled: true, modes: ['playground', 'markdown'] },\n studio: { enabled: true, installable: true },\n mcp: { enabled: true },\n },\n};\n\nexport default example;\n"],"mappings":";AAEA,MAAMA,UAAuB;CAC3B,MAAM;EACJ,KAAK;EACL,SAAS;EACT,OAAO;EACP,aACE;EACF,MAAM;EACN,YAAY;EACZ,WAAW;EACX,QAAQ,CAAC,iBAAiB;EAC1B,MAAM;GAAC;GAAY;GAAU;GAAO;GAAK;EAC1C;CACD,MAAM,EACJ,WAAW,oCACZ;CACD,aAAa;EACX,aAAa;EACb,MAAM;EACP;CACD,UAAU;EACR,WAAW;EACX,SAAS;GAAE,SAAS;GAAM,OAAO,CAAC,cAAc,WAAW;GAAE;EAC7D,QAAQ;GAAE,SAAS;GAAM,aAAa;GAAM;EAC5C,KAAK,EAAE,SAAS,MAAM;EACvB;CACF;AAED,sBAAe"}
1
+ {"version":3,"file":"example.js","names":[],"sources":["../src/example.ts"],"sourcesContent":["import { defineExample } from '@contractspec/lib.contracts';\n\nconst example = defineExample({\n meta: {\n key: 'learning-journey-duo-drills',\n version: '1.0.0',\n title: 'Learning Journey — Duo Drills',\n description:\n 'Short drill/SRS example with XP and streak hooks for language, finance, or ContractSpec concept drills.',\n kind: 'template',\n visibility: 'public',\n stability: 'experimental',\n owners: ['@platform.core'],\n tags: ['learning', 'drills', 'srs', 'xp'],\n },\n docs: {\n rootDocId: 'docs.learning-journey.duo-drills',\n },\n entrypoints: {\n packageName: '@contractspec/example.learning-journey-duo-drills',\n docs: './docs',\n },\n surfaces: {\n templates: true,\n sandbox: { enabled: true, modes: ['playground', 'markdown'] },\n studio: { enabled: true, installable: true },\n mcp: { enabled: true },\n },\n});\n\nexport default example;\n"],"mappings":";;;AAEA,MAAM,UAAU,cAAc;CAC5B,MAAM;EACJ,KAAK;EACL,SAAS;EACT,OAAO;EACP,aACE;EACF,MAAM;EACN,YAAY;EACZ,WAAW;EACX,QAAQ,CAAC,iBAAiB;EAC1B,MAAM;GAAC;GAAY;GAAU;GAAO;GAAK;EAC1C;CACD,MAAM,EACJ,WAAW,oCACZ;CACD,aAAa;EACX,aAAa;EACb,MAAM;EACP;CACD,UAAU;EACR,WAAW;EACX,SAAS;GAAE,SAAS;GAAM,OAAO,CAAC,cAAc,WAAW;GAAE;EAC7D,QAAQ;GAAE,SAAS;GAAM,aAAa;GAAM;EAC5C,KAAK,EAAE,SAAS,MAAM;EACvB;CACF,CAAC;AAEF,sBAAe"}
package/dist/track.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"track.js","names":["drillsLanguageBasicsTrack: LearningJourneyTrackSpec","drillTracks: LearningJourneyTrackSpec[]"],"sources":["../src/track.ts"],"sourcesContent":["import type { LearningJourneyTrackSpec } from '@contractspec/module.learning-journey/track-spec';\n\nexport const drillsLanguageBasicsTrack: LearningJourneyTrackSpec = {\n id: 'drills_language_basics',\n name: 'Language Basics Drills',\n description:\n 'Short SRS-driven drills to master a first skill, modeled after Duolingo-style sessions.',\n targetUserSegment: 'learner',\n targetRole: 'individual',\n totalXp: 50,\n completionRewards: { xpBonus: 25 },\n steps: [\n {\n id: 'complete_first_session',\n title: 'Complete first drill session',\n description: 'Finish a drill session to get started.',\n order: 1,\n completion: {\n kind: 'event',\n eventName: 'drill.session.completed',\n },\n xpReward: 20,\n metadata: { surface: 'drills' },\n },\n {\n id: 'reach_accuracy_threshold',\n title: 'Hit high accuracy in sessions',\n description: 'Achieve three high-accuracy sessions to build confidence.',\n order: 2,\n completion: {\n kind: 'count',\n eventName: 'drill.session.completed',\n atLeast: 3,\n payloadFilter: { accuracyBucket: 'high' },\n },\n xpReward: 30,\n metadata: { metric: 'accuracy', target: '>=85%' },\n },\n {\n id: 'unlock_new_skill',\n title: 'Master core cards in first skill',\n description:\n 'Reach mastery on at least five cards in the first skill to unlock the next one.',\n order: 3,\n completion: {\n kind: 'srs_mastery',\n eventName: 'drill.card.mastered',\n minimumMastery: 0.8,\n requiredCount: 5,\n skillIdField: 'skillId',\n masteryField: 'mastery',\n payloadFilter: { skillId: 'language_basics' },\n },\n xpReward: 40,\n metadata: { surface: 'srs', skill: 'language_basics' },\n },\n ],\n};\n\nexport const drillTracks: LearningJourneyTrackSpec[] = [\n drillsLanguageBasicsTrack,\n];\n"],"mappings":";AAEA,MAAaA,4BAAsD;CACjE,IAAI;CACJ,MAAM;CACN,aACE;CACF,mBAAmB;CACnB,YAAY;CACZ,SAAS;CACT,mBAAmB,EAAE,SAAS,IAAI;CAClC,OAAO;EACL;GACE,IAAI;GACJ,OAAO;GACP,aAAa;GACb,OAAO;GACP,YAAY;IACV,MAAM;IACN,WAAW;IACZ;GACD,UAAU;GACV,UAAU,EAAE,SAAS,UAAU;GAChC;EACD;GACE,IAAI;GACJ,OAAO;GACP,aAAa;GACb,OAAO;GACP,YAAY;IACV,MAAM;IACN,WAAW;IACX,SAAS;IACT,eAAe,EAAE,gBAAgB,QAAQ;IAC1C;GACD,UAAU;GACV,UAAU;IAAE,QAAQ;IAAY,QAAQ;IAAS;GAClD;EACD;GACE,IAAI;GACJ,OAAO;GACP,aACE;GACF,OAAO;GACP,YAAY;IACV,MAAM;IACN,WAAW;IACX,gBAAgB;IAChB,eAAe;IACf,cAAc;IACd,cAAc;IACd,eAAe,EAAE,SAAS,mBAAmB;IAC9C;GACD,UAAU;GACV,UAAU;IAAE,SAAS;IAAO,OAAO;IAAmB;GACvD;EACF;CACF;AAED,MAAaC,cAA0C,CACrD,0BACD"}
1
+ {"version":3,"file":"track.js","names":[],"sources":["../src/track.ts"],"sourcesContent":["import type { LearningJourneyTrackSpec } from '@contractspec/module.learning-journey/track-spec';\n\nexport const drillsLanguageBasicsTrack: LearningJourneyTrackSpec = {\n id: 'drills_language_basics',\n name: 'Language Basics Drills',\n description:\n 'Short SRS-driven drills to master a first skill, modeled after Duolingo-style sessions.',\n targetUserSegment: 'learner',\n targetRole: 'individual',\n totalXp: 50,\n completionRewards: { xpBonus: 25 },\n steps: [\n {\n id: 'complete_first_session',\n title: 'Complete first drill session',\n description: 'Finish a drill session to get started.',\n order: 1,\n completion: {\n kind: 'event',\n eventName: 'drill.session.completed',\n },\n xpReward: 20,\n metadata: { surface: 'drills' },\n },\n {\n id: 'reach_accuracy_threshold',\n title: 'Hit high accuracy in sessions',\n description: 'Achieve three high-accuracy sessions to build confidence.',\n order: 2,\n completion: {\n kind: 'count',\n eventName: 'drill.session.completed',\n atLeast: 3,\n payloadFilter: { accuracyBucket: 'high' },\n },\n xpReward: 30,\n metadata: { metric: 'accuracy', target: '>=85%' },\n },\n {\n id: 'unlock_new_skill',\n title: 'Master core cards in first skill',\n description:\n 'Reach mastery on at least five cards in the first skill to unlock the next one.',\n order: 3,\n completion: {\n kind: 'srs_mastery',\n eventName: 'drill.card.mastered',\n minimumMastery: 0.8,\n requiredCount: 5,\n skillIdField: 'skillId',\n masteryField: 'mastery',\n payloadFilter: { skillId: 'language_basics' },\n },\n xpReward: 40,\n metadata: { surface: 'srs', skill: 'language_basics' },\n },\n ],\n};\n\nexport const drillTracks: LearningJourneyTrackSpec[] = [\n drillsLanguageBasicsTrack,\n];\n"],"mappings":";AAEA,MAAa,4BAAsD;CACjE,IAAI;CACJ,MAAM;CACN,aACE;CACF,mBAAmB;CACnB,YAAY;CACZ,SAAS;CACT,mBAAmB,EAAE,SAAS,IAAI;CAClC,OAAO;EACL;GACE,IAAI;GACJ,OAAO;GACP,aAAa;GACb,OAAO;GACP,YAAY;IACV,MAAM;IACN,WAAW;IACZ;GACD,UAAU;GACV,UAAU,EAAE,SAAS,UAAU;GAChC;EACD;GACE,IAAI;GACJ,OAAO;GACP,aAAa;GACb,OAAO;GACP,YAAY;IACV,MAAM;IACN,WAAW;IACX,SAAS;IACT,eAAe,EAAE,gBAAgB,QAAQ;IAC1C;GACD,UAAU;GACV,UAAU;IAAE,QAAQ;IAAY,QAAQ;IAAS;GAClD;EACD;GACE,IAAI;GACJ,OAAO;GACP,aACE;GACF,OAAO;GACP,YAAY;IACV,MAAM;IACN,WAAW;IACX,gBAAgB;IAChB,eAAe;IACf,cAAc;IACd,cAAc;IACd,eAAe,EAAE,SAAS,mBAAmB;IAC9C;GACD,UAAU;GACV,UAAU;IAAE,SAAS;IAAO,OAAO;IAAmB;GACvD;EACF;CACF;AAED,MAAa,cAA0C,CACrD,0BACD"}
package/package.json CHANGED
@@ -1,9 +1,8 @@
1
1
  {
2
2
  "name": "@contractspec/example.learning-journey-duo-drills",
3
- "version": "1.46.2",
3
+ "version": "1.47.0",
4
4
  "description": "Drill-based learning journey example with SRS, XP, and streak hooks.",
5
5
  "type": "module",
6
- "main": "./dist/index.js",
7
6
  "types": "./dist/index.d.ts",
8
7
  "exports": {
9
8
  ".": "./dist/index.js",
@@ -27,16 +26,15 @@
27
26
  "test": "bun test"
28
27
  },
29
28
  "dependencies": {
30
- "@contractspec/module.learning-journey": "1.46.2",
31
- "@contractspec/lib.contracts": "1.46.2"
29
+ "@contractspec/module.learning-journey": "1.47.0",
30
+ "@contractspec/lib.contracts": "1.47.0"
32
31
  },
33
32
  "devDependencies": {
34
- "@contractspec/tool.tsdown": "1.46.2",
35
- "@contractspec/tool.typescript": "1.46.2",
36
- "tsdown": "^0.18.3",
33
+ "@contractspec/tool.tsdown": "1.47.0",
34
+ "@contractspec/tool.typescript": "1.47.0",
35
+ "tsdown": "^0.19.0",
37
36
  "typescript": "^5.9.3"
38
37
  },
39
- "module": "./dist/index.js",
40
38
  "publishConfig": {
41
39
  "exports": {
42
40
  ".": "./dist/index.js",
package/src/example.ts CHANGED
@@ -1,6 +1,6 @@
1
- import type { ExampleSpec } from '@contractspec/lib.contracts';
1
+ import { defineExample } from '@contractspec/lib.contracts';
2
2
 
3
- const example: ExampleSpec = {
3
+ const example = defineExample({
4
4
  meta: {
5
5
  key: 'learning-journey-duo-drills',
6
6
  version: '1.0.0',
@@ -26,6 +26,6 @@ const example: ExampleSpec = {
26
26
  studio: { enabled: true, installable: true },
27
27
  mcp: { enabled: true },
28
28
  },
29
- };
29
+ });
30
30
 
31
31
  export default example;