cc-proficiency 0.2.10 → 0.3.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.
Files changed (77) hide show
  1. package/README.md +79 -3
  2. package/dist/cli/commands/ai-grade.d.ts +2 -0
  3. package/dist/cli/commands/ai-grade.d.ts.map +1 -0
  4. package/dist/cli/commands/ai-grade.js +139 -0
  5. package/dist/cli/commands/ai-grade.js.map +1 -0
  6. package/dist/cli/commands/config.d.ts.map +1 -1
  7. package/dist/cli/commands/config.js +2 -0
  8. package/dist/cli/commands/config.js.map +1 -1
  9. package/dist/cli/commands/explain.d.ts.map +1 -1
  10. package/dist/cli/commands/explain.js +18 -0
  11. package/dist/cli/commands/explain.js.map +1 -1
  12. package/dist/cli/commands/process.d.ts.map +1 -1
  13. package/dist/cli/commands/process.js +30 -0
  14. package/dist/cli/commands/process.js.map +1 -1
  15. package/dist/cli/index.js +6 -0
  16. package/dist/cli/index.js.map +1 -1
  17. package/dist/cli/services/publishing.d.ts.map +1 -1
  18. package/dist/cli/services/publishing.js +15 -0
  19. package/dist/cli/services/publishing.js.map +1 -1
  20. package/dist/i18n/locales/en.d.ts.map +1 -1
  21. package/dist/i18n/locales/en.js +28 -1
  22. package/dist/i18n/locales/en.js.map +1 -1
  23. package/dist/i18n/locales/es.d.ts.map +1 -1
  24. package/dist/i18n/locales/es.js +28 -1
  25. package/dist/i18n/locales/es.js.map +1 -1
  26. package/dist/i18n/locales/fr.d.ts.map +1 -1
  27. package/dist/i18n/locales/fr.js +27 -0
  28. package/dist/i18n/locales/fr.js.map +1 -1
  29. package/dist/i18n/locales/ja.d.ts.map +1 -1
  30. package/dist/i18n/locales/ja.js +27 -0
  31. package/dist/i18n/locales/ja.js.map +1 -1
  32. package/dist/i18n/locales/ko.d.ts.map +1 -1
  33. package/dist/i18n/locales/ko.js +27 -0
  34. package/dist/i18n/locales/ko.js.map +1 -1
  35. package/dist/i18n/locales/zh-CN.d.ts.map +1 -1
  36. package/dist/i18n/locales/zh-CN.js +27 -0
  37. package/dist/i18n/locales/zh-CN.js.map +1 -1
  38. package/dist/i18n/types.d.ts +21 -0
  39. package/dist/i18n/types.d.ts.map +1 -1
  40. package/dist/renderer/ai-animated-svg.d.ts +11 -0
  41. package/dist/renderer/ai-animated-svg.d.ts.map +1 -0
  42. package/dist/renderer/ai-animated-svg.js +206 -0
  43. package/dist/renderer/ai-animated-svg.js.map +1 -0
  44. package/dist/scoring/ai-evidence.d.ts +108 -0
  45. package/dist/scoring/ai-evidence.d.ts.map +1 -0
  46. package/dist/scoring/ai-evidence.js +305 -0
  47. package/dist/scoring/ai-evidence.js.map +1 -0
  48. package/dist/scoring/ai-grader.d.ts +64 -0
  49. package/dist/scoring/ai-grader.d.ts.map +1 -0
  50. package/dist/scoring/ai-grader.js +229 -0
  51. package/dist/scoring/ai-grader.js.map +1 -0
  52. package/dist/scoring/rubric-loader.d.ts +4 -0
  53. package/dist/scoring/rubric-loader.d.ts.map +1 -0
  54. package/dist/scoring/rubric-loader.js +102 -0
  55. package/dist/scoring/rubric-loader.js.map +1 -0
  56. package/dist/store/achievements.d.ts.map +1 -1
  57. package/dist/store/achievements.js +25 -0
  58. package/dist/store/achievements.js.map +1 -1
  59. package/dist/store/local-store.d.ts +2 -0
  60. package/dist/store/local-store.d.ts.map +1 -1
  61. package/dist/store/local-store.js +11 -0
  62. package/dist/store/local-store.js.map +1 -1
  63. package/dist/store/queue.d.ts +8 -0
  64. package/dist/store/queue.d.ts.map +1 -1
  65. package/dist/store/queue.js +44 -0
  66. package/dist/store/queue.js.map +1 -1
  67. package/dist/types.d.ts +51 -0
  68. package/dist/types.d.ts.map +1 -1
  69. package/docs/ai-grading/README.md +39 -0
  70. package/docs/ai-grading/anti-gaming.md +11 -0
  71. package/docs/ai-grading/collaboration-quality.md +25 -0
  72. package/docs/ai-grading/goal-achievement.md +25 -0
  73. package/docs/ai-grading/growth-learning.md +25 -0
  74. package/docs/ai-grading/system-prompt-header.md +32 -0
  75. package/docs/ai-grading/verification-quality.md +25 -0
  76. package/docs/ai-grading/workflow-mastery.md +25 -0
  77. package/package.json +2 -1
