@mossbear/projections 0.1.0-alpha.34 → 0.1.0-alpha.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.
@@ -1,15 +1,13 @@
1
1
  /**
2
2
  * Where a **plain guide's** evaluation criteria live on disk: the eval shadow
3
- * tree at `<scopeRoot>/.mossbear/evals/<the guide's scope-relative path>`
4
- * (docs/plans/eval-criteria-on-disk-plan.md → Approach).
3
+ * tree at `<scopeRoot>/.mossbear/evals/<the guide's scope-relative path>`.
5
4
  *
6
5
  * One rule — *the eval file lives with its guide* — expressed two ways, because
7
6
  * the two guide shapes have different structures:
8
7
  *
9
8
  * - a **skill** is a directory, so its criteria sit inside it as a positional
10
- * `EVAL.md` (already shipped: `skillMemberContentType`,
11
- * `apps/dashboard/src/server/rules/skillMembers.ts`). Nothing here touches
12
- * that half;
9
+ * `EVAL.md` (already shipped, server-side, as `skillMemberContentType`).
10
+ * Nothing here touches that half;
13
11
  * - a **plain guide** is a bare file with nowhere to put a sibling that would
14
12
  * not clutter — and land inside — a discovery root, so its criteria go in
15
13
  * the shadow tree, which mirrors the guide's own path.
@@ -1 +1 @@
1
- {"version":3,"file":"eval-path.d.ts","sourceRoot":"","sources":["../src/eval-path.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AAWH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AAEzD,wEAAwE;AACxE,eAAO,MAAM,eAAe,oBAAoB,CAAA;AAIhD;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAY/D;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,uBAAuB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAYzE;AAED;;;;;;;GAOG;AACH,MAAM,MAAM,uBAAuB;AACjC,sEAAsE;AACpE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE;AACrC,6DAA6D;GAC3D;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,eAAe,CAAA;CAAE;AAC5C,wEAAwE;GACtE;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,CAAA;AAErB,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,uBAAuB,CAU3E"}
1
+ {"version":3,"file":"eval-path.d.ts","sourceRoot":"","sources":["../src/eval-path.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AAWH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AAEzD,wEAAwE;AACxE,eAAO,MAAM,eAAe,oBAAoB,CAAA;AAIhD;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAY/D;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,uBAAuB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAYzE;AAED;;;;;;;GAOG;AACH,MAAM,MAAM,uBAAuB;AACjC,sEAAsE;AACpE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE;AACrC,6DAA6D;GAC3D;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,eAAe,CAAA;CAAE;AAC5C,wEAAwE;GACtE;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,CAAA;AAErB,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,uBAAuB,CAU3E"}
package/dist/eval-path.js CHANGED
@@ -1,15 +1,13 @@
1
1
  /**
2
2
  * Where a **plain guide's** evaluation criteria live on disk: the eval shadow
3
- * tree at `<scopeRoot>/.mossbear/evals/<the guide's scope-relative path>`
4
- * (docs/plans/eval-criteria-on-disk-plan.md → Approach).
3
+ * tree at `<scopeRoot>/.mossbear/evals/<the guide's scope-relative path>`.
5
4
  *
6
5
  * One rule — *the eval file lives with its guide* — expressed two ways, because
7
6
  * the two guide shapes have different structures:
8
7
  *
9
8
  * - a **skill** is a directory, so its criteria sit inside it as a positional
10
- * `EVAL.md` (already shipped: `skillMemberContentType`,
11
- * `apps/dashboard/src/server/rules/skillMembers.ts`). Nothing here touches
12
- * that half;
9
+ * `EVAL.md` (already shipped, server-side, as `skillMemberContentType`).
10
+ * Nothing here touches that half;
13
11
  * - a **plain guide** is a bare file with nowhere to put a sibling that would
14
12
  * not clutter — and land inside — a discovery root, so its criteria go in
15
13
  * the shadow tree, which mirrors the guide's own path.
@@ -1 +1 @@
1
- {"version":3,"file":"eval-path.js","sourceRoot":"","sources":["../src/eval-path.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACjD,OAAO,EACL,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,UAAU,EACV,OAAO,GACR,MAAM,iBAAiB,CAAA;AAIxB,wEAAwE;AACxE,MAAM,CAAC,MAAM,eAAe,GAAG,iBAAiB,CAAA;AAEhD,MAAM,oBAAoB,GAAG,WAAW,CAAA;AAExC;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAAC,SAAiB;IAC9C,MAAM,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC,CAAA;IACrC,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC;QAAE,OAAO,IAAI,CAAA;IAChD,IAAI,kBAAkB,CAAC,UAAU,CAAC;QAAE,OAAO,IAAI,CAAA;IAC/C,IAAI,gBAAgB,CAAC,UAAU,CAAC;QAAE,OAAO,IAAI,CAAA;IAE7C,MAAM,UAAU,GAAG,GAAG,eAAe,IAAI,UAAU,EAAE,CAAA;IACrD,8EAA8E;IAC9E,6EAA6E;IAC7E,4EAA4E;IAC5E,8BAA8B;IAC9B,OAAO,kBAAkB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAA;AAC3D,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,uBAAuB,CAAC,UAAkB;IACxD,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;IACtC,MAAM,QAAQ,GAAG,UAAU,CAAC,UAAU,CAAC,CAAA;IACvC,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,oBAAoB,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,OAAO;QAAE,OAAO,IAAI,CAAA;IAEhF,4EAA4E;IAC5E,8EAA8E;IAC9E,MAAM,SAAS,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAC1D,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAA;IACvC,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAA;IAC/C,IAAI,kBAAkB,CAAC,SAAS,CAAC,IAAI,gBAAgB,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAA;IAC7E,OAAO,SAAS,CAAA;AAClB,CAAC;AAkBD,MAAM,UAAU,qBAAqB,CAAC,IAAY;IAChD,MAAM,SAAS,GAAG,uBAAuB,CAAC,IAAI,CAAC,CAAA;IAC/C,IAAI,SAAS,KAAK,IAAI;QAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,CAAA;IAC1D,oFAAoF;IACpF,kFAAkF;IAClF,6CAA6C;IAC7C,IAAI,kBAAkB,CAAC,IAAI,CAAC;QAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAA;IAEtD,MAAM,MAAM,GAAG,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IAC1C,OAAO,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,CAAA;AACxE,CAAC"}
1
+ {"version":3,"file":"eval-path.js","sourceRoot":"","sources":["../src/eval-path.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACjD,OAAO,EACL,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,UAAU,EACV,OAAO,GACR,MAAM,iBAAiB,CAAA;AAIxB,wEAAwE;AACxE,MAAM,CAAC,MAAM,eAAe,GAAG,iBAAiB,CAAA;AAEhD,MAAM,oBAAoB,GAAG,WAAW,CAAA;AAExC;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAAC,SAAiB;IAC9C,MAAM,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC,CAAA;IACrC,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC;QAAE,OAAO,IAAI,CAAA;IAChD,IAAI,kBAAkB,CAAC,UAAU,CAAC;QAAE,OAAO,IAAI,CAAA;IAC/C,IAAI,gBAAgB,CAAC,UAAU,CAAC;QAAE,OAAO,IAAI,CAAA;IAE7C,MAAM,UAAU,GAAG,GAAG,eAAe,IAAI,UAAU,EAAE,CAAA;IACrD,8EAA8E;IAC9E,6EAA6E;IAC7E,4EAA4E;IAC5E,8BAA8B;IAC9B,OAAO,kBAAkB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAA;AAC3D,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,uBAAuB,CAAC,UAAkB;IACxD,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;IACtC,MAAM,QAAQ,GAAG,UAAU,CAAC,UAAU,CAAC,CAAA;IACvC,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,oBAAoB,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,OAAO;QAAE,OAAO,IAAI,CAAA;IAEhF,4EAA4E;IAC5E,8EAA8E;IAC9E,MAAM,SAAS,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAC1D,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAA;IACvC,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAA;IAC/C,IAAI,kBAAkB,CAAC,SAAS,CAAC,IAAI,gBAAgB,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAA;IAC7E,OAAO,SAAS,CAAA;AAClB,CAAC;AAkBD,MAAM,UAAU,qBAAqB,CAAC,IAAY;IAChD,MAAM,SAAS,GAAG,uBAAuB,CAAC,IAAI,CAAC,CAAA;IAC/C,IAAI,SAAS,KAAK,IAAI;QAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,CAAA;IAC1D,oFAAoF;IACpF,kFAAkF;IAClF,6CAA6C;IAC7C,IAAI,kBAAkB,CAAC,IAAI,CAAC;QAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAA;IAEtD,MAAM,MAAM,GAAG,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IAC1C,OAAO,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,CAAA;AACxE,CAAC"}
@@ -29,10 +29,10 @@ export declare function isUnderMossbearDir(path: string): boolean;
29
29
  *
30
30
  * The rule is *the attached file lives with its guide*, and a skill's guide is a
31
31
  * directory — so its criteria are the positional `EVAL.md` inside it and its
32
- * members are the rest of that directory
33
- * (`skillMemberContentType`, `apps/dashboard/src/server/rules/skillMembers.ts:60-66`).
34
- * Shadowing a skill as well would put one skill's rubric in two places, split it
35
- * out of the directory that makes a skill portable, and hand the next reconciler
32
+ * members are the rest of that directory (`skillMemberContentType`,
33
+ * server-side). Shadowing a skill as well would put one skill's rubric in two
34
+ * places, split it out of the directory that makes a skill portable, and hand
35
+ * the next reconciler
36
36
  * two rows to disagree over — the "two shapes of one fact" CLAUDE.md → Simplicity
37
37
  * refuses. `detectFormat` is the same test discovery uses, so what counts as a
38
38
  * skill here cannot drift from what counts as one there.
@@ -47,10 +47,10 @@ export function isUnderMossbearDir(path) {
47
47
  *
48
48
  * The rule is *the attached file lives with its guide*, and a skill's guide is a
49
49
  * directory — so its criteria are the positional `EVAL.md` inside it and its
50
- * members are the rest of that directory
51
- * (`skillMemberContentType`, `apps/dashboard/src/server/rules/skillMembers.ts:60-66`).
52
- * Shadowing a skill as well would put one skill's rubric in two places, split it
53
- * out of the directory that makes a skill portable, and hand the next reconciler
50
+ * members are the rest of that directory (`skillMemberContentType`,
51
+ * server-side). Shadowing a skill as well would put one skill's rubric in two
52
+ * places, split it out of the directory that makes a skill portable, and hand
53
+ * the next reconciler
54
54
  * two rows to disagree over — the "two shapes of one fact" CLAUDE.md → Simplicity
55
55
  * refuses. `detectFormat` is the same test discovery uses, so what counts as a
56
56
  * skill here cannot drift from what counts as one there.
@@ -14,9 +14,8 @@
14
14
  * **Why the server derives it rather than each client.** Identical to
15
15
  * `evalShadowPath`'s reason, and it is the failure `skill-member-delivery` was
16
16
  * filed for: members are `guide_files` rows attached to their guide by
17
- * `guide_id` with no bundle membership of their own
18
- * (`apps/dashboard/src/server/rules/skillMembers.ts:200-205`), so the only thing
19
- * that knows where a member belongs is the guide's own path. Letting each
17
+ * `guide_id` with no bundle membership of their own, so the only thing that
18
+ * knows where a member belongs is the guide's own path. Letting each
20
19
  * subscribed clone re-derive that from a member name would be the per-clone
21
20
  * divergence `unified-item-sync` exists to remove — and letting none of them
22
21
  * derive it is what shipped, which is a skill delivered in pieces with the sync
@@ -1 +1 @@
1
- {"version":3,"file":"skill-member-path.d.ts","sourceRoot":"","sources":["../src/skill-member-path.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AASH;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAoBpF"}
1
+ {"version":3,"file":"skill-member-path.d.ts","sourceRoot":"","sources":["../src/skill-member-path.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AASH;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAoBpF"}
@@ -14,9 +14,8 @@
14
14
  * **Why the server derives it rather than each client.** Identical to
15
15
  * `evalShadowPath`'s reason, and it is the failure `skill-member-delivery` was
16
16
  * filed for: members are `guide_files` rows attached to their guide by
17
- * `guide_id` with no bundle membership of their own
18
- * (`apps/dashboard/src/server/rules/skillMembers.ts:200-205`), so the only thing
19
- * that knows where a member belongs is the guide's own path. Letting each
17
+ * `guide_id` with no bundle membership of their own, so the only thing that
18
+ * knows where a member belongs is the guide's own path. Letting each
20
19
  * subscribed clone re-derive that from a member name would be the per-clone
21
20
  * divergence `unified-item-sync` exists to remove — and letting none of them
22
21
  * derive it is what shipped, which is a skill delivered in pieces with the sync
@@ -1 +1 @@
1
- {"version":3,"file":"skill-member-path.js","sourceRoot":"","sources":["../src/skill-member-path.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,EACL,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,OAAO,GACR,MAAM,iBAAiB,CAAA;AAExB;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,UAAU,eAAe,CAAC,SAAiB,EAAE,UAAkB;IACnE,MAAM,KAAK,GAAG,OAAO,CAAC,SAAS,CAAC,CAAA;IAChC,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAA;IAC3C,IAAI,kBAAkB,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAA;IAC1C,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAA;IAEzC,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;IAClC,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC;QAAE,OAAO,IAAI,CAAA;IAE5C,wEAAwE;IACxE,4EAA4E;IAC5E,oEAAoE;IACpE,MAAM,cAAc,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;IAC7C,IAAI,cAAc,KAAK,CAAC,CAAC;QAAE,OAAO,IAAI,CAAA;IACtC,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,cAAc,CAAC,CAAA;IAE/C,MAAM,MAAM,GAAG,GAAG,QAAQ,IAAI,MAAM,EAAE,CAAA;IACtC,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC;QAAE,OAAO,IAAI,CAAA;IAC5C,IAAI,kBAAkB,CAAC,MAAM,CAAC;QAAE,OAAO,IAAI,CAAA;IAC3C,OAAO,MAAM,CAAA;AACf,CAAC"}
1
+ {"version":3,"file":"skill-member-path.js","sourceRoot":"","sources":["../src/skill-member-path.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,EACL,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,OAAO,GACR,MAAM,iBAAiB,CAAA;AAExB;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,UAAU,eAAe,CAAC,SAAiB,EAAE,UAAkB;IACnE,MAAM,KAAK,GAAG,OAAO,CAAC,SAAS,CAAC,CAAA;IAChC,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAA;IAC3C,IAAI,kBAAkB,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAA;IAC1C,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAA;IAEzC,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;IAClC,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC;QAAE,OAAO,IAAI,CAAA;IAE5C,wEAAwE;IACxE,4EAA4E;IAC5E,oEAAoE;IACpE,MAAM,cAAc,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;IAC7C,IAAI,cAAc,KAAK,CAAC,CAAC;QAAE,OAAO,IAAI,CAAA;IACtC,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,cAAc,CAAC,CAAA;IAE/C,MAAM,MAAM,GAAG,GAAG,QAAQ,IAAI,MAAM,EAAE,CAAA;IACtC,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC;QAAE,OAAO,IAAI,CAAA;IAC5C,IAAI,kBAAkB,CAAC,MAAM,CAAC;QAAE,OAAO,IAAI,CAAA;IAC3C,OAAO,MAAM,CAAA;AACf,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mossbear/projections",
3
- "version": "0.1.0-alpha.34",
3
+ "version": "0.1.0-alpha.35",
4
4
  "private": false,
5
5
  "description": "Guide file format detection and compatibility renderers for Mossbear — AGENTS.md, .agents/, CLAUDE.md, .claude/rules/, .cursorrules.",
6
6
  "license": "MIT",
@@ -38,7 +38,8 @@
38
38
  "test": "vitest run"
39
39
  },
40
40
  "dependencies": {
41
- "@mossbear/protocol": "0.1.0-alpha.34"
41
+ "@mossbear/protocol": "0.1.0-alpha.35",
42
+ "valibot": "^1.4.2"
42
43
  },
43
44
  "devDependencies": {
44
45
  "typescript": "*"