@prism-d1/cli 1.0.99 → 1.2.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 (162) hide show
  1. package/dist/assets/github-workflows/prism-agent-eval.yml +2 -1
  2. package/dist/assets/github-workflows/prism-eval-gate-kiro.yml +11 -1
  3. package/dist/assets/gitlab-workflows/prism-eval-gate.yml +8 -0
  4. package/dist/assets/infra/lib/constructs/otel-collector-construct.ts +312 -0
  5. package/dist/assets/infra/lib/dashboard-stack.ts +74 -45
  6. package/dist/assets/infra/lib/lambda/otel-receiver.ts +324 -12
  7. package/dist/assets/infra/lib/lambda/pre-token-generation.ts +79 -0
  8. package/dist/assets/infra/lib/lambda/pricing/litellm-snapshot.json +3769 -0
  9. package/dist/assets/infra/lib/lambda/pricing/price-source.ts +56 -0
  10. package/dist/assets/infra/lib/lambda/pricing/price-table.ts +240 -0
  11. package/dist/assets/infra/lib/lambda/pricing/prices-key.ts +6 -0
  12. package/dist/assets/infra/lib/lambda/pricing/reprice.ts +108 -0
  13. package/dist/assets/infra/lib/lambda/pricing-refresh.ts +352 -0
  14. package/dist/assets/infra/lib/lambda/velocity-widget.ts +397 -1
  15. package/dist/assets/infra/lib/metrics-pipeline-stack.ts +13 -0
  16. package/dist/assets/infra/package.json +5 -2
  17. package/dist/assets/metric-hooks/prepare-commit-msg +3 -1
  18. package/dist/src/codewatch/config.d.ts +17 -0
  19. package/dist/src/codewatch/config.d.ts.map +1 -0
  20. package/dist/src/codewatch/config.js +40 -0
  21. package/dist/src/codewatch/config.js.map +1 -0
  22. package/dist/src/codewatch/gitleaks.d.ts +49 -0
  23. package/dist/src/codewatch/gitleaks.d.ts.map +1 -0
  24. package/dist/src/codewatch/gitleaks.js +160 -0
  25. package/dist/src/codewatch/gitleaks.js.map +1 -0
  26. package/dist/src/codewatch/globalHooks.d.ts +52 -0
  27. package/dist/src/codewatch/globalHooks.d.ts.map +1 -0
  28. package/dist/src/codewatch/globalHooks.js +235 -0
  29. package/dist/src/codewatch/globalHooks.js.map +1 -0
  30. package/dist/src/codewatch/hooks.d.ts +38 -0
  31. package/dist/src/codewatch/hooks.d.ts.map +1 -0
  32. package/dist/src/codewatch/hooks.js +176 -0
  33. package/dist/src/codewatch/hooks.js.map +1 -0
  34. package/dist/src/codewatch/prepush.d.ts +37 -0
  35. package/dist/src/codewatch/prepush.d.ts.map +1 -0
  36. package/dist/src/codewatch/prepush.js +231 -0
  37. package/dist/src/codewatch/prepush.js.map +1 -0
  38. package/dist/src/codewatch/results.d.ts +90 -0
  39. package/dist/src/codewatch/results.d.ts.map +1 -0
  40. package/dist/src/codewatch/results.js +121 -0
  41. package/dist/src/codewatch/results.js.map +1 -0
  42. package/dist/src/codewatch/reviewers/claude.d.ts +9 -0
  43. package/dist/src/codewatch/reviewers/claude.d.ts.map +1 -0
  44. package/dist/src/codewatch/reviewers/claude.js +48 -0
  45. package/dist/src/codewatch/reviewers/claude.js.map +1 -0
  46. package/dist/src/codewatch/reviewers/index.d.ts +39 -0
  47. package/dist/src/codewatch/reviewers/index.d.ts.map +1 -0
  48. package/dist/src/codewatch/reviewers/index.js +97 -0
  49. package/dist/src/codewatch/reviewers/index.js.map +1 -0
  50. package/dist/src/codewatch/reviewers/kiro.d.ts +14 -0
  51. package/dist/src/codewatch/reviewers/kiro.d.ts.map +1 -0
  52. package/dist/src/codewatch/reviewers/kiro.js +32 -0
  53. package/dist/src/codewatch/reviewers/kiro.js.map +1 -0
  54. package/dist/src/codewatch/reviewers/types.d.ts +56 -0
  55. package/dist/src/codewatch/reviewers/types.d.ts.map +1 -0
  56. package/dist/src/codewatch/reviewers/types.js +91 -0
  57. package/dist/src/codewatch/reviewers/types.js.map +1 -0
  58. package/dist/src/codewatch/rules.d.ts +12 -0
  59. package/dist/src/codewatch/rules.d.ts.map +1 -0
  60. package/dist/src/codewatch/rules.js +27 -0
  61. package/dist/src/codewatch/rules.js.map +1 -0
  62. package/dist/src/commands/_top/dashboard.d.ts +17 -0
  63. package/dist/src/commands/_top/dashboard.d.ts.map +1 -0
  64. package/dist/src/commands/_top/dashboard.js +76 -0
  65. package/dist/src/commands/_top/dashboard.js.map +1 -0
  66. package/dist/src/commands/bedrock-protection/scan-account.d.ts.map +1 -1
  67. package/dist/src/commands/bedrock-protection/scan-account.js +2 -1
  68. package/dist/src/commands/bedrock-protection/scan-account.js.map +1 -1
  69. package/dist/src/commands/bedrock-protection/scan-org.d.ts.map +1 -1
  70. package/dist/src/commands/bedrock-protection/scan-org.js +16 -4
  71. package/dist/src/commands/bedrock-protection/scan-org.js.map +1 -1
  72. package/dist/src/commands/bootstrapper/install-eval-harness.d.ts.map +1 -1
  73. package/dist/src/commands/bootstrapper/install-eval-harness.js +15 -48
  74. package/dist/src/commands/bootstrapper/install-eval-harness.js.map +1 -1
  75. package/dist/src/commands/bootstrapper/install-git-hooks.d.ts +13 -0
  76. package/dist/src/commands/bootstrapper/install-git-hooks.d.ts.map +1 -1
  77. package/dist/src/commands/bootstrapper/install-git-hooks.js +28 -147
  78. package/dist/src/commands/bootstrapper/install-git-hooks.js.map +1 -1
  79. package/dist/src/commands/bootstrapper/setup-otel-sync.d.ts.map +1 -1
  80. package/dist/src/commands/bootstrapper/setup-otel-sync.js +5 -39
  81. package/dist/src/commands/bootstrapper/setup-otel-sync.js.map +1 -1
  82. package/dist/src/commands/codewatch/pre-commit.d.ts +7 -0
  83. package/dist/src/commands/codewatch/pre-commit.d.ts.map +1 -0
  84. package/dist/src/commands/codewatch/pre-commit.js +30 -0
  85. package/dist/src/commands/codewatch/pre-commit.js.map +1 -0
  86. package/dist/src/commands/codewatch/pre-push.d.ts +16 -0
  87. package/dist/src/commands/codewatch/pre-push.d.ts.map +1 -0
  88. package/dist/src/commands/codewatch/pre-push.js +32 -0
  89. package/dist/src/commands/codewatch/pre-push.js.map +1 -0
  90. package/dist/src/commands/codewatch/report.d.ts +22 -0
  91. package/dist/src/commands/codewatch/report.d.ts.map +1 -0
  92. package/dist/src/commands/codewatch/report.js +64 -0
  93. package/dist/src/commands/codewatch/report.js.map +1 -0
  94. package/dist/src/commands/enable/codewatch.d.ts +15 -0
  95. package/dist/src/commands/enable/codewatch.d.ts.map +1 -0
  96. package/dist/src/commands/enable/codewatch.js +186 -0
  97. package/dist/src/commands/enable/codewatch.js.map +1 -0
  98. package/dist/src/commands/git/claude-session-context.d.ts.map +1 -1
  99. package/dist/src/commands/git/claude-session-context.js +2 -1
  100. package/dist/src/commands/git/claude-session-context.js.map +1 -1
  101. package/dist/src/commands/git/commit-trailers.js +1 -1
  102. package/dist/src/commands/git/commit-trailers.js.map +1 -1
  103. package/dist/src/commands/workshop/verify-setup.d.ts.map +1 -1
  104. package/dist/src/commands/workshop/verify-setup.js +5 -3
  105. package/dist/src/commands/workshop/verify-setup.js.map +1 -1
  106. package/dist/src/dashboard/codewatch.d.ts +106 -0
  107. package/dist/src/dashboard/codewatch.d.ts.map +1 -0
  108. package/dist/src/dashboard/codewatch.js +119 -0
  109. package/dist/src/dashboard/codewatch.js.map +1 -0
  110. package/dist/src/dashboard/commits.d.ts +96 -0
  111. package/dist/src/dashboard/commits.d.ts.map +1 -0
  112. package/dist/src/dashboard/commits.js +207 -0
  113. package/dist/src/dashboard/commits.js.map +1 -0
  114. package/dist/src/dashboard/page.d.ts +10 -0
  115. package/dist/src/dashboard/page.d.ts.map +1 -0
  116. package/dist/src/dashboard/page.js +315 -0
  117. package/dist/src/dashboard/page.js.map +1 -0
  118. package/dist/src/dashboard/payload.d.ts +111 -0
  119. package/dist/src/dashboard/payload.d.ts.map +1 -0
  120. package/dist/src/dashboard/payload.js +93 -0
  121. package/dist/src/dashboard/payload.js.map +1 -0
  122. package/dist/src/dashboard/report.d.ts +99 -0
  123. package/dist/src/dashboard/report.d.ts.map +1 -0
  124. package/dist/src/dashboard/report.js +300 -0
  125. package/dist/src/dashboard/report.js.map +1 -0
  126. package/dist/src/dashboard/repos.d.ts +58 -0
  127. package/dist/src/dashboard/repos.d.ts.map +1 -0
  128. package/dist/src/dashboard/repos.js +111 -0
  129. package/dist/src/dashboard/repos.js.map +1 -0
  130. package/dist/src/dashboard/server.d.ts +52 -0
  131. package/dist/src/dashboard/server.d.ts.map +1 -0
  132. package/dist/src/dashboard/server.js +163 -0
  133. package/dist/src/dashboard/server.js.map +1 -0
  134. package/dist/src/dashboard/setup.d.ts +52 -0
  135. package/dist/src/dashboard/setup.d.ts.map +1 -0
  136. package/dist/src/dashboard/setup.js +129 -0
  137. package/dist/src/dashboard/setup.js.map +1 -0
  138. package/dist/src/dashboard/usage.d.ts +43 -0
  139. package/dist/src/dashboard/usage.d.ts.map +1 -0
  140. package/dist/src/dashboard/usage.js +88 -0
  141. package/dist/src/dashboard/usage.js.map +1 -0
  142. package/dist/src/index.d.ts +1 -0
  143. package/dist/src/index.d.ts.map +1 -1
  144. package/dist/src/index.js +40 -1
  145. package/dist/src/index.js.map +1 -1
  146. package/dist/src/utils/audit-bedrock.d.ts +1 -0
  147. package/dist/src/utils/audit-bedrock.d.ts.map +1 -1
  148. package/dist/src/utils/audit-bedrock.js +133 -0
  149. package/dist/src/utils/audit-bedrock.js.map +1 -1
  150. package/dist/src/utils/audit-org.d.ts +1 -0
  151. package/dist/src/utils/audit-org.d.ts.map +1 -1
  152. package/dist/src/utils/audit-org.js +155 -0
  153. package/dist/src/utils/audit-org.js.map +1 -1
  154. package/dist/src/utils/otel-sync-schedule.d.ts +22 -0
  155. package/dist/src/utils/otel-sync-schedule.d.ts.map +1 -0
  156. package/dist/src/utils/otel-sync-schedule.js +68 -0
  157. package/dist/src/utils/otel-sync-schedule.js.map +1 -0
  158. package/dist/src/utils/tool-check.d.ts +14 -0
  159. package/dist/src/utils/tool-check.d.ts.map +1 -0
  160. package/dist/src/utils/tool-check.js +42 -0
  161. package/dist/src/utils/tool-check.js.map +1 -0
  162. package/package.json +3 -2
