cardbuddy 0.13.3 → 0.14.1

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 (61) hide show
  1. package/README.md +7 -3
  2. package/dist/cli.js +4 -4
  3. package/dist/config.js +7 -7
  4. package/dist/init.js +15 -4
  5. package/dist/portGuard.js +2 -2
  6. package/dist/preview-editor/assets/index-DnXqKrCc.js +307 -0
  7. package/dist/preview-editor/assets/index-cbTCHp8J.css +1 -0
  8. package/dist/preview-editor/index.html +2 -2
  9. package/dist/standalone.js +14 -6
  10. package/dist/vendored/card-editor/api.js +6 -6
  11. package/dist/vendored/mcp/client.mjs +53 -3
  12. package/dist/vendored/mcp/tools.mjs +17 -1
  13. package/dist/vendored/server/core/ai-chat.js +1443 -271
  14. package/dist/vendored/server/core/cardFiles.js +271 -39
  15. package/dist/vendored/server/core/cardImportMeta.js +16 -0
  16. package/dist/vendored/server/core/chatHistory.js +122 -0
  17. package/dist/vendored/server/core/index.js +10 -3
  18. package/dist/vendored/server/core/turnJournal.js +386 -0
  19. package/dist/vendored/skills/card-skill-trainer/SKILL.md +399 -222
  20. package/dist/vendored/skills/card-skill-trainer/scripts/build_dataset.py +103 -19
  21. package/dist/vendored/skills/card-skill-trainer/scripts/diagnose_case.mjs +378 -200
  22. package/dist/vendored/skills/card-skill-trainer/scripts/lib/runs.mjs +147 -0
  23. package/dist/vendored/skills/card-skill-trainer/scripts/lib/scoring.mjs +297 -4
  24. package/dist/vendored/skills/card-skill-trainer/scripts/plan_next_round.mjs +484 -0
  25. package/dist/vendored/skills/card-skill-trainer/scripts/round_diff.mjs +77 -96
  26. package/dist/vendored/skills/card-skill-trainer/scripts/run_round.mjs +237 -62
  27. package/dist/vendored/skills/card-skill-trainer/scripts/score_round.mjs +74 -35
  28. package/dist/vendored/skills/dsl-card-ai/SKILL.md +15 -2
  29. package/dist/vendored/skills/dsl-card-generator/SKILL.md +5 -3
  30. package/dist/vendored/skills/dsl-card-generator/references/generation_pitfalls.md +120 -0
  31. package/dist/vendored/skills/dsl-card-generator/references/previewer_contract.md +10 -0
  32. package/dist/vendored/skills/dsl-card-generator/references/quickref.md +15 -1
  33. package/dist/vendored/skills/dsl-card-generator/references/recipe_snippets/canvas-radar.json +2 -2
  34. package/dist/vendored/skills/dsl-card-generator/references/recipe_snippets/scatter-pill-band.json +10 -0
  35. package/dist/vendored/skills/dsl-card-generator/references/recipes.md +43 -1
  36. package/dist/vendored/skills/dsl-card-generator/references/rules.md +33 -6
  37. package/dist/vendored/skills/dsl-card-generator/references/slices_convention.md +12 -5
  38. package/dist/vendored/skills/dsl-card-generator/scripts/add_component.mjs +5 -10
  39. package/dist/vendored/skills/dsl-card-generator/scripts/crop_slices.mjs +47 -10
  40. package/dist/vendored/skills/dsl-card-generator/scripts/expand_ir.mjs +12 -4
  41. package/dist/vendored/skills/dsl-card-generator/scripts/lib/design_sample.mjs +388 -328
  42. package/dist/vendored/skills/dsl-card-generator/scripts/lib/slice_pixels.mjs +109 -0
  43. package/dist/vendored/skills/dsl-card-generator/scripts/render_card.mjs +45 -7
  44. package/dist/vendored/skills/dsl-card-generator/scripts/route_input.mjs +7 -3
  45. package/dist/vendored/skills/dsl-card-generator/scripts/spec_audit.mjs +110 -23
  46. package/dist/vendored/skills/dsl-card-generator/scripts/spec_to_schema_v3.mjs +2954 -127
  47. package/dist/vendored/skills/dsl-card-generator/scripts/spec_tree.mjs +128 -3
  48. package/dist/vendored/skills/dsl-card-generator/scripts/validate_schema.py +28 -0
  49. package/dist/vendored/skills/finmall-card-sync/SKILL.md +1 -1
  50. package/dist/vendored/skills/finmall-session-navigator/SKILL.md +1 -1
  51. package/dist/vendored/skills/finmall-session-navigator/scripts/session-manager.mjs +1 -1
  52. package/dist/vendored/skills/shared/finmall-config.mjs +4 -4
  53. package/dist/vendored/skills/sketch-spec-to-card/SKILL.md +2 -2
  54. package/dist/vendored/skills/sketch-spec-to-card/scripts/parse_meaxure.py +29 -2
  55. package/dist/vendored/tools/finmall-env.mjs +6 -6
  56. package/package.json +1 -1
  57. package/dist/preview-editor/assets/index-CQScMhyg.css +0 -1
  58. package/dist/preview-editor/assets/index-pW1J4vP3.js +0 -276
  59. package/dist/vendored/skills/card-skill-trainer/baselines/v3-r038n.json +0 -43
  60. package/dist/vendored/skills/card-skill-trainer/baselines/v3-r039n.json +0 -47
  61. package/dist/vendored/skills/card-skill-trainer/baselines/v3-r050n.json +0 -48