@@ -0,0 +1,102 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.loadRubric = loadRubric;
4
+ exports.buildPromptFromRubric = buildPromptFromRubric;
5
+ const node_fs_1 = require("node:fs");
6
+ const node_path_1 = require("node:path");
7
+ const DOMAIN_FILES = [
8
+ "goal-achievement.md",
9
+ "collaboration-quality.md",
10
+ "workflow-mastery.md",
11
+ "growth-learning.md",
12
+ "verification-quality.md",
13
+ ];
14
+ function getRubricDir() {
15
+ // dist/scoring/rubric-loader.js -> ../../docs/ai-grading/
16
+ return (0, node_path_1.join)(__dirname, "..", "..", "docs", "ai-grading");
17
+ }
18
+ function readRubricFile(dir, filename) {
19
+ const path = (0, node_path_1.join)(dir, filename);
20
+ try {
21
+ return (0, node_fs_1.readFileSync)(path, "utf-8");
22
+ }
23
+ catch {
24
+ throw new Error(`Missing rubric file: ${filename}`);
25
+ }
26
+ }
27
+ function parseFrontmatter(content, filename) {
28
+ const parts = content.split("---");
29
+ if (parts.length < 3) {
30
+ throw new Error(`Invalid frontmatter in ${filename}: missing --- delimiters`);
31
+ }
32
+ const raw = parts[1].trim();
33
+ const fm = {};
34
+ for (const line of raw.split("\n")) {
35
+ const idx = line.indexOf(":");
36
+ if (idx === -1)
37
+ continue;
38
+ const key = line.slice(0, idx).trim();
39
+ const value = line.slice(idx + 1).trim();
40
+ fm[key] = value;
41
+ }
42
+ if (!fm["id"] || !fm["label"] || !fm["description"]) {
43
+ throw new Error(`Invalid frontmatter in ${filename}: missing id, label, or description`);
44
+ }
45
+ return {
46
+ frontmatter: { id: fm["id"], label: fm["label"], description: fm["description"] },
47
+ body: parts.slice(2).join("---").trim(),
48
+ };
49
+ }
50
+ function parseCriteria(body, filename) {
51
+ const sections = body.split(/^## /m).filter(Boolean);
52
+ const criteria = [];
53
+ for (const section of sections) {
54
+ const lines = section.trim().split("\n");
55
+ const heading = lines[0];
56
+ const match = heading.match(/^(Q\d+):\s*(.+)/);
57
+ if (!match) {
58
+ throw new Error(`Invalid criterion heading in ${filename}: ${heading}`);
59
+ }
60
+ const q = match[1];
61
+ const title = match[2].trim();
62
+ const text = lines.slice(1).join("\n");
63
+ const anchorsMatch = text.match(/\*\*Anchors:\*\*\s*(.+)/);
64
+ const evidenceMatch = text.match(/\*\*Evidence:\*\*\s*(.+)/);
65
+ if (!anchorsMatch || !evidenceMatch) {
66
+ throw new Error(`Missing Anchors or Evidence in ${filename} ${q}`);
67
+ }
68
+ criteria.push({ q, title, anchors: anchorsMatch[1].trim(), evidence: evidenceMatch[1].trim() });
69
+ }
70
+ return criteria;
71
+ }
72
+ function parseDomainFile(dir, filename) {
73
+ const content = readRubricFile(dir, filename);
74
+ const { frontmatter, body } = parseFrontmatter(content, filename);
75
+ const criteria = parseCriteria(body, filename);
76
+ if (criteria.length === 0) {
77
+ throw new Error(`No criteria found in ${filename}`);
78
+ }
79
+ return { id: frontmatter.id, label: frontmatter.label, description: frontmatter.description, criteria };
80
+ }
81
+ function loadRubric() {
82
+ const dir = getRubricDir();
83
+ const domains = DOMAIN_FILES.map(f => parseDomainFile(dir, f));
84
+ const antiGaming = readRubricFile(dir, "anti-gaming.md");
85
+ const systemPromptHeader = readRubricFile(dir, "system-prompt-header.md");
86
+ return { domains, antiGaming, systemPromptHeader };
87
+ }
88
+ function buildPromptFromRubric(rubric) {
89
+ const parts = [rubric.systemPromptHeader, ""];
90
+ for (const domain of rubric.domains) {
91
+ parts.push(`### ${domain.label}`);
92
+ parts.push(`*${domain.description}*\n`);
93
+ for (const c of domain.criteria) {
94
+ parts.push(`## ${c.q}: ${c.title}`);
95
+ parts.push(`**Anchors:** ${c.anchors}`);
96
+ parts.push(`**Evidence:** ${c.evidence}\n`);
97
+ }
98
+ }
99
+ parts.push(rubric.antiGaming);
100
+ return parts.join("\n");
101
+ }
102
+ //# sourceMappingURL=rubric-loader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rubric-loader.js","sourceRoot":"","sources":["../../src/scoring/rubric-loader.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"achievements.d.ts","sourceRoot":"","sources":["../../src/store/achievements.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEtE;;;;GAIG;AACH,eAAO,MAAM,YAAY,EAAE,cAAc,EAqGxC,CAAC;AAEF;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,kBAAkB,EACvB,eAAe,EAAE,MAAM,EAAE,GACxB,MAAM,EAAE,CAaV;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAExE"}
1
+ {"version":3,"file":"achievements.d.ts","sourceRoot":"","sources":["../../src/store/achievements.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEtE;;;;GAIG;AACH,eAAO,MAAM,YAAY,EAAE,cAAc,EA+HxC,CAAC;AAEF;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,kBAAkB,EACvB,eAAe,EAAE,MAAM,EAAE,GACxB,MAAM,EAAE,CAaV;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAExE"}
@@ -105,6 +105,31 @@ exports.ACHIEVEMENTS = [
105
105
  icon: "\uD83C\uDF10", // 🌐
106
106
  progress: (ctx) => ({ current: ctx.leaderboard ? 1 : 0, target: 1 }),
107
107
  },
108
+ // AI grading milestones
109
+ {
110
+ id: "ai-goal-crusher",
111
+ icon: "\uD83C\uDFAF", // 🎯
112
+ progress: (ctx) => ({
113
+ current: (ctx.aiEvidence?.achievedRate ?? 0) >= 90 ? 1 : 0,
114
+ target: 1,
115
+ }),
116
+ },
117
+ {
118
+ id: "ai-recovery-artist",
119
+ icon: "\uD83D\uDD04", // 🔄
120
+ progress: (ctx) => ({
121
+ current: ctx.aiEvidence?.frictionSatisfiedCount ?? 0,
122
+ target: 5,
123
+ }),
124
+ },
125
+ {
126
+ id: "ai-prompt-evolution",
127
+ icon: "\uD83D\uDCC8", // 📈
128
+ progress: (ctx) => ({
129
+ current: (ctx.aiEvidence?.promptLengthTrend ?? 0) > 0 ? 1 : 0,
130
+ target: 1,
131
+ }),
132
+ },
108
133
  ];
109
134
  /**
110
135
  * Check all achievements against current context.
@@ -1 +1 @@
1
- {"version":3,"file":"achievements.js","sourceRoot":"","sources":["../../src/store/achievements.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"achievements.js","sourceRoot":"","sources":["../../src/store/achievements.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,8 @@ export declare function saveConfig(config: CCProficiencyConfig): void;
8
8
  export declare function saveBadge(svg: string): string;
9
9
  export declare function getBadgePath(): string;
10
10
  export declare function saveAnimatedBadge(svg: string): string;
11
+ export declare function saveAIBadge(svg: string): string;
12
+ export declare function getAIBadgePath(): string;
11
13
  export declare function logError(message: string): void;
12
14
  export declare function getStoreDir(): string;
13
15
  export declare function loadLeaderboardCache(): LeaderboardCache | null;
@@ -1 +1 @@
1
- {"version":3,"file":"local-store.d.ts","sourceRoot":"","sources":["../../src/store/local-store.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAsBnI,wBAAgB,SAAS,IAAI,UAAU,CAStC;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI,CAsBjD;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAEhF;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,eAAe,GAAG,IAAI,CAG9E;AAED,wBAAgB,UAAU,IAAI,mBAAmB,CAWhD;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,mBAAmB,GAAG,IAAI,CAG5D;AAED,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAI7C;AAED,wBAAgB,YAAY,IAAI,MAAM,CAErC;AAED,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAIrD;AAED,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAe9C;AAED,wBAAgB,WAAW,IAAI,MAAM,CAEpC;AAED,wBAAgB,oBAAoB,IAAI,gBAAgB,GAAG,IAAI,CAO9D;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,gBAAgB,GAAG,IAAI,CAGlE;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,aAAa,EAAE,GAAG,IAAI,CAahF;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,CAAC,EAAE,aAAa,EAAE,GAAG,YAAY,CAkB5E"}
1
+ {"version":3,"file":"local-store.d.ts","sourceRoot":"","sources":["../../src/store/local-store.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAuBnI,wBAAgB,SAAS,IAAI,UAAU,CAStC;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI,CAsBjD;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAEhF;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,eAAe,GAAG,IAAI,CAG9E;AAED,wBAAgB,UAAU,IAAI,mBAAmB,CAWhD;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,mBAAmB,GAAG,IAAI,CAG5D;AAED,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAI7C;AAED,wBAAgB,YAAY,IAAI,MAAM,CAErC;AAED,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAIrD;AAED,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAI/C;AAED,wBAAgB,cAAc,IAAI,MAAM,CAEvC;AAED,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAe9C;AAED,wBAAgB,WAAW,IAAI,MAAM,CAEpC;AAED,wBAAgB,oBAAoB,IAAI,gBAAgB,GAAG,IAAI,CAO9D;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,gBAAgB,GAAG,IAAI,CAGlE;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,aAAa,EAAE,GAAG,IAAI,CAahF;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,CAAC,EAAE,aAAa,EAAE,GAAG,YAAY,CAkB5E"}
@@ -9,6 +9,8 @@ exports.saveConfig = saveConfig;
9
9
  exports.saveBadge = saveBadge;
10
10
  exports.getBadgePath = getBadgePath;
11
11
  exports.saveAnimatedBadge = saveAnimatedBadge;
12
+ exports.saveAIBadge = saveAIBadge;
13
+ exports.getAIBadgePath = getAIBadgePath;
12
14
  exports.logError = logError;
13
15
  exports.getStoreDir = getStoreDir;
14
16
  exports.loadLeaderboardCache = loadLeaderboardCache;
@@ -24,6 +26,7 @@ const STORE_FILE = (0, node_path_1.join)(STORE_DIR, "store.json");
24
26
  const CONFIG_FILE = (0, node_path_1.join)(STORE_DIR, "config.json");
25
27
  const BADGE_FILE = (0, node_path_1.join)(STORE_DIR, "cc-proficiency.svg");
26
28
  const ANIMATED_BADGE_FILE = (0, node_path_1.join)(STORE_DIR, "cc-proficiency-animated.svg");
29
+ const AI_BADGE_FILE = (0, node_path_1.join)(STORE_DIR, "cc-proficiency-animated-ai-graded.svg");
27
30
  const ERROR_LOG = (0, node_path_1.join)(STORE_DIR, "error.log");
28
31
  const LEADERBOARD_CACHE_FILE = (0, node_path_1.join)(STORE_DIR, "leaderboard-cache.json");
29
32
  const MAX_ERROR_LOG_SIZE = 1_000_000; // 1MB
@@ -104,6 +107,14 @@ function saveAnimatedBadge(svg) {
104
107
  (0, node_fs_1.writeFileSync)(ANIMATED_BADGE_FILE, svg, "utf-8");
105
108
  return ANIMATED_BADGE_FILE;
106
109
  }
110
+ function saveAIBadge(svg) {
111
+ (0, queue_js_1.ensureStoreDir)();
112
+ (0, node_fs_1.writeFileSync)(AI_BADGE_FILE, svg, "utf-8");
113
+ return AI_BADGE_FILE;
114
+ }
115
+ function getAIBadgePath() {
116
+ return AI_BADGE_FILE;
117
+ }
107
118
  function logError(message) {
108
119
  (0, queue_js_1.ensureStoreDir)();
109
120
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"local-store.js","sourceRoot":"","sources":["../../src/store/local-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"local-store.js","sourceRoot":"","sources":["../../src/store/local-store.ts"],"names":[],"mappings":"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"}
@@ -21,4 +21,12 @@ export declare function acquireLock(): boolean;
21
21
  * Release queue lock.
22
22
  */
23
23
  export declare function releaseLock(): void;
24
+ /**
25
+ * Acquire AI grade lock. Returns true if acquired, false if held by another process.
26
+ */
27
+ export declare function acquireAIGradeLock(): boolean;
28
+ /**
29
+ * Release AI grade lock.
30
+ */
31
+ export declare function releaseAIGradeLock(): void;
24
32
  //# sourceMappingURL=queue.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"queue.d.ts","sourceRoot":"","sources":["../../src/store/queue.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAO9C,wBAAgB,cAAc,IAAI,IAAI,CAIrC;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI,CAG/C;AAED;;GAEG;AACH,wBAAgB,SAAS,IAAI,UAAU,EAAE,CAcxC;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,IAAI,CAS1D;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI,OAAO,CAyBrC;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI,IAAI,CAMlC"}
1
+ {"version":3,"file":"queue.d.ts","sourceRoot":"","sources":["../../src/store/queue.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAQ9C,wBAAgB,cAAc,IAAI,IAAI,CAIrC;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI,CAG/C;AAED;;GAEG;AACH,wBAAgB,SAAS,IAAI,UAAU,EAAE,CAcxC;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,IAAI,CAS1D;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI,OAAO,CAyBrC;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI,IAAI,CAMlC;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,OAAO,CAuB5C;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,IAAI,CAMzC"}
@@ -6,12 +6,15 @@ exports.readQueue = readQueue;
6
6
  exports.writeQueue = writeQueue;
7
7
  exports.acquireLock = acquireLock;
8
8
  exports.releaseLock = releaseLock;
9
+ exports.acquireAIGradeLock = acquireAIGradeLock;
10
+ exports.releaseAIGradeLock = releaseAIGradeLock;
9
11
  const node_fs_1 = require("node:fs");
10
12
  const node_path_1 = require("node:path");
11
13
  const node_os_1 = require("node:os");
12
14
  const STORE_DIR = (0, node_path_1.join)((0, node_os_1.homedir)(), ".cc-proficiency");
13
15
  const QUEUE_FILE = (0, node_path_1.join)(STORE_DIR, "queue.jsonl");
14
16
  const QUEUE_LOCK = (0, node_path_1.join)(STORE_DIR, "queue.lock");
17
+ const AI_GRADE_LOCK = (0, node_path_1.join)(STORE_DIR, "ai-grade.lock");
15
18
  const LOCK_STALE_MS = 120_000; // 120 seconds (accounts for network calls in mergeAndPush)
16
19
  function ensureStoreDir() {
17
20
  if (!(0, node_fs_1.existsSync)(STORE_DIR)) {
@@ -102,4 +105,45 @@ function releaseLock() {
102
105
  // already released
103
106
  }
104
107
  }
108
+ /**
109
+ * Acquire AI grade lock. Returns true if acquired, false if held by another process.
110
+ */
111
+ function acquireAIGradeLock() {
112
+ ensureStoreDir();
113
+ if ((0, node_fs_1.existsSync)(AI_GRADE_LOCK)) {
114
+ try {
115
+ const lockContent = (0, node_fs_1.readFileSync)(AI_GRADE_LOCK, "utf-8");
116
+ const lockTime = parseInt(lockContent, 10);
117
+ if (Date.now() - lockTime < LOCK_STALE_MS) {
118
+ return false; // lock is fresh, another process is running
119
+ }
120
+ // Stale lock — break it
121
+ (0, node_fs_1.unlinkSync)(AI_GRADE_LOCK);
122
+ }
123
+ catch {
124
+ try {
125
+ (0, node_fs_1.unlinkSync)(AI_GRADE_LOCK);
126
+ }
127
+ catch { /* ignore */ }
128
+ }
129
+ }
130
+ try {
131
+ (0, node_fs_1.writeFileSync)(AI_GRADE_LOCK, String(Date.now()), { flag: "wx" }); // O_EXCL
132
+ return true;
133
+ }
134
+ catch {
135
+ return false; // another process beat us
136
+ }
137
+ }
138
+ /**
139
+ * Release AI grade lock.
140
+ */
141
+ function releaseAIGradeLock() {
142
+ try {
143
+ (0, node_fs_1.unlinkSync)(AI_GRADE_LOCK);
144
+ }
145
+ catch {
146
+ // already released
147
+ }
148
+ }
105
149
  //# sourceMappingURL=queue.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"queue.js","sourceRoot":"","sources":["../../src/store/queue.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"queue.js","sourceRoot":"","sources":["../../src/store/queue.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -240,6 +240,45 @@ export interface SetupChecklist {
240
240
  hasAgents: boolean;
241
241
  hasSkills: boolean;
242
242
  }
243
+ export type AIDomainId = "goal-achievement" | "collaboration-quality" | "workflow-mastery" | "growth-learning" | "verification-quality";
244
+ export interface AIGradedCriterion {
245
+ question: string;
246
+ score: number;
247
+ evidence: string;
248
+ }
249
+ export interface AIGradedDomain {
250
+ id: AIDomainId;
251
+ criteria: AIGradedCriterion[];
252
+ total: number;
253
+ level: "novice" | "proficient" | "expert";
254
+ summary: string;
255
+ }
256
+ export interface AIGradingResult {
257
+ domains: AIGradedDomain[];
258
+ overall: string;
259
+ model: string;
260
+ gradedAt: string;
261
+ rubricVersion: string;
262
+ cacheKey?: string;
263
+ }
264
+ export type AIPhase = "insufficient" | "early" | "full";
265
+ export interface ParsedRubricCriterion {
266
+ q: string;
267
+ title: string;
268
+ anchors: string;
269
+ evidence: string;
270
+ }
271
+ export interface ParsedRubricDomain {
272
+ id: AIDomainId;
273
+ label: string;
274
+ description: string;
275
+ criteria: ParsedRubricCriterion[];
276
+ }
277
+ export interface ParsedRubric {
278
+ domains: ParsedRubricDomain[];
279
+ antiGaming: string;
280
+ systemPromptHeader: string;
281
+ }
243
282
  export interface CCProficiencyConfig {
244
283
  username?: string;
245
284
  gistId?: string;
@@ -248,6 +287,7 @@ export interface CCProficiencyConfig {
248
287
  locale?: string;
249
288
  leaderboard?: boolean;
250
289
  publicGistId?: string;
290
+ aiGrading?: boolean;
251
291
  }
252
292
  export interface SessionSnapshot {
253
293
  sessionId: string;
@@ -263,6 +303,12 @@ export interface LocalStore {
263
303
  lastUpdated?: string;
264
304
  knownProjectCwds?: string[];
265
305
  tokenLog?: TokenLogEntry[];
306
+ lastAIResult?: AIGradingResult;
307
+ aiEvidence?: {
308
+ achievedRate: number;
309
+ frictionSatisfiedCount: number;
310
+ promptLengthTrend: number;
311
+ };
266
312
  }
267
313
  export interface TokenLogEntry {
268
314
  sessionId: string;
@@ -339,6 +385,11 @@ export interface AchievementContext {
339
385
  features: FeatureInventory;
340
386
  activeDates: string[];
341
387
  leaderboard?: boolean;
388
+ aiEvidence?: {
389
+ achievedRate: number;
390
+ frictionSatisfiedCount: number;
391
+ promptLengthTrend: number;
392
+ };
342
393
  }
343
394
  export interface PublicProfile {
344
395
  version: "1.0.0";
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ # AI Grading Rubrics
2
+
3
+ This directory contains the rubric files used by cc-proficiency's AI grading system.
4
+
5
+ ## How It Works
6
+
7
+ The AI grading system evaluates Claude Code usage across 5 outcome-focused domains.
8
+ Each domain has its own markdown file with criteria, numeric anchors, and evidence
9
+ descriptions. At grading time, the rubric loader reads these files and assembles a
10
+ prompt for evaluation.
11
+
12
+ ## File Structure
13
+
14
+ | File | Purpose |
15
+ |------|---------|
16
+ | `system-prompt-header.md` | Role definition and output format for the AI evaluator |
17
+ | `goal-achievement.md` | Domain 1: Goal clarity, achievement rate, complexity |
18
+ | `collaboration-quality.md` | Domain 2: Friction recovery, direction clarity, feedback |
19
+ | `workflow-mastery.md` | Domain 3: Session strategy, efficiency, coordination |
20
+ | `growth-learning.md` | Domain 4: Trajectory improvements over time |
21
+ | `verification-quality.md` | Domain 5: Outcome reliability, error handling, refinement |
22
+ | `anti-gaming.md` | Shared anti-gaming rules applied across all domains |
23
+
24
+ ## Editing Rubrics
25
+
26
+ Each domain file uses a simple format:
27
+
28
+ 1. **Frontmatter** (YAML-like, between `---` delimiters): `id`, `label`, `description`
29
+ 2. **Criteria sections**: `## Q1: Title` followed by `**Anchors:**` and `**Evidence:**`
30
+
31
+ Changes to these files take effect on the next `cc-proficiency ai-grade` run.
32
+ No code changes are required. The rubric content hash is part of the cache key,
33
+ so edits automatically invalidate cached results.
34
+
35
+ ## Scoring
36
+
37
+ - Each criterion is scored 1-5 by the AI evaluator
38
+ - Totals, levels, and achievements are computed deterministically (not by the AI)
39
+ - When data is insufficient for a criterion, the AI scores it 3 (neutral)
@@ -0,0 +1,11 @@
1
+ ANTI-GAMING RULES (apply across all domains):
2
+
3
+ - "Respond with OK" warmup sessions are NOT productive. Do not count them as achieved goals or substantive work.
4
+ - High tool calls with zero meaningful pattern = flailing, not proficiency. Look for purposeful tool sequences, not raw volume.
5
+ - Config presence without usage evidence = max score 2 for related criteria. Having hooks installed but never triggered is not mastery.
6
+ - Session count alone is not evidence of quality. 500 shallow sessions do not outrank 100 deep productive ones.
7
+ - Repetitive identical sessions suggest automation, not skill. Score accordingly.
8
+ - When session-meta quantitative signals conflict with facet qualitative signals, weight session-meta higher (broader coverage).
9
+ - Do NOT reward sparse field presence as skill. A user with git_commits on 5% of sessions is not necessarily shipping less than one with 50% — the field is unreliable.
10
+ - Duration alone is not evidence of quality. Short effective sessions can score higher than long unfocused ones.
11
+ - Tool diversity without depth is breadth-gaming. A user who uses 20 tool types once each scores lower than one who uses 8 tools effectively across sessions.
@@ -0,0 +1,25 @@
1
+ ---
2
+ id: collaboration-quality
3
+ label: Collaboration Quality
4
+ description: How effectively does the user partner with Claude?
5
+ ---
6
+
7
+ ## Q1: Error recovery skill
8
+ **Anchors:** 1=errors unresolved (sessions end after errors), 2=slow recovery, 3=basic recovery (continues after errors), 4=recovers and adapts approach, 5=systematic recovery with strategy changes
9
+ **Evidence:** Session-meta `tool_errors` and `tool_error_categories` combined with continued tool activity after errors. Sessions where tool_errors > 0 but tool activity continues indicate recovery.
10
+
11
+ ## Q2: Direction clarity (friction)
12
+ **Anchors:** 1=frequent misalignment, 2=regular misalignment, 3=occasional misalignment, 4=rare misalignment, 5=consistently clear direction
13
+ **Evidence:** Session-meta `tool_errors` rate as weaker proxy for direction issues. When FACET_AVAILABLE: use facets `friction_counts.wrong_approach` rate for direct measurement. Without facets, score conservatively toward 3.
14
+
15
+ ## Q3: Outcome satisfaction
16
+ **Anchors:** 1=<30% satisfied, 2=30-50%, 3=50-70%, 4=70-85%, 5=>85%
17
+ **Evidence:** Facets `user_satisfaction_counts` when available (precomputed rate). Disclose coverage %. When facets unavailable or coverage <20%, score 3 (insufficient signal).
18
+
19
+ ## Q4: AI leverage effectiveness
20
+ **Anchors:** 1=underutilized (1-2 basic tools only), 2=basic usage, 3=adequate leverage, 4=good leverage across tools, 5=maximizes value with advanced features
21
+ **Evidence:** Rule-engine FeatureInventory: tool diversity, advanced features used (hooks, skills, MCP, agents). When FACET_AVAILABLE: also use facets `claude_helpfulness` distribution for qualitative depth.
22
+
23
+ ## Q5: Session completion ratio
24
+ **Anchors:** 1=<30% of sessions reach substantive work, 2=30-50%, 3=50-70%, 4=70-85%, 5=>85% of sessions reach substantive output
25
+ **Evidence:** Session-meta: proportion of non-warmup sessions with substantive tool activity (>5 tool calls) as proxy for reaching meaningful completion.
@@ -0,0 +1,25 @@
1
+ ---
2
+ id: goal-achievement
3
+ label: Goal Achievement
4
+ description: How effectively does the user define and accomplish objectives?
5
+ ---
6
+
7
+ ## Q1: Goal clarity & specificity
8
+ **Anchors:** 1=vague single-word goals, 2=basic intent visible, 3=clear goals with context, 4=well-defined with constraints, 5=expert-level framing with success criteria
9
+ **Evidence:** Session-meta `first_prompt` word count and structure (available on all sessions). When FACET_AVAILABLE: also use facets `underlying_goal` text quality for richer assessment.
10
+
11
+ ## Q2: Achievement rate
12
+ **Anchors:** 1=<20% achieved, 2=20-40%, 3=40-60%, 4=60-80%, 5=>80%
13
+ **Evidence:** Facets `outcome` distribution when available (precomputed achieved_rate). Disclose coverage %. When facets unavailable or coverage <20%, score 3 (insufficient signal).
14
+
15
+ ## Q3: Session purposefulness
16
+ **Anchors:** 1=mostly warmups/idle, 2=many warmups or abandoned, 3=mixed productive and idle, 4=mostly productive, 5=consistently productive sessions
17
+ **Evidence:** Session-meta warmup ratio from `first_prompt` pattern detection (e.g., "Respond with OK"). Tool activity ratio: sessions with >0 tool calls / total sessions.
18
+
19
+ ## Q4: Project engagement depth
20
+ **Anchors:** 1=single project one-off, 2=few projects shallow, 3=some sustained engagement, 4=multi-session projects, 5=deep multi-session projects with sustained effort
21
+ **Evidence:** Session-meta `project_path`: sessions per unique project distribution. Look for projects with repeated engagement over time rather than breadth alone.
22
+
23
+ ## Q5: Task completion signals
24
+ **Anchors:** 1=mostly abandoned (low tool activity), 2=many sessions end early, 3=mixed completion evidence, 4=most sessions show substantive work, 5=consistently substantive tool activity indicating completion
25
+ **Evidence:** Session-meta: sessions with >5 tool calls as proxy for substantive work. Proportion of non-warmup sessions with meaningful tool activity. Do NOT penalize sparse `lines_added` — use tool call volume as primary proxy.
@@ -0,0 +1,25 @@
1
+ ---
2
+ id: growth-learning
3
+ label: Growth & Learning
4
+ description: Is the user improving over time? Requires sufficient data for meaningful trends.
5
+ ---
6
+
7
+ ## Q1: Friction trajectory
8
+ **Anchors:** 1=increasing friction over time, 2=slightly increasing, 3=flat or insufficient data, 4=slightly declining, 5=clearly declining friction
9
+ **Evidence:** Facets `friction_counts` first-half vs second-half comparison when available (requires >=20 facets). When FACET_AVAILABLE and SUFFICIENT_FOR_TRENDS: use facet trend. Otherwise score 3 (insufficient for trend analysis).
10
+
11
+ ## Q2: Tool adoption curve
12
+ **Anchors:** 1=static tool usage throughout, 2=minimal new tools, 3=gradual adoption of new tools, 4=steady new tool adoption, 5=consistent new tool types appearing in later sessions
13
+ **Evidence:** Session-meta: new `tool_counts` key types appearing in chronologically later sessions vs earlier sessions. Compare tool vocabulary in first-half vs second-half of session history.
14
+
15
+ ## Q3: Feature adoption progression
16
+ **Anchors:** 1=basic features only, 2=mostly basic, 3=some intermediate features, 4=intermediate plus some advanced, 5=advanced features adopted (agents, worktrees, MCP, task management, skills)
17
+ **Evidence:** Rule-engine FeatureInventory: presence of advanced-tier features. Classify features into basic (Read, Edit, Bash), intermediate (Grep, Glob, hooks), advanced (agents, worktrees, MCP, task mgmt, skills).
18
+
19
+ ## Q4: Capability breadth expansion
20
+ **Anchors:** 1=narrow and unchanging, 2=minimal expansion, 3=some variety growth, 4=steady breadth increase, 5=broad and growing capability set
21
+ **Evidence:** Session-meta: unique `tool_counts` keys across time windows. Compare distinct tool types used in early sessions vs recent sessions. Growth in unique tool types indicates expanding capability.
22
+
23
+ ## Q5: Resilience development
24
+ **Anchors:** 1=same failures repeat consistently, 2=slow improvement, 3=mixed or insufficient data, 4=good learning from errors, 5=learns from errors — decreasing error rate over time
25
+ **Evidence:** Session-meta: `tool_errors` rate trend over chronological session windows (declining = learning). When FACET_AVAILABLE: also use facets `friction_detail` to judge if same friction types recur. Without facets, use error rate trend alone.