@@ -1,156 +1,37 @@
1
- import { existsSync, mkdirSync, readFileSync, writeFileSync, copyFileSync, chmodSync, rmSync } from 'node:fs';
2
- import { resolve, dirname } from 'node:path';
3
- import { fileURLToPath } from 'node:url';
4
- import { createInterface } from 'node:readline';
5
- import { homedir } from 'node:os';
6
- import { getAssetPath } from '../../utils/root.js';
7
- import { run } from '../../utils/exec.js';
8
- const __dirname = dirname(fileURLToPath(import.meta.url));
9
- const HOOKS_SOURCE = getAssetPath(import.meta.url, 'bootstrapper/metric-hooks');
10
- function prompt(question) {
11
- const rl = createInterface({ input: process.stdin, output: process.stdout });
12
- return new Promise((r) => rl.question(question, (a) => { rl.close(); r(a.trim()); }));
13
- }
1
+ import enableCodewatch from '../enable/codewatch.js';
2
+ /**
3
+ * DEPRECATED alias for `prism-cli enable codewatch`.
4
+ *
5
+ * This used to install the prepare-commit-msg hook that wrote AI-Origin and
6
+ * token/cost trailers. Commit trailers and the token tracker are retired (usage
7
+ * tracking is codeburn), so that hook is no longer installed. The command is
8
+ * kept so existing scripts and docs keep working: it prints a deprecation
9
+ * notice and runs `enable codewatch`, which also removes the old trailer hook.
10
+ *
11
+ * The old trailer flags are accepted and ignored so pinned invocations do not
12
+ * fail on an unknown option.
13
+ */
14
14
  export default {
15
- description: 'Install prepare-commit-msg hook and configure .prism/config.json',
15
+ description: '[deprecated] Alias for "prism-cli enable codewatch" (the prepare-commit-msg trailer hook is retired)',
16
16
  options: [
17
- { flags: '--team-id <id>', description: 'Team ID (skips interactive prompt)' },
18
- { flags: '--max-tokens <n>', description: 'Max tokens per commit (default: 1000000)' },
19
- { flags: '--max-cost <n>', description: 'Max cost per commit in USD (default: 100)' },
20
- { flags: '--global', description: 'Also set git template dir so all future clones get the hook' },
21
- { flags: '--uninstall', description: 'Remove PRISM hooks' },
17
+ { flags: '--team-id <id>', description: '[ignored] retired with commit trailers' },
18
+ { flags: '--max-tokens <n>', description: '[ignored] retired with the token tracker' },
19
+ { flags: '--max-cost <n>', description: '[ignored] retired with the token tracker' },
20
+ { flags: '--global', description: '[ignored] the global trailer template is no longer installed' },
21
+ { flags: '--reviewer <tool>', description: 'Passed to enable codewatch' },
22
+ { flags: '--uninstall', description: 'Passed to enable codewatch (also removes the legacy trailer hook on install)' },
22
23
  ],
23
24
  async action(opts) {
24
- const gitRootResult = run('git', ['rev-parse', '--show-toplevel']);
25
- const gitRoot = gitRootResult.ok ? gitRootResult.stdout : '';
26
- if (!gitRoot && !opts.global) {
27
- console.error('Error: not inside a git repository. Use --global to install the template without a repo.');
28
- process.exit(1);
29
- }
30
- // --global without a repo: just install the template and exit
31
- if (!gitRoot && opts.global) {
32
- const source = resolve(HOOKS_SOURCE, 'prepare-commit-msg');
33
- if (!existsSync(source)) {
34
- console.error(`Hook source not found: ${source}`);
35
- process.exit(1);
36
- }
37
- const home = homedir();
38
- const templateHooksDir = resolve(home, '.git-templates/hooks');
39
- mkdirSync(templateHooksDir, { recursive: true });
40
- copyFileSync(source, resolve(templateHooksDir, 'prepare-commit-msg'));
41
- chmodSync(resolve(templateHooksDir, 'prepare-commit-msg'), 0o755);
42
- run('git', ['config', '--global', 'init.templateDir', resolve(home, '.git-templates')]);
43
- console.log('Global template dir set — all future clones will get the hook automatically.');
44
- console.log('Run again inside a repo to install locally + configure .prism/config.json.');
45
- return;
46
- }
47
- const hooksDir = resolve(gitRoot, '.git/hooks');
48
- const prismDir = resolve(gitRoot, '.prism');
49
- const configFile = resolve(prismDir, 'config.json');
50
- // --- Uninstall ---
51
- if (opts.uninstall) {
52
- const target = resolve(hooksDir, 'prepare-commit-msg');
53
- if (existsSync(target) && readFileSync(target, 'utf8').includes('AI-Origin')) {
54
- rmSync(target, { force: true });
55
- console.log('Removed prepare-commit-msg hook.');
56
- }
57
- else {
58
- console.log('No PRISM hook found.');
59
- }
60
- return;
61
- }
62
- // --- Resolve team ID ---
63
- let teamId = opts.teamId || '';
64
- if (!teamId && existsSync(configFile)) {
65
- try {
66
- const existing = JSON.parse(readFileSync(configFile, 'utf8'));
67
- if (existing.team_id && existing.team_id !== 'YOUR_TEAM_ID') {
68
- const keep = await prompt(`Existing team ID: ${existing.team_id}. Keep? [Y/n] `);
69
- if (keep !== 'n' && keep !== 'N')
70
- teamId = existing.team_id;
71
- }
72
- }
73
- catch { /* ignore */ }
74
- }
75
- if (!teamId) {
76
- teamId = await prompt('Enter your team ID (e.g., team-payments): ');
77
- if (!teamId) {
78
- console.error('Error: team ID is required.');
79
- process.exit(1);
80
- }
81
- }
82
- // --- Create .prism/ ---
83
- mkdirSync(prismDir, { recursive: true });
84
- const maxTokens = parseInt(opts.maxTokens || '1000000', 10);
85
- const maxCost = parseFloat(opts.maxCost || '100');
86
- writeFileSync(configFile, JSON.stringify({ team_id: teamId, max_tokens: maxTokens, max_cost: maxCost }, null, 2) + '\n');
87
- console.log(`Config: ${configFile}`);
88
- // --- .gitignore (keep .prism/config.json trackable, no tokentracker in repo) ---
89
- const gitignore = resolve(gitRoot, '.gitignore');
90
- const ignoreEntry = '.prism/';
91
- if (existsSync(gitignore)) {
92
- const content = readFileSync(gitignore, 'utf8');
93
- if (!content.includes(ignoreEntry) && !content.includes('.prism/tokentracker/')) {
94
- // No entry needed — tokentracker is now in ~/.prism/ globally
95
- }
96
- }
97
- // --- Install hook ---
98
- const source = resolve(HOOKS_SOURCE, 'prepare-commit-msg');
99
- const target = resolve(hooksDir, 'prepare-commit-msg');
100
- if (!existsSync(source)) {
101
- console.error(`Hook source not found: ${source}`);
102
- process.exit(1);
103
- }
104
- // Back up existing non-PRISM hook
105
- if (existsSync(target) && !readFileSync(target, 'utf8').includes('AI-Origin')) {
106
- copyFileSync(target, `${target}.pre-prism`);
107
- console.log('Backed up existing prepare-commit-msg to prepare-commit-msg.pre-prism');
108
- }
109
- copyFileSync(source, target);
110
- chmodSync(target, 0o755);
111
- console.log('Installed prepare-commit-msg hook.');
112
- // --- Global template dir (--global flag) ---
25
+ console.warn('⚠ "prism-cli bootstrapper install-git-hooks" is deprecated; use "prism-cli enable codewatch".');
26
+ console.warn(' The prepare-commit-msg trailer hook (AI-Origin, token/cost limits) is retired; usage tracking is codeburn.');
27
+ const ignored = ['teamId', 'maxTokens', 'maxCost', 'global'].filter((k) => opts[k] !== undefined);
28
+ if (ignored.length)
29
+ console.warn(` Ignoring retired option(s): ${ignored.join(', ')}`);
113
30
  if (opts.global) {
114
- const home = homedir();
115
- const templateHooksDir = resolve(home, '.git-templates/hooks');
116
- mkdirSync(templateHooksDir, { recursive: true });
117
- copyFileSync(source, resolve(templateHooksDir, 'prepare-commit-msg'));
118
- chmodSync(resolve(templateHooksDir, 'prepare-commit-msg'), 0o755);
119
- run('git', ['config', '--global', 'init.templateDir', resolve(home, '.git-templates')]);
120
- console.log('Global template dir set — all future clones will get the hook automatically.');
31
+ console.warn(' If you used --global before, remove the old template hook: ~/.git-templates/hooks/prepare-commit-msg');
121
32
  }
122
- // --- Summary ---
123
- console.log(`\nTeam: ${teamId}`);
124
- console.log('Every commit will now get AI-Origin, AI-Tool, and token trailers automatically.');
125
- // --- Claude Code session hook ---
126
- installClaudeSessionHook();
33
+ console.warn('');
34
+ await enableCodewatch.action({ reviewer: opts.reviewer, uninstall: opts.uninstall });
127
35
  },
128
36
  };
