phantom-pr 0.4.15 → 0.4.17
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.
|
@@ -148,23 +148,46 @@ export class LlmGenerator {
|
|
|
148
148
|
"- If runner is vitest and you need mocking: use `vi.fn()` or `vi.spyOn()` and import `vi` from vitest (e.g. `import { vi } from 'vitest'`).",
|
|
149
149
|
];
|
|
150
150
|
const systemPrompt = [
|
|
151
|
-
'You are a senior engineer writing
|
|
152
|
-
'
|
|
153
|
-
'
|
|
151
|
+
'You are a senior engineer writing behavioral unit tests.',
|
|
152
|
+
'',
|
|
153
|
+
'## ANALYSIS FIRST (internal, do not output)',
|
|
154
|
+
'Before writing tests, mentally analyze the target:',
|
|
155
|
+
'1. INPUTS: What parameters/props/arguments does it accept? What are valid/invalid values?',
|
|
156
|
+
'2. OUTPUTS: What does it return/render/emit? How do outputs change based on inputs?',
|
|
157
|
+
'3. SIDE EFFECTS: What external functions are called? When (mount/unmount/on-change)?',
|
|
158
|
+
'4. BRANCHES: Count all conditionals (if/else/ternary/switch). Each branch needs coverage.',
|
|
159
|
+
'5. ERROR PATHS: What can fail? How does it handle invalid input, null, empty, exceptions?',
|
|
160
|
+
'',
|
|
161
|
+
'## TEST BEHAVIORAL OUTCOMES (not implementation)',
|
|
162
|
+
'- Test WHAT happens, not HOW it happens internally',
|
|
163
|
+
'- Test observable results: return values, rendered output, mock calls with exact arguments',
|
|
164
|
+
'- One behavior per test case - test name describes the specific behavior verified',
|
|
165
|
+
'- Mock at boundaries only (APIs, hooks, external modules) - not internal functions',
|
|
166
|
+
'',
|
|
167
|
+
'## CONTRACT INFERENCE (critical for mocks)',
|
|
168
|
+
'- Look at HOW the target CALLS its dependencies to infer their contracts',
|
|
169
|
+
'- Example: if target has `analytics.track(userId, event)`, mock expects `track(userId, event)`',
|
|
170
|
+
'- DO NOT guess function signatures - read the actual calls in the target code',
|
|
171
|
+
'- The target file shows you exactly what arguments each dependency receives',
|
|
172
|
+
'',
|
|
173
|
+
'## REQUIRED COVERAGE',
|
|
174
|
+
`- At least ${tuning.minTestCases} test cases (aim for ${tuning.requestedTestCases}, max ${tuning.maxTestCases})`,
|
|
175
|
+
`- At least ${tuning.minExpectCalls} ${isPytest ? 'assert statements' : 'assertions'} total`,
|
|
176
|
+
'- Cover: happy path + at least 1 error/edge case + key conditional branches',
|
|
177
|
+
'',
|
|
178
|
+
'## OUTPUT FORMAT',
|
|
179
|
+
'Output MUST be a single unified diff touching ONLY test files.',
|
|
154
180
|
'- Touch at most 3 files.',
|
|
155
181
|
isPytest
|
|
156
182
|
? '- Each touched file must be a unit test file (e.g. tests/test_*.py).'
|
|
157
183
|
: '- Each touched file must be a unit test file (e.g. __tests__/x.test.ts or x.test.ts).',
|
|
158
|
-
'- You MAY add a new test file OR edit an existing test file
|
|
159
|
-
'- You MAY add fixture
|
|
160
|
-
`- IMPORTANT: You MUST include at least ${tuning.minTestCases} test cases. Aim for ${tuning.requestedTestCases} tests (hard cap ${tuning.maxTestCases}).`,
|
|
161
|
-
`- Include at least ${tuning.minExpectCalls} ${isPytest ? 'assert statements' : 'expect/assert calls'} total.`,
|
|
162
|
-
'- Your tests must assert behavior: inputs → outputs, error cases, and at least one edge case.',
|
|
184
|
+
'- You MAY add a new test file OR edit an existing test file.',
|
|
185
|
+
'- You MAY add fixture files ONLY under tests/fixtures/** or **/__fixtures__/**.',
|
|
163
186
|
...runnerRules,
|
|
164
187
|
anchorLine,
|
|
165
188
|
'- If you cannot safely test any anchor, output exactly: NO_SAFE_TESTS',
|
|
166
189
|
'- Do NOT modify package.json, configs, snapshots, or non-test files.',
|
|
167
|
-
'- Do NOT include
|
|
190
|
+
'- Do NOT include explanations or Markdown - unified diff ONLY.',
|
|
168
191
|
].join('\n');
|
|
169
192
|
const feedbackSection = (() => {
|
|
170
193
|
const fb = input.feedback ?? null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"llmGenerator.js","sourceRoot":"","sources":["../../../src/core/generator/llmGenerator.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"llmGenerator.js","sourceRoot":"","sources":["../../../src/core/generator/llmGenerator.ts"],"names":[],"mappings":"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"}
|