@@ -1,43 +0,0 @@
1
- {
2
- "baselineId": "v3-r038n",
3
- "date": "2026-08-26",
4
- "strategy": "v3",
5
- "dataset": "training/datasets/v3/train-set.jsonl",
6
- "datasetSha256": "33e0dddc26db72f4471c8d8f08b6983afe04ecaf01467ff97c8738ddb687e316",
7
- "sampleCount": 48,
8
- "metrics": {
9
- "passRate": 1,
10
- "passed": 48,
11
- "validateErrors": 0,
12
- "lintErrors": 0,
13
- "avgPixelDiff": 0.11110358659080005,
14
- "avgFidelity": 0.7756660799198527,
15
- "avgFidelityComponents": 0.8986764532981638,
16
- "avgColorFidelity": 0.9667358398437497,
17
- "avgStructureFidelity": 0.6551878934800744,
18
- "avgDimensionFidelity": 0.9717187946952559,
19
- "renderFailures": 0,
20
- "avgAnnotationCompleteness": 1,
21
- "avgTextRetention": 1,
22
- "upstreamFailures": 0
23
- },
24
- "gates": {
25
- "passRateMinimum": 0.95,
26
- "validateErrorsMaximum": 0,
27
- "lintErrorsMaximum": 0,
28
- "renderFailuresMaximum": 0,
29
- "upstreamFailuresMaximum": 0,
30
- "srcPollutionRequired": false
31
- },
32
- "artifacts": {
33
- "runDir": "training/runs/r038n",
34
- "summary": "training/runs/r038n/reports/summary.md"
35
- },
36
- "promotedLessons": [
37
- "LESSON-20260826-039",
38
- "LESSON-20260826-040",
39
- "LESSON-20260826-041",
40
- "LESSON-20260826-042",
41
- "LESSON-20260826-043"
42
- ]
43
- }
@@ -1,47 +0,0 @@
1
- {
2
- "baselineId": "v3-r039n",
3
- "date": "2026-08-26",
4
- "strategy": "v3",
5
- "dataset": "training/datasets/v3/train-set.jsonl",
6
- "datasetSha256": "33e0dddc26db72f4471c8d8f08b6983afe04ecaf01467ff97c8738ddb687e316",
7
- "sampleCount": 48,
8
- "metrics": {
9
- "passRate": 1,
10
- "passed": 48,
11
- "validateErrors": 0,
12
- "lintErrors": 0,
13
- "avgPixelDiff": 0.1178415490216939,
14
- "avgFidelity": 0.7813162775989081,
15
- "avgFidelityComponents": 0.9605243097951431,
16
- "avgColorFidelity": 0.9669010416666665,
17
- "avgStructureFidelity": 0.6553877132475057,
18
- "avgDimensionFidelity": 0.9515361106243735,
19
- "renderFailures": 0,
20
- "avgAnnotationCompleteness": 1,
21
- "avgTextRetention": 1,
22
- "upstreamFailures": 0
23
- },
24
- "comparison": {
25
- "previousBaseline": "v3-r038n",
26
- "avgFidelityDelta": 0.0056501976790554,
27
- "avgFidelityComponentsDelta": 0.0618478564969793
28
- },
29
- "gates": {
30
- "passRateMinimum": 0.95,
31
- "validateErrorsMaximum": 0,
32
- "lintErrorsMaximum": 0,
33
- "renderFailuresMaximum": 0,
34
- "upstreamFailuresMaximum": 0,
35
- "srcPollutionRequired": false
36
- },
37
- "artifacts": {
38
- "runDir": "training/runs/r039n",
39
- "summary": "training/runs/r039n/reports/summary.md"
40
- },
41
- "promotedLessons": [
42
- "LESSON-20260826-044",
43
- "LESSON-20260826-045",
44
- "LESSON-20260826-046",
45
- "LESSON-20260826-047"
46
- ]
47
- }
@@ -1,48 +0,0 @@
1
- {
2
- "baselineId": "v3-r050n",
3
- "date": "2026-08-26",
4
- "strategy": "v3",
5
- "dataset": "training/datasets/v3/train-set.jsonl",
6
- "datasetSha256": "33e0dddc26db72f4471c8d8f08b6983afe04ecaf01467ff97c8738ddb687e316",
7
- "sampleCount": 48,
8
- "metrics": {
9
- "passRate": 1,
10
- "passed": 48,
11
- "validateErrors": 0,
12
- "lintErrors": 0,
13
- "avgPixelDiff": 0.11277390158817568,
14
- "avgFidelity": 0.7952778246566923,
15
- "avgFidelityComponents": 0.9559238061321395,
16
- "avgColorFidelity": 0.9831754557291665,
17
- "avgStructureFidelity": 0.7040960215045314,
18
- "avgDimensionFidelity": 0.9620245001437465,
19
- "renderFailures": 0,
20
- "avgAnnotationCompleteness": 1,
21
- "avgTextRetention": 1,
22
- "upstreamFailures": 0,
23
- "semanticReviewPending": 0
24
- },
25
- "comparison": {
26
- "previousBaseline": "v3-r039n",
27
- "avgFidelityDelta": 0.0139615470577862,
28
- "avgStructureFidelityDelta": 0.0487083082574945,
29
- "avgColorFidelityDelta": 0.0162744140625
30
- },
31
- "gates": {
32
- "passRateMinimum": 0.95,
33
- "validateErrorsMaximum": 0,
34
- "lintErrorsMaximum": 0,
35
- "renderFailuresMaximum": 0,
36
- "upstreamFailuresMaximum": 0,
37
- "srcPollutionRequired": false
38
- },
39
- "artifacts": {
40
- "runDir": "training/runs/r050n",
41
- "summary": "training/runs/r050n/reports/summary.json"
42
- },
43
- "promotedLessons": [
44
- "LESSON-20260826-048",
45
- "LESSON-20260826-049",
46
- "LESSON-20260826-050"
47
- ]
48
- }