129
- const CLAUDE_HOOK_COMMAND = 'prism-cli git claude-session-context';
130
- function installClaudeSessionHook() {
131
- const home = homedir();
132
- // Register the SessionStart hook in ~/.claude/settings.json.
133
- // The hook is served by `prism-cli git claude-session-context` (Node, no jq),
134
- // so there's no standalone script in ~/.local/bin and no PATH requirement.
135
- const claudeDir = resolve(home, '.claude');
136
- const settingsPath = resolve(claudeDir, 'settings.json');
137
- mkdirSync(claudeDir, { recursive: true });
138
- let settings = {};
139
- if (existsSync(settingsPath)) {
140
- try {
141
- settings = JSON.parse(readFileSync(settingsPath, 'utf8'));
142
- }
143
- catch { /* ignore */ }
144
- }
145
- if (!settings.hooks)
146
- settings.hooks = {};
147
- let sessionStart = Array.isArray(settings.hooks.SessionStart) ? settings.hooks.SessionStart : [];
148
- // Drop any prior PRISM entry (legacy 'claude-session-id-hook' script or this
149
- // command) so re-running the installer upgrades cleanly without duplicates.
150
- sessionStart = sessionStart.filter((e) => !e?.hooks?.some((h) => h.command === 'claude-session-id-hook' || h.command === CLAUDE_HOOK_COMMAND));
151
- sessionStart.push({ matcher: '', hooks: [{ type: 'command', command: CLAUDE_HOOK_COMMAND, timeout: 5000 }] });
152
- settings.hooks.SessionStart = sessionStart;
153
- writeFileSync(settingsPath, JSON.stringify(settings, null, 2) + '\n');
154
- console.log(`Claude Code session hook installed (${CLAUDE_HOOK_COMMAND}).`);
155
- }
156
37
  //# sourceMappingURL=install-git-hooks.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"install-git-hooks.js","sourceRoot":"","sources":["../../../../src/commands/bootstrapper/install-git-hooks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"install-git-hooks.js","sourceRoot":"","sources":["../../../../src/commands/bootstrapper/install-git-hooks.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,MAAM,wBAAwB,CAAC;AAErD;;;;;;;;;;;GAWG;AACH,eAAe;IACb,WAAW,EAAE,sGAAsG;IACnH,OAAO,EAAE;QACP,EAAE,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,wCAAwC,EAAE;QAClF,EAAE,KAAK,EAAE,kBAAkB,EAAE,WAAW,EAAE,0CAA0C,EAAE;QACtF,EAAE,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,0CAA0C,EAAE;QACpF,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,8DAA8D,EAAE;QAClG,EAAE,KAAK,EAAE,mBAAmB,EAAE,WAAW,EAAE,4BAA4B,EAAE;QACzE,EAAE,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,8EAA8E,EAAE;KACtH;IACD,KAAK,CAAC,MAAM,CAAC,IAAyH;QACpI,OAAO,CAAC,IAAI,CAAC,gGAAgG,CAAC,CAAC;QAC/G,OAAO,CAAC,IAAI,CAAC,+GAA+G,CAAC,CAAC;QAC9H,MAAM,OAAO,GAAG,CAAC,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAE,IAAgC,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC;QAC/H,IAAI,OAAO,CAAC,MAAM;YAAE,OAAO,CAAC,IAAI,CAAC,kCAAkC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACzF,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,OAAO,CAAC,IAAI,CAAC,yGAAyG,CAAC,CAAC;QAC1H,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACjB,MAAM,eAAe,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;IACvF,CAAC;CACF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"setup-otel-sync.d.ts","sourceRoot":"","sources":["../../../../src/commands/bootstrapper/setup-otel-sync.ts"],"names":[],"mappings":";;;;;;iBA8UqB;QAAE,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE;;AAR5F,wBAqJE"}
1
+ {"version":3,"file":"setup-otel-sync.d.ts","sourceRoot":"","sources":["../../../../src/commands/bootstrapper/setup-otel-sync.ts"],"names":[],"mappings":";;;;;;iBAySqB;QAAE,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE;;AAR5F,wBAqJE"}
@@ -4,6 +4,7 @@ import { existsSync, mkdirSync, writeFileSync, readFileSync, unlinkSync } from '
4
4
  import { join } from 'node:path';
5
5
  import { run, runInteractive } from '../../utils/exec.js';
6
6
  import { withPrivateTemp } from '../../utils/tempfile.js';
7
+ import { CRON_MARKER, PLIST_LABEL, SCHTASK_NAME, otelLogDir, codeburnSyncConfigPath, linuxCrontabAvailable, darwinPlistPath, scheduleExists, schedulerName, } from '../../utils/otel-sync-schedule.js';
7
8
  function prompt(question, defaultValue) {
8
9
  const rl = createInterface({ input: process.stdin, output: process.stdout });
9
10
  const suffix = defaultValue ? ` [${defaultValue}]` : '';
@@ -15,10 +16,8 @@ function prompt(question, defaultValue) {
15
16
  });
16
17
  }
17
18
  // ---- Constants ----
18
- const CRON_MARKER = '# prism-otel-sync';
19
- const PLIST_LABEL = 'com.prism.otel-sync';
20
- const SCHTASK_NAME = 'PrismOtelSync';
21
- const LOG_DIR = join(homedir(), '.prism', 'logs');
19
+ // Marker, label and task name are shared with the dashboard's setup check.
20
+ const LOG_DIR = otelLogDir();
22
21
  /** Window the recurring sync pushes on every run. */
23
22
  const SYNC_SINCE = '7d';
24
23
  // ---- Scheduler helpers per OS ----
@@ -43,15 +42,6 @@ function syncArgs(since) {
43
42
  return ['sync', 'push', '--since', since, '--attribution'];
44
43
  }
45
44
  // ---- Linux: user crontab ----
46
- function linuxScheduleExists() {
47
- if (!linuxCrontabAvailable())
48
- return false;
49
- const result = run('crontab', ['-l']);
50
- return result.ok && result.stdout.includes(CRON_MARKER);
51
- }
52
- function linuxCrontabAvailable() {
53
- return run('which', ['crontab']).ok;
54
- }
55
45
  /**
56
46
  * Single-quotes a value for the crontab line.
57
47
  *
@@ -94,12 +84,6 @@ function linuxRemoveSchedule() {
94
84
  withPrivateTemp('crontab', lines.join('\n') + '\n', f => run('crontab', [f]));
95
85
  }
96
86
  // ---- macOS: LaunchAgent ----
97
- function darwinPlistPath() {
98
- return join(homedir(), 'Library', 'LaunchAgents', `${PLIST_LABEL}.plist`);
99
- }
100
- function darwinScheduleExists() {
101
- return existsSync(darwinPlistPath());
102
- }
103
87
  /**
104
88
  * Escapes a value for use inside a plist <string> element.
105
89
  *
@@ -157,10 +141,6 @@ function darwinRemoveSchedule() {
157
141
  }
158
142
  }
159
143
  // ---- Windows: schtasks ----
160
- function windowsScheduleExists() {
161
- const result = run('schtasks', ['/query', '/tn', SCHTASK_NAME, '/fo', 'CSV']);
162
- return result.ok;
163
- }
164
144
  /** Path of the generated batch wrapper the scheduled task invokes. */
165
145
  function windowsWrapperPath() {
166
146
  return join(homedir(), '.prism', 'otel-sync.cmd');
@@ -216,13 +196,6 @@ function windowsRemoveSchedule() {
216
196
  unlinkSync(wrapper);
217
197
  }
218
198
  // ---- Unified scheduler interface ----
219
- function scheduleExists() {
220
- switch (platform()) {
221
- case 'darwin': return darwinScheduleExists();
222
- case 'win32': return windowsScheduleExists();
223
- default: return linuxScheduleExists();
224
- }
225
- }
226
199
  function installSchedule(codeburnPath, intervalHours) {
227
200
  mkdirSync(LOG_DIR, { recursive: true });
228
201
  switch (platform()) {
@@ -242,13 +215,6 @@ function removeSchedule() {
242
215
  default: return linuxRemoveSchedule();
243
216
  }
244
217
  }
245
- function schedulerName() {
246
- switch (platform()) {
247
- case 'darwin': return 'LaunchAgent';
248
- case 'win32': return 'Scheduled Task';
249
- default: return 'crontab';
250
- }
251
- }
252
218
  // ---- Status ----
253
219
  function showStatus(codeburnPath) {
254
220
  console.log('\n📊 OTEL Sync Status\n');
@@ -263,7 +229,7 @@ function showStatus(codeburnPath) {
263
229
  console.log(' ✗ codeburn not found in PATH');
264
230
  }
265
231
  // Sync configured?
266
- const configPath = join(homedir(), '.config', 'codeburn', 'sync.json');
232
+ const configPath = codeburnSyncConfigPath();
267
233
  if (existsSync(configPath)) {
268
234
  try {
269
235
  const cfg = JSON.parse(readFileSync(configPath, 'utf8'));
@@ -367,7 +333,7 @@ export default {
367
333
  process.exit(1);
368
334
  }
369
335
  // 3. Check if codeburn sync is already configured for this URL
370
- const configPath = join(homedir(), '.config', 'codeburn', 'sync.json');
336
+ const configPath = codeburnSyncConfigPath();
371
337
  let needsSetup = true;
372
338
  if (existsSync(configPath)) {
373
339
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"setup-otel-sync.js","sourceRoot":"","sources":["../../../../src/commands/bootstrapper/setup-otel-sync.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"setup-otel-sync.js","sourceRoot":"","sources":["../../../../src/commands/bootstrapper/setup-otel-sync.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ /** Called by the pre-commit hook installed by `prism-cli enable codewatch`. */
2
+ declare const _default: {
3
+ description: string;
4
+ action(): never;
5
+ };
6
+ export default _default;
7
+ //# sourceMappingURL=pre-commit.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pre-commit.d.ts","sourceRoot":"","sources":["../../../../src/commands/codewatch/pre-commit.ts"],"names":[],"mappings":"AAIA,+EAA+E;;;;;AAC/E,wBAoBE"}
@@ -0,0 +1,30 @@
1
+ import { run } from '../../utils/exec.js';
2
+ import { gitleaksInstallHint, runPreCommit } from '../../codewatch/gitleaks.js';
3
+ import { REASON_GITLEAKS_MISSING } from '../../codewatch/results.js';
4
+ /** Called by the pre-commit hook installed by `prism-cli enable codewatch`. */
5
+ export default {
6
+ description: 'pre-commit hook: gitleaks scan of staged changes (blocks on a finding; installed by enable codewatch)',
7
+ action() {
8
+ const top = run('git', ['rev-parse', '--show-toplevel']);
9
+ if (!top.ok)
10
+ process.exit(0);
11
+ const out = runPreCommit(top.stdout);
12
+ const r = out.result;
13
+ if (r.status === 'findings') {
14
+ console.error(`prism: gitleaks found ${r.findings.length} secret(s) in the staged changes. Commit blocked.`);
15
+ for (const f of r.findings.slice(0, 10))
16
+ console.error(` [${f.rule}] ${f.file}${f.line ? `:${f.line}` : ''}`);
17
+ console.error('prism: remove it (and rotate it if it is real), allowlist a false positive in .gitleaks.toml,');
18
+ console.error(' or bypass once with git commit --no-verify (recorded as skipped at push time).');
19
+ }
20
+ else if (r.status === 'skipped' && r.reason === REASON_GITLEAKS_MISSING) {
21
+ console.error('prism: WARNING: secret scanning is off -- gitleaks is not installed. This commit was NOT scanned.');
22
+ console.error(`prism: install gitleaks: ${gitleaksInstallHint()}`);
23
+ }
24
+ else if (r.status === 'error') {
25
+ console.error(`prism: ${r.reason}${out.exitCode ? ' Commit blocked; fix the scan or bypass with --no-verify.' : ''}`);
26
+ }
27
+ process.exit(out.exitCode);
28
+ },
29
+ };
30
+ //# sourceMappingURL=pre-commit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pre-commit.js","sourceRoot":"","sources":["../../../../src/commands/codewatch/pre-commit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,qBAAqB,CAAC;AAC1C,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChF,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAErE,+EAA+E;AAC/E,eAAe;IACb,WAAW,EAAE,uGAAuG;IACpH,MAAM;QACJ,MAAM,GAAG,GAAG,GAAG,CAAC,KAAK,EAAE,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC,CAAC;QACzD,IAAI,CAAC,GAAG,CAAC,EAAE;YAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC7B,MAAM,GAAG,GAAG,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACrC,MAAM,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC;QACrB,IAAI,CAAC,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;YAC5B,OAAO,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC,QAAQ,CAAC,MAAM,mDAAmD,CAAC,CAAC;YAC7G,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;gBAAE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC/G,OAAO,CAAC,KAAK,CAAC,+FAA+F,CAAC,CAAC;YAC/G,OAAO,CAAC,KAAK,CAAC,uFAAuF,CAAC,CAAC;QACzG,CAAC;aAAM,IAAI,CAAC,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,KAAK,uBAAuB,EAAE,CAAC;YAC1E,OAAO,CAAC,KAAK,CAAC,mGAAmG,CAAC,CAAC;YACnH,OAAO,CAAC,KAAK,CAAC,4BAA4B,mBAAmB,EAAE,EAAE,CAAC,CAAC;QACrE,CAAC;aAAM,IAAI,CAAC,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YAChC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,2DAA2D,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACxH,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC;CACF,CAAC"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Called by the pre-push hook installed by `prism-cli enable codewatch`.
3
+ * Report only: exits 0 whatever happens.
4
+ */
5
+ declare const _default: {
6
+ description: string;
7
+ options: {
8
+ flags: string;
9
+ description: string;
10
+ }[];
11
+ action(opts: {
12
+ remote?: string;
13
+ }): never;
14
+ };
15
+ export default _default;
16
+ //# sourceMappingURL=pre-push.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pre-push.d.ts","sourceRoot":"","sources":["../../../../src/commands/codewatch/pre-push.ts"],"names":[],"mappings":"AAIA;;;GAGG;;;;;;;iBAIY;QAAE,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE;;AAHlC,wBAgBE"}
@@ -0,0 +1,32 @@
1
+ import { readFileSync } from 'node:fs';
2
+ import { run } from '../../utils/exec.js';
3
+ import { runPrePush } from '../../codewatch/prepush.js';
4
+ /**
5
+ * Called by the pre-push hook installed by `prism-cli enable codewatch`.
6
+ * Report only: exits 0 whatever happens.
7
+ */
8
+ export default {
9
+ description: 'pre-push hook: report-only code review of the branch diff (never blocks; installed by enable codewatch)',
10
+ options: [{ flags: '--remote <name>', description: 'Remote being pushed to (git passes it to the hook)' }],
11
+ action(opts) {
12
+ try {
13
+ const top = run('git', ['rev-parse', '--show-toplevel']);
14
+ if (top.ok) {
15
+ let stdin = '';
16
+ try {
17
+ stdin = readFileSync(0, 'utf8');
18
+ }
19
+ catch { /* no stdin */ }
20
+ runPrePush({ repoRoot: top.stdout, stdin, remote: opts.remote || null });
21
+ }
22
+ }
23
+ catch (e) {
24
+ try {
25
+ process.stderr.write(`prism: pre-push review failed (${e?.message || e}). Push continues.\n`);
26
+ }
27
+ catch { /* ignore */ }
28
+ }
29
+ process.exit(0);
30
+ },
31
+ };
32
+ //# sourceMappingURL=pre-push.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pre-push.js","sourceRoot":"","sources":["../../../../src/commands/codewatch/pre-push.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,GAAG,EAAE,MAAM,qBAAqB,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAExD;;;GAGG;AACH,eAAe;IACb,WAAW,EAAE,yGAAyG;IACtH,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,iBAAiB,EAAE,WAAW,EAAE,oDAAoD,EAAE,CAAC;IAC1G,MAAM,CAAC,IAAyB;QAC9B,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,GAAG,CAAC,KAAK,EAAE,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC,CAAC;YACzD,IAAI,GAAG,CAAC,EAAE,EAAE,CAAC;gBACX,IAAI,KAAK,GAAG,EAAE,CAAC;gBACf,IAAI,CAAC;oBAAC,KAAK,GAAG,YAAY,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;gBAAC,CAAC;gBAAC,MAAM,CAAC,CAAC,cAAc,CAAC,CAAC;gBACjE,UAAU,CAAC,EAAE,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,IAAI,EAAE,CAAC,CAAC;YAC3E,CAAC;QACH,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,IAAI,CAAC;gBAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,kCAAkC,CAAC,EAAE,OAAO,IAAI,CAAC,sBAAsB,CAAC,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;QAC/H,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;CACF,CAAC"}
@@ -0,0 +1,22 @@
1
+ /** Writes a scan report without the dashboard server. Same content as GET /report/<id>. */
2
+ declare const _default: {
3
+ description: string;
4
+ options: ({
5
+ flags: string;
6
+ description: string;
7
+ default?: undefined;
8
+ } | {
9
+ flags: string;
10
+ description: string;
11
+ default: string;
12
+ })[];
13
+ action(opts: {
14
+ repo?: string;
15
+ id?: string;
16
+ commit?: string;
17
+ format?: string;
18
+ output?: string;
19
+ }): undefined;
20
+ };
21
+ export default _default;
22
+ //# sourceMappingURL=report.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"report.d.ts","sourceRoot":"","sources":["../../../../src/commands/codewatch/report.ts"],"names":[],"mappings":"AAWA,2FAA2F;;;;;;;;;;;;iBAU5E;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,EAAE,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE;;AAThG,wBA8CE"}
@@ -0,0 +1,64 @@
1
+ import { writeFileSync } from 'node:fs';
2
+ import { resolve } from 'node:path';
3
+ import { run } from '../../utils/exec.js';
4
+ import { readResultEntries } from '../../codewatch/results.js';
5
+ import { readLog } from '../../dashboard/commits.js';
6
+ import { buildReport, findResultById, renderReportHtml, renderReportJson, renderReportMarkdown, reviewEntries, reviewForCommit, } from '../../dashboard/report.js';
7
+ const FORMATS = ['md', 'html', 'json'];
8
+ /** Writes a scan report without the dashboard server. Same content as GET /report/<id>. */
9
+ export default {
10
+ description: 'Write a codewatch scan report (one pre-push review and its secret scans) as Markdown, HTML or JSON',
11
+ options: [
12
+ { flags: '--repo <path>', description: 'Repository (default: the current one)' },
13
+ { flags: '--id <result-id>', description: 'Result id (file name in .prism/results/ without .json)' },
14
+ { flags: '--commit <sha>', description: 'Report on the newest review whose pushed range includes this commit' },
15
+ { flags: '--format <fmt>', description: `Output format: ${FORMATS.join(' | ')}`, default: 'md' },
16
+ { flags: '--output <file>', description: 'Write to a file instead of stdout' },
17
+ ],
18
+ action(opts) {
19
+ const fail = (msg) => { console.error(`Error: ${msg}`); process.exit(1); };
20
+ const format = (opts.format || 'md');
21
+ if (!FORMATS.includes(format))
22
+ fail(`--format must be one of: ${FORMATS.join(', ')}`);
23
+ if (opts.id && opts.commit)
24
+ fail('pass --id or --commit, not both');
25
+ const top = run('git', ['-C', resolve(opts.repo || '.'), 'rev-parse', '--show-toplevel']);
26
+ if (!top.ok)
27
+ fail(`not a git repository: ${resolve(opts.repo || '.')}`);
28
+ const repo = top.stdout;
29
+ const entries = readResultEntries(repo);
30
+ const log = readLog(repo);
31
+ let entry;
32
+ if (opts.id) {
33
+ entry = findResultById(repo, opts.id, entries);
34
+ if (!entry)
35
+ fail(`no result "${opts.id}" in ${repo}/.prism/results/`);
36
+ }
37
+ else if (opts.commit) {
38
+ entry = reviewForCommit(entries, opts.commit, log);
39
+ if (!entry)
40
+ fail(`no recorded pre-push review covers commit ${opts.commit}`);
41
+ }
42
+ else {
43
+ entry = reviewEntries(entries)[0];
44
+ if (!entry)
45
+ fail(`no pre-push reviews recorded in ${repo}/.prism/results/ yet`);
46
+ }
47
+ let report;
48
+ try {
49
+ report = buildReport(repo, entry, entries, { log });
50
+ }
51
+ catch (e) {
52
+ return fail(`${opts.id} is not a pre-push review (${e.message})`);
53
+ }
54
+ const out = format === 'json' ? renderReportJson(report) : format === 'html' ? renderReportHtml(report) : renderReportMarkdown(report);
55
+ if (opts.output) {
56
+ writeFileSync(opts.output, out);
57
+ console.error(`Wrote ${format} report ${report.id} to ${opts.output}`);
58
+ }
59
+ else {
60
+ process.stdout.write(out);
61
+ }
62
+ },
63
+ };
64
+ //# sourceMappingURL=report.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"report.js","sourceRoot":"","sources":["../../../../src/commands/codewatch/report.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ declare const _default: {
2
+ description: string;
3
+ options: {
4
+ flags: string;
5
+ description: string;
6
+ }[];
7
+ action(opts: {
8
+ reviewer?: string;
9
+ uninstall?: boolean;
10
+ global?: boolean;
11
+ force?: boolean;
12
+ }): Promise<void>;
13
+ };
14
+ export default _default;
15
+ //# sourceMappingURL=codewatch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codewatch.d.ts","sourceRoot":"","sources":["../../../../src/commands/enable/codewatch.ts"],"names":[],"mappings":";;;;;;iBAmDqB;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE;;AARlG,wBAgFE"}