prism-pr 1.0.0-alpha.68 → 1.0.0-alpha.69
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.
- package/README.md +59 -0
- package/bin/run.js +1 -1
- package/dist/ai/agents/architecture-reviewer.d.ts.map +1 -1
- package/dist/ai/agents/architecture-reviewer.js +3 -1
- package/dist/ai/agents/architecture-reviewer.js.map +1 -1
- package/dist/ai/agents/blade-reviewer.js +1 -1
- package/dist/ai/agents/blade-reviewer.js.map +1 -1
- package/dist/ai/agents/config-reviewer.js +1 -1
- package/dist/ai/agents/config-reviewer.js.map +1 -1
- package/dist/ai/agents/csharp-reviewer.js +1 -1
- package/dist/ai/agents/csharp-reviewer.js.map +1 -1
- package/dist/ai/agents/css-reviewer.js +1 -1
- package/dist/ai/agents/css-reviewer.js.map +1 -1
- package/dist/ai/agents/framework-rules/index.d.ts.map +1 -1
- package/dist/ai/agents/framework-rules/index.js +3 -0
- package/dist/ai/agents/framework-rules/index.js.map +1 -1
- package/dist/ai/agents/html-reviewer.js +1 -1
- package/dist/ai/agents/html-reviewer.js.map +1 -1
- package/dist/ai/agents/performance-reviewer.js +1 -1
- package/dist/ai/agents/performance-reviewer.js.map +1 -1
- package/dist/ai/agents/php-reviewer.js +1 -1
- package/dist/ai/agents/php-reviewer.js.map +1 -1
- package/dist/ai/agents/prompts/php-reviewer.txt +6 -5
- package/dist/ai/agents/python-reviewer.js +1 -1
- package/dist/ai/agents/python-reviewer.js.map +1 -1
- package/dist/ai/agents/security-reviewer.d.ts.map +1 -1
- package/dist/ai/agents/security-reviewer.js +2 -1
- package/dist/ai/agents/security-reviewer.js.map +1 -1
- package/dist/ai/agents/shared/content-builder.d.ts +25 -1
- package/dist/ai/agents/shared/content-builder.d.ts.map +1 -1
- package/dist/ai/agents/shared/content-builder.js +37 -2
- package/dist/ai/agents/shared/content-builder.js.map +1 -1
- package/dist/ai/agents/shared/prompt-builder.d.ts.map +1 -1
- package/dist/ai/agents/shared/prompt-builder.js +18 -1
- package/dist/ai/agents/shared/prompt-builder.js.map +1 -1
- package/dist/ai/agents/sql-reviewer.js +1 -1
- package/dist/ai/agents/sql-reviewer.js.map +1 -1
- package/dist/ai/agents/testing-reviewer.js +1 -1
- package/dist/ai/agents/testing-reviewer.js.map +1 -1
- package/dist/ai/agents/ts-reviewer.js +1 -1
- package/dist/ai/agents/ts-reviewer.js.map +1 -1
- package/dist/ai/orchestrator/orchestrator.d.ts +18 -2
- package/dist/ai/orchestrator/orchestrator.d.ts.map +1 -1
- package/dist/ai/orchestrator/orchestrator.js +234 -34
- package/dist/ai/orchestrator/orchestrator.js.map +1 -1
- package/dist/ai/orchestrator/rule-based-strategy.d.ts.map +1 -1
- package/dist/ai/orchestrator/rule-based-strategy.js +1 -0
- package/dist/ai/orchestrator/rule-based-strategy.js.map +1 -1
- package/dist/ai/orchestrator/strategy.d.ts +2 -0
- package/dist/ai/orchestrator/strategy.d.ts.map +1 -1
- package/dist/commands/interactive.d.ts.map +1 -1
- package/dist/commands/interactive.js +5 -1
- package/dist/commands/interactive.js.map +1 -1
- package/dist/commands/review/start.d.ts.map +1 -1
- package/dist/commands/review/start.js +3 -1
- package/dist/commands/review/start.js.map +1 -1
- package/dist/config/config-manager.d.ts.map +1 -1
- package/dist/config/config-manager.js +3 -1
- package/dist/config/config-manager.js.map +1 -1
- package/dist/core/oversized-warning.d.ts +17 -0
- package/dist/core/oversized-warning.d.ts.map +1 -0
- package/dist/core/oversized-warning.js +41 -0
- package/dist/core/oversized-warning.js.map +1 -0
- package/dist/core/workflow-callbacks.d.ts +2 -2
- package/dist/core/workflow-callbacks.d.ts.map +1 -1
- package/dist/core/workflow-engine.d.ts.map +1 -1
- package/dist/core/workflow-engine.js +44 -6
- package/dist/core/workflow-engine.js.map +1 -1
- package/dist/persistence/file-review-cache-repository.d.ts +36 -0
- package/dist/persistence/file-review-cache-repository.d.ts.map +1 -0
- package/dist/persistence/file-review-cache-repository.js +69 -0
- package/dist/persistence/file-review-cache-repository.js.map +1 -0
- package/dist/persistence/migrations/0005_pattern_feedback.sql +16 -16
- package/dist/persistence/migrations/0006_file_review_cache.sql +12 -0
- package/dist/persistence/migrations/meta/_journal.json +7 -0
- package/dist/persistence/schema.d.ts +135 -0
- package/dist/persistence/schema.d.ts.map +1 -1
- package/dist/persistence/schema.js +15 -0
- package/dist/persistence/schema.js.map +1 -1
- package/dist/stack-detector/parsers.d.ts.map +1 -1
- package/dist/stack-detector/parsers.js +2 -1
- package/dist/stack-detector/parsers.js.map +1 -1
- package/dist/stack-detector/stack-detector.d.ts +1 -0
- package/dist/stack-detector/stack-detector.d.ts.map +1 -1
- package/dist/stack-detector/stack-detector.js +26 -3
- package/dist/stack-detector/stack-detector.js.map +1 -1
- package/dist/stack-detector/types.d.ts +2 -0
- package/dist/stack-detector/types.d.ts.map +1 -1
- package/dist/stack-detector/types.js.map +1 -1
- package/dist/tui/callbacks/tui-workflow-callbacks.d.ts +2 -2
- package/dist/tui/callbacks/tui-workflow-callbacks.d.ts.map +1 -1
- package/dist/tui/callbacks/tui-workflow-callbacks.js +13 -3
- package/dist/tui/callbacks/tui-workflow-callbacks.js.map +1 -1
- package/dist/tui/deps-context.d.ts +2 -0
- package/dist/tui/deps-context.d.ts.map +1 -1
- package/dist/tui/deps-context.js.map +1 -1
- package/dist/tui/hooks/use-session.d.ts +1 -1
- package/dist/tui/screen-router.d.ts.map +1 -1
- package/dist/tui/screen-router.js +3 -0
- package/dist/tui/screen-router.js.map +1 -1
- package/dist/tui/screens/home.d.ts.map +1 -1
- package/dist/tui/screens/home.js +5 -0
- package/dist/tui/screens/home.js.map +1 -1
- package/dist/tui/screens/review-running.d.ts.map +1 -1
- package/dist/tui/screens/review-running.js +9 -2
- package/dist/tui/screens/review-running.js.map +1 -1
- package/dist/tui/screens/settings.d.ts +4 -0
- package/dist/tui/screens/settings.d.ts.map +1 -0
- package/dist/tui/screens/settings.js +318 -0
- package/dist/tui/screens/settings.js.map +1 -0
- package/dist/tui/state/router-reducer.d.ts +1 -1
- package/dist/tui/state/router-reducer.d.ts.map +1 -1
- package/dist/tui/state/router-reducer.js.map +1 -1
- package/dist/tui/state/tui-reducer.d.ts +9 -0
- package/dist/tui/state/tui-reducer.d.ts.map +1 -1
- package/dist/tui/state/tui-reducer.js +7 -1
- package/dist/tui/state/tui-reducer.js.map +1 -1
- package/dist/types/agent.d.ts +13 -1
- package/dist/types/agent.d.ts.map +1 -1
- package/dist/types/agent.js +1 -1
- package/dist/types/agent.js.map +1 -1
- package/dist/types/config.d.ts +3 -0
- package/dist/types/config.d.ts.map +1 -1
- package/dist/types/repo-config.d.ts +9 -0
- package/dist/types/repo-config.d.ts.map +1 -1
- package/dist/types/repo-config.js +3 -0
- package/dist/types/repo-config.js.map +1 -1
- package/dist/utils/hash.d.ts +13 -0
- package/dist/utils/hash.d.ts.map +1 -1
- package/dist/utils/hash.js +16 -0
- package/dist/utils/hash.js.map +1 -1
- package/oclif.manifest.json +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -224,6 +224,32 @@ prism review start --workspace acme --repo app --pr 42 --suggest-rules
|
|
|
224
224
|
|
|
225
225
|
The AI review runs specialized agents (TypeScript, PHP, CSS, Security, Architecture, Performance, …) and produces findings with inline suggestions. Findings are stored in a local SQLite database for review memory and pattern generation.
|
|
226
226
|
|
|
227
|
+
### File-by-File Execution
|
|
228
|
+
|
|
229
|
+
Each agent processes files one at a time (not batched), eliminating output truncation on large PRs. A flat work queue keeps all semaphore slots busy — when one agent finishes its files, those slots are immediately used for pending files from other agents.
|
|
230
|
+
|
|
231
|
+
### Incremental Re-Reviews (Hash Cache)
|
|
232
|
+
|
|
233
|
+
PRISM tracks a SHA-256 hash per file per agent. On re-review:
|
|
234
|
+
|
|
235
|
+
| File state | Action |
|
|
236
|
+
|------------|--------|
|
|
237
|
+
| Unchanged + previously clean | **Skip** (zero tokens) |
|
|
238
|
+
| Unchanged + had findings | **Re-review** (dev hasn't fixed) |
|
|
239
|
+
| Changed | **Re-review** (always) |
|
|
240
|
+
|
|
241
|
+
This saves 80%+ tokens on re-reviews where only a few files changed.
|
|
242
|
+
|
|
243
|
+
### Per-Agent Model Presets
|
|
244
|
+
|
|
245
|
+
Configure all 14 agent models at once via the Settings screen:
|
|
246
|
+
|
|
247
|
+
| Preset | Critical agents (Security, Architecture) | All others |
|
|
248
|
+
|--------|------------------------------------------|------------|
|
|
249
|
+
| **Max** | Opus | Opus |
|
|
250
|
+
| **Balance** (default) | Opus | Sonnet |
|
|
251
|
+
| **Low** | Sonnet | Haiku |
|
|
252
|
+
|
|
227
253
|
---
|
|
228
254
|
|
|
229
255
|
## Commands
|
|
@@ -271,6 +297,39 @@ prism guard check --pr "$PR_ID" --min-severity high --json > findings.json
|
|
|
271
297
|
|
|
272
298
|
---
|
|
273
299
|
|
|
300
|
+
## Repo Configuration (`.prism.yml`)
|
|
301
|
+
|
|
302
|
+
Optional file at the repo root. Key fields:
|
|
303
|
+
|
|
304
|
+
```yaml
|
|
305
|
+
# Agent selection (overrides auto-detection)
|
|
306
|
+
agents: [ts-reviewer, security-reviewer, php-reviewer]
|
|
307
|
+
|
|
308
|
+
# Accessibility checks (OFF by default — opt-in)
|
|
309
|
+
accessibility: true
|
|
310
|
+
|
|
311
|
+
# Per-agent model overrides
|
|
312
|
+
agentModels:
|
|
313
|
+
security-reviewer: claude-opus-4-5
|
|
314
|
+
ts-reviewer: claude-sonnet-4-5
|
|
315
|
+
|
|
316
|
+
# Severity overrides
|
|
317
|
+
severityOverrides:
|
|
318
|
+
- match: { category: security }
|
|
319
|
+
severity: critical
|
|
320
|
+
|
|
321
|
+
# Skills (custom review instructions per agent)
|
|
322
|
+
skills:
|
|
323
|
+
- id: laravel-conventions
|
|
324
|
+
name: Laravel Conventions
|
|
325
|
+
instructions: "Use repository pattern. No Eloquent in controllers."
|
|
326
|
+
agentIds: [php-reviewer, architecture-reviewer]
|
|
327
|
+
```
|
|
328
|
+
|
|
329
|
+
**Stack detection is mandatory.** If PRISM cannot find a manifest file (`package.json`, `composer.json`, `go.mod`, etc.) in the repo root or common subfolders, the review is blocked to avoid incorrect suggestions. Add the appropriate manifest to your repo.
|
|
330
|
+
|
|
331
|
+
---
|
|
332
|
+
|
|
274
333
|
## Concepts
|
|
275
334
|
|
|
276
335
|
### Manifest v3
|
package/bin/run.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"architecture-reviewer.d.ts","sourceRoot":"","sources":["../../../src/ai/agents/architecture-reviewer.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,KAAK,EAAgE,MAAM,sBAAsB,CAAC;AAYhH,eAAO,MAAM,yBAAyB,EAAE,
|
|
1
|
+
{"version":3,"file":"architecture-reviewer.d.ts","sourceRoot":"","sources":["../../../src/ai/agents/architecture-reviewer.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,KAAK,EAAgE,MAAM,sBAAsB,CAAC;AAYhH,eAAO,MAAM,yBAAyB,EAAE,KAmEvC,CAAC"}
|
|
@@ -17,6 +17,8 @@ export const architectureReviewerAgent = {
|
|
|
17
17
|
domain: 'quality',
|
|
18
18
|
contextTags: ['conventions', 'skills', 'projectContext'],
|
|
19
19
|
contentMode: 'summary',
|
|
20
|
+
model: 'claude-opus-4-5',
|
|
21
|
+
reviewMode: 'batch',
|
|
20
22
|
// Architecture reviewer checks ALL files to understand cross-cutting concerns
|
|
21
23
|
fileFilter(_filePath) {
|
|
22
24
|
return true;
|
|
@@ -34,7 +36,7 @@ export const architectureReviewerAgent = {
|
|
|
34
36
|
}
|
|
35
37
|
const legacyProjectContext = input.projectContext;
|
|
36
38
|
const systemPrompt = buildSystemPrompt(BASE_SYSTEM_PROMPT, input.context, legacyProjectContext);
|
|
37
|
-
const userContent = buildUserContent(files, input.prMetadata, input.context?.contentMode
|
|
39
|
+
const userContent = buildUserContent(files, input.prMetadata, input.context?.contentMode);
|
|
38
40
|
const result = await provider.analyze({
|
|
39
41
|
systemPrompt,
|
|
40
42
|
userContent,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"architecture-reviewer.js","sourceRoot":"","sources":["../../../src/ai/agents/architecture-reviewer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnF,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAE/D,4EAA4E;AAC5E,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AACvC,MAAM,kBAAkB,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,SAAS,EAAE,2BAA2B,CAAC,EAAE,OAAO,CAAC,CAAC;AAE9G,MAAM,CAAC,MAAM,yBAAyB,GAAU;IAC9C,EAAE,EAAE,uBAAuB;IAC3B,WAAW,EAAE,cAAc;IAC3B,WAAW,EAAE,kDAAkD;IAC/D,MAAM,EAAE,SAAS;IACjB,WAAW,EAAE,CAAC,aAAa,EAAE,QAAQ,EAAE,gBAAgB,CAAC;IACxD,WAAW,EAAE,SAAS;
|
|
1
|
+
{"version":3,"file":"architecture-reviewer.js","sourceRoot":"","sources":["../../../src/ai/agents/architecture-reviewer.ts"],"names":[],"mappings":"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"}
|
|
@@ -31,7 +31,7 @@ export const bladeReviewerAgent = {
|
|
|
31
31
|
}
|
|
32
32
|
const legacyProjectContext = input.projectContext;
|
|
33
33
|
const systemPrompt = buildSystemPrompt(BASE_SYSTEM_PROMPT, input.context, legacyProjectContext);
|
|
34
|
-
const userContent = buildUserContent(relevantFiles, input.prMetadata, input.context?.contentMode
|
|
34
|
+
const userContent = buildUserContent(relevantFiles, input.prMetadata, input.context?.contentMode);
|
|
35
35
|
const result = await provider.analyze({
|
|
36
36
|
systemPrompt,
|
|
37
37
|
userContent,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blade-reviewer.js","sourceRoot":"","sources":["../../../src/ai/agents/blade-reviewer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnF,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAE/D,4EAA4E;AAC5E,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AACvC,MAAM,kBAAkB,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,SAAS,EAAE,oBAAoB,CAAC,EAAE,OAAO,CAAC,CAAC;AAEvG,MAAM,CAAC,MAAM,kBAAkB,GAAU;IACvC,EAAE,EAAE,gBAAgB;IACpB,WAAW,EAAE,OAAO;IACpB,WAAW,EAAE,6CAA6C;IAC1D,MAAM,EAAE,UAAU;IAClB,WAAW,EAAE,CAAC,aAAa,EAAE,gBAAgB,CAAC;IAE9C,UAAU,CAAC,QAAgB;QACzB,OAAO,QAAQ,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;IACvD,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,KAAiB,EAAE,QAAuB;QACtD,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACzC,MAAM,aAAa,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;QAE5E,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/B,OAAO;gBACL,OAAO,EAAE,IAAI,CAAC,EAAE;gBAChB,QAAQ,EAAE,EAAE;gBACZ,KAAK,EAAE,EAAE,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE;aAC3C,CAAC;QACJ,CAAC;QAED,MAAM,oBAAoB,GAAG,KAAK,CAAC,cAAc,CAAC;QAClD,MAAM,YAAY,GAAG,iBAAiB,CAAC,kBAAkB,EAAE,KAAK,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;QAChG,MAAM,WAAW,GAAG,gBAAgB,CAAC,aAAa,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,OAAO,EAAE,WAAW,
|
|
1
|
+
{"version":3,"file":"blade-reviewer.js","sourceRoot":"","sources":["../../../src/ai/agents/blade-reviewer.ts"],"names":[],"mappings":"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"}
|
|
@@ -78,7 +78,7 @@ export const configReviewerAgent = {
|
|
|
78
78
|
}
|
|
79
79
|
const legacyProjectContext = input.projectContext;
|
|
80
80
|
const systemPrompt = buildSystemPrompt(BASE_SYSTEM_PROMPT, input.context, legacyProjectContext);
|
|
81
|
-
const userContent = buildUserContent(relevantFiles, input.prMetadata, input.context?.contentMode
|
|
81
|
+
const userContent = buildUserContent(relevantFiles, input.prMetadata, input.context?.contentMode);
|
|
82
82
|
const result = await provider.analyze({
|
|
83
83
|
systemPrompt,
|
|
84
84
|
userContent,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-reviewer.js","sourceRoot":"","sources":["../../../src/ai/agents/config-reviewer.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"config-reviewer.js","sourceRoot":"","sources":["../../../src/ai/agents/config-reviewer.ts"],"names":[],"mappings":"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"}
|
|
@@ -31,7 +31,7 @@ export const csharpReviewerAgent = {
|
|
|
31
31
|
}
|
|
32
32
|
const legacyProjectContext = input.projectContext;
|
|
33
33
|
const systemPrompt = buildSystemPrompt(BASE_SYSTEM_PROMPT, input.context, legacyProjectContext);
|
|
34
|
-
const userContent = buildUserContent(relevantFiles, input.prMetadata, input.context?.contentMode
|
|
34
|
+
const userContent = buildUserContent(relevantFiles, input.prMetadata, input.context?.contentMode);
|
|
35
35
|
const result = await provider.analyze({
|
|
36
36
|
systemPrompt,
|
|
37
37
|
userContent,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"csharp-reviewer.js","sourceRoot":"","sources":["../../../src/ai/agents/csharp-reviewer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnF,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAE/D,4EAA4E;AAC5E,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AACvC,MAAM,kBAAkB,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,SAAS,EAAE,qBAAqB,CAAC,EAAE,OAAO,CAAC,CAAC;AAExG,MAAM,CAAC,MAAM,mBAAmB,GAAU;IACxC,EAAE,EAAE,iBAAiB;IACrB,WAAW,EAAE,IAAI;IACjB,WAAW,EAAE,8CAA8C;IAC3D,MAAM,EAAE,UAAU;IAClB,WAAW,EAAE,CAAC,aAAa,EAAE,gBAAgB,CAAC;IAE9C,UAAU,CAAC,QAAgB;QACzB,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC;IACxD,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,KAAiB,EAAE,QAAuB;QACtD,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACzC,MAAM,aAAa,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;QAE5E,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/B,OAAO;gBACL,OAAO,EAAE,IAAI,CAAC,EAAE;gBAChB,QAAQ,EAAE,EAAE;gBACZ,KAAK,EAAE,EAAE,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE;aAC3C,CAAC;QACJ,CAAC;QAED,MAAM,oBAAoB,GAAG,KAAK,CAAC,cAAc,CAAC;QAClD,MAAM,YAAY,GAAG,iBAAiB,CAAC,kBAAkB,EAAE,KAAK,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;QAChG,MAAM,WAAW,GAAG,gBAAgB,CAAC,aAAa,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,OAAO,EAAE,WAAW,
|
|
1
|
+
{"version":3,"file":"csharp-reviewer.js","sourceRoot":"","sources":["../../../src/ai/agents/csharp-reviewer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnF,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAE/D,4EAA4E;AAC5E,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AACvC,MAAM,kBAAkB,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,SAAS,EAAE,qBAAqB,CAAC,EAAE,OAAO,CAAC,CAAC;AAExG,MAAM,CAAC,MAAM,mBAAmB,GAAU;IACxC,EAAE,EAAE,iBAAiB;IACrB,WAAW,EAAE,IAAI;IACjB,WAAW,EAAE,8CAA8C;IAC3D,MAAM,EAAE,UAAU;IAClB,WAAW,EAAE,CAAC,aAAa,EAAE,gBAAgB,CAAC;IAE9C,UAAU,CAAC,QAAgB;QACzB,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC;IACxD,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,KAAiB,EAAE,QAAuB;QACtD,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACzC,MAAM,aAAa,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;QAE5E,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/B,OAAO;gBACL,OAAO,EAAE,IAAI,CAAC,EAAE;gBAChB,QAAQ,EAAE,EAAE;gBACZ,KAAK,EAAE,EAAE,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE;aAC3C,CAAC;QACJ,CAAC;QAED,MAAM,oBAAoB,GAAG,KAAK,CAAC,cAAc,CAAC;QAClD,MAAM,YAAY,GAAG,iBAAiB,CAAC,kBAAkB,EAAE,KAAK,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;QAChG,MAAM,WAAW,GAAG,gBAAgB,CAAC,aAAa,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QAElG,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC;YACpC,YAAY;YACZ,WAAW;YACX,QAAQ,EAAE,iBAAiB;YAC3B,UAAU,EAAE,mBAAmB;SAChC,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,EAAE,CAAC;QACpB,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YAClC,MAAM,OAAO,GAAG,gBAAgB,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;YAC/C,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;gBACrB,MAAM,CAAC,IAAI,CAAC,uEAAuE,CAAC,CAAC;gBACrF,SAAS;YACX,CAAC;YACD,IAAI,iBAAiB,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,CAAC;gBAC3E,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACzB,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,IAAI,CAAC,yCAAyC,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,UAAU,yBAAyB,CAAC,CAAC;YACxH,CAAC;QACH,CAAC;QAED,MAAM,KAAK,GAAe,MAAM,CAAC,KAAK,CAAC;QAEvC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IAC/C,CAAC;CACF,CAAC"}
|
|
@@ -37,7 +37,7 @@ export const cssReviewerAgent = {
|
|
|
37
37
|
}
|
|
38
38
|
const legacyProjectContext = input.projectContext;
|
|
39
39
|
const systemPrompt = buildSystemPrompt(BASE_SYSTEM_PROMPT, input.context, legacyProjectContext);
|
|
40
|
-
const userContent = buildUserContent(relevantFiles, input.prMetadata, input.context?.contentMode
|
|
40
|
+
const userContent = buildUserContent(relevantFiles, input.prMetadata, input.context?.contentMode);
|
|
41
41
|
const result = await provider.analyze({
|
|
42
42
|
systemPrompt,
|
|
43
43
|
userContent,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"css-reviewer.js","sourceRoot":"","sources":["../../../src/ai/agents/css-reviewer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnF,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAE/D,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;AAEpE,4EAA4E;AAC5E,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AACvC,MAAM,kBAAkB,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,SAAS,EAAE,kBAAkB,CAAC,EAAE,OAAO,CAAC,CAAC;AAErG,MAAM,CAAC,MAAM,gBAAgB,GAAU;IACrC,EAAE,EAAE,cAAc;IAClB,WAAW,EAAE,eAAe;IAC5B,WAAW,EAAE,+CAA+C;IAC5D,MAAM,EAAE,UAAU;IAClB,WAAW,EAAE,CAAC,aAAa,EAAE,gBAAgB,CAAC;IAE9C,UAAU,CAAC,QAAgB;QACzB,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;QACjD,IAAI,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,OAAO,IAAI,CAAC;QACzC,wCAAwC;QACxC,MAAM,KAAK,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;QACrC,OAAO,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;IACvE,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,KAAiB,EAAE,QAAuB;QACtD,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACzC,MAAM,aAAa,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;QAE5E,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/B,OAAO;gBACL,OAAO,EAAE,IAAI,CAAC,EAAE;gBAChB,QAAQ,EAAE,EAAE;gBACZ,KAAK,EAAE,EAAE,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE;aAC3C,CAAC;QACJ,CAAC;QAED,MAAM,oBAAoB,GAAG,KAAK,CAAC,cAAc,CAAC;QAClD,MAAM,YAAY,GAAG,iBAAiB,CAAC,kBAAkB,EAAE,KAAK,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;QAChG,MAAM,WAAW,GAAG,gBAAgB,CAAC,aAAa,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,OAAO,EAAE,WAAW,
|
|
1
|
+
{"version":3,"file":"css-reviewer.js","sourceRoot":"","sources":["../../../src/ai/agents/css-reviewer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/ai/agents/framework-rules/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAMrE,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAMD;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CACnC,YAAY,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI,EAC7C,OAAO,EAAE,MAAM,GACd,MAAM,GAAG,SAAS,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/ai/agents/framework-rules/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAMrE,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAMD;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CACnC,YAAY,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI,EAC7C,OAAO,EAAE,MAAM,GACd,MAAM,GAAG,SAAS,CA6CpB;AAED;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CACnC,YAAY,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI,EAC7C,OAAO,EAAE,MAAM,EACf,SAAS,CAAC,EAAE,eAAe,EAAE,GAC5B,MAAM,GAAG,SAAS,CAkBpB"}
|
|
@@ -34,6 +34,9 @@ export function buildFrameworkContext(stackProfile, agentId) {
|
|
|
34
34
|
if (stackProfile.frameworkVersion !== null) {
|
|
35
35
|
parts.push(`Version: ${stackProfile.frameworkVersion}`);
|
|
36
36
|
}
|
|
37
|
+
if (stackProfile.languageVersion !== null) {
|
|
38
|
+
parts.push(`Language version: ${stackProfile.language ?? stackProfile.runtime ?? 'unknown'} ${stackProfile.languageVersion}`);
|
|
39
|
+
}
|
|
37
40
|
if (stackProfile.keyLibraries.length > 0) {
|
|
38
41
|
parts.push(`Key libraries: ${stackProfile.keyLibraries.join(', ')}`);
|
|
39
42
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/ai/agents/framework-rules/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/ai/agents/framework-rules/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAYvD,8EAA8E;AAC9E,aAAa;AACb,8EAA8E;AAE9E;;;;;;;GAOG;AACH,MAAM,UAAU,qBAAqB,CACnC,YAA6C,EAC7C,OAAe;IAEf,IAAI,YAAY,EAAE,SAAS,IAAI,IAAI;QAAE,OAAO,SAAS,CAAC;IAEtD,MAAM,SAAS,GAAG,sBAAsB,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IACjE,IAAI,SAAS,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAE9C,MAAM,QAAQ,GAAG,mBAAmB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACpD,IAAI,QAAQ,KAAK,SAAS,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC;QAAE,OAAO,SAAS,CAAC;IAEvE,sBAAsB;IACtB,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,cAAc,YAAY,CAAC,SAAS,EAAE,CAAC,CAAC;IACnD,IAAI,YAAY,CAAC,gBAAgB,KAAK,IAAI,EAAE,CAAC;QAC3C,KAAK,CAAC,IAAI,CAAC,YAAY,YAAY,CAAC,gBAAgB,EAAE,CAAC,CAAC;IAC1D,CAAC;IACD,IAAI,YAAY,CAAC,eAAe,KAAK,IAAI,EAAE,CAAC;QAC1C,KAAK,CAAC,IAAI,CAAC,qBAAqB,YAAY,CAAC,QAAQ,IAAI,YAAY,CAAC,OAAO,IAAI,SAAS,IAAI,YAAY,CAAC,eAAe,EAAE,CAAC,CAAC;IAChI,CAAC;IACD,IAAI,YAAY,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzC,KAAK,CAAC,IAAI,CAAC,kBAAkB,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACvE,CAAC;IAED,mEAAmE;IACnE,IAAI,SAAS,KAAK,SAAS,IAAI,OAAO,KAAK,uBAAuB,EAAE,CAAC;QACnE,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;QAC1E,MAAM,kBAAkB,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAEtH,IAAI,kBAAkB,EAAE,CAAC;YACvB,KAAK,CAAC,IAAI,CAAC,gEAAgE;gBACzE,mEAAmE;gBACnE,0GAA0G;gBAC1G,wHAAwH;gBACxH,4GAA4G;gBAC5G,mGAAmG,CAAC,CAAC;QACzG,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,IAAI,CAAC,2EAA2E;gBACpF,mEAAmE;gBACnE,wLAAwL;gBACxL,sFAAsF;gBACtF,qFAAqF;gBACrF,qGAAqG,CAAC,CAAC;QAC3G,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,qBAAqB,CACnC,YAA6C,EAC7C,OAAe,EACf,SAA6B;IAE7B,MAAM,OAAO,GAAG,qBAAqB,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;IAE7D,mCAAmC;IACnC,MAAM,UAAU,GAAG,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,OAAO,CAAC,CAAC;IAC/D,MAAM,UAAU,GAAG,UAAU,EAAE,KAAK,CAAC;IAErC,IAAI,OAAO,KAAK,SAAS,IAAI,CAAC,UAAU,KAAK,SAAS,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,CAAC;QAAE,OAAO,SAAS,CAAC;IAErG,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACzB,CAAC;IACD,IAAI,UAAU,KAAK,SAAS,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtD,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC5B,CAAC;IAED,OAAO,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC/B,CAAC"}
|
|
@@ -33,7 +33,7 @@ export const htmlReviewerAgent = {
|
|
|
33
33
|
}
|
|
34
34
|
const legacyProjectContext = input.projectContext;
|
|
35
35
|
const systemPrompt = buildSystemPrompt(BASE_SYSTEM_PROMPT, input.context, legacyProjectContext);
|
|
36
|
-
const userContent = buildUserContent(relevantFiles, input.prMetadata, input.context?.contentMode
|
|
36
|
+
const userContent = buildUserContent(relevantFiles, input.prMetadata, input.context?.contentMode);
|
|
37
37
|
const result = await provider.analyze({
|
|
38
38
|
systemPrompt,
|
|
39
39
|
userContent,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"html-reviewer.js","sourceRoot":"","sources":["../../../src/ai/agents/html-reviewer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnF,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAE/D,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;AAEnD,4EAA4E;AAC5E,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AACvC,MAAM,kBAAkB,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,SAAS,EAAE,mBAAmB,CAAC,EAAE,OAAO,CAAC,CAAC;AAEtG,MAAM,CAAC,MAAM,iBAAiB,GAAU;IACtC,EAAE,EAAE,eAAe;IACnB,WAAW,EAAE,MAAM;IACnB,WAAW,EAAE,gDAAgD;IAC7D,MAAM,EAAE,UAAU;IAClB,WAAW,EAAE,CAAC,aAAa,EAAE,gBAAgB,CAAC;IAE9C,UAAU,CAAC,QAAgB;QACzB,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;QACjD,OAAO,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,KAAiB,EAAE,QAAuB;QACtD,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACzC,MAAM,aAAa,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;QAE5E,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/B,OAAO;gBACL,OAAO,EAAE,IAAI,CAAC,EAAE;gBAChB,QAAQ,EAAE,EAAE;gBACZ,KAAK,EAAE,EAAE,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE;aAC3C,CAAC;QACJ,CAAC;QAED,MAAM,oBAAoB,GAAG,KAAK,CAAC,cAAc,CAAC;QAClD,MAAM,YAAY,GAAG,iBAAiB,CAAC,kBAAkB,EAAE,KAAK,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;QAChG,MAAM,WAAW,GAAG,gBAAgB,CAAC,aAAa,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,OAAO,EAAE,WAAW,
|
|
1
|
+
{"version":3,"file":"html-reviewer.js","sourceRoot":"","sources":["../../../src/ai/agents/html-reviewer.ts"],"names":[],"mappings":"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"}
|
|
@@ -33,7 +33,7 @@ export const performanceReviewerAgent = {
|
|
|
33
33
|
}
|
|
34
34
|
const legacyProjectContext = input.projectContext;
|
|
35
35
|
const systemPrompt = buildSystemPrompt(BASE_SYSTEM_PROMPT, input.context, legacyProjectContext);
|
|
36
|
-
const userContent = buildUserContent(files, input.prMetadata, input.context?.contentMode
|
|
36
|
+
const userContent = buildUserContent(files, input.prMetadata, input.context?.contentMode);
|
|
37
37
|
const result = await provider.analyze({
|
|
38
38
|
systemPrompt,
|
|
39
39
|
userContent,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"performance-reviewer.js","sourceRoot":"","sources":["../../../src/ai/agents/performance-reviewer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnF,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAE/D,4EAA4E;AAC5E,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AACvC,MAAM,kBAAkB,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,SAAS,EAAE,0BAA0B,CAAC,EAAE,OAAO,CAAC,CAAC;AAE7G,MAAM,CAAC,MAAM,wBAAwB,GAAU;IAC7C,EAAE,EAAE,sBAAsB;IAC1B,WAAW,EAAE,aAAa;IAC1B,WAAW,EAAE,2CAA2C;IACxD,MAAM,EAAE,OAAO;IACf,WAAW,EAAE,CAAC,aAAa,CAAC;IAE5B,0EAA0E;IAC1E,UAAU,CAAC,SAAiB;QAC1B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,KAAiB,EAAE,QAAuB;QACtD,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEzC,qEAAqE;QACrE,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;QAE1B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,OAAO;gBACL,OAAO,EAAE,IAAI,CAAC,EAAE;gBAChB,QAAQ,EAAE,EAAE;gBACZ,KAAK,EAAE,EAAE,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE;aAC3C,CAAC;QACJ,CAAC;QAED,MAAM,oBAAoB,GAAG,KAAK,CAAC,cAAc,CAAC;QAClD,MAAM,YAAY,GAAG,iBAAiB,CAAC,kBAAkB,EAAE,KAAK,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;QAChG,MAAM,WAAW,GAAG,gBAAgB,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,OAAO,EAAE,WAAW,
|
|
1
|
+
{"version":3,"file":"performance-reviewer.js","sourceRoot":"","sources":["../../../src/ai/agents/performance-reviewer.ts"],"names":[],"mappings":"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"}
|
|
@@ -34,7 +34,7 @@ export const phpReviewerAgent = {
|
|
|
34
34
|
}
|
|
35
35
|
const legacyProjectContext = input.projectContext;
|
|
36
36
|
const systemPrompt = buildSystemPrompt(BASE_SYSTEM_PROMPT, input.context, legacyProjectContext);
|
|
37
|
-
const userContent = buildUserContent(relevantFiles, input.prMetadata, input.context?.contentMode
|
|
37
|
+
const userContent = buildUserContent(relevantFiles, input.prMetadata, input.context?.contentMode);
|
|
38
38
|
const result = await provider.analyze({
|
|
39
39
|
systemPrompt,
|
|
40
40
|
userContent,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"php-reviewer.js","sourceRoot":"","sources":["../../../src/ai/agents/php-reviewer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnF,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAE/D,4EAA4E;AAC5E,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AACvC,MAAM,kBAAkB,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,SAAS,EAAE,kBAAkB,CAAC,EAAE,OAAO,CAAC,CAAC;AAErG,MAAM,CAAC,MAAM,gBAAgB,GAAU;IACrC,EAAE,EAAE,cAAc;IAClB,WAAW,EAAE,KAAK;IAClB,WAAW,EAAE,wDAAwD;IACrE,MAAM,EAAE,UAAU;IAClB,WAAW,EAAE,CAAC,aAAa,EAAE,gBAAgB,CAAC;IAE9C,UAAU,CAAC,QAAgB;QACzB,MAAM,KAAK,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;QACrC,IAAI,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC;YAAE,OAAO,KAAK,CAAC;QAC/C,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,MAAM,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,KAAiB,EAAE,QAAuB;QACtD,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACzC,MAAM,aAAa,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;QAE5E,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/B,OAAO;gBACL,OAAO,EAAE,IAAI,CAAC,EAAE;gBAChB,QAAQ,EAAE,EAAE;gBACZ,KAAK,EAAE,EAAE,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE;aAC3C,CAAC;QACJ,CAAC;QAED,MAAM,oBAAoB,GAAG,KAAK,CAAC,cAAc,CAAC;QAClD,MAAM,YAAY,GAAG,iBAAiB,CAAC,kBAAkB,EAAE,KAAK,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;QAChG,MAAM,WAAW,GAAG,gBAAgB,CAAC,aAAa,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,OAAO,EAAE,WAAW,
|
|
1
|
+
{"version":3,"file":"php-reviewer.js","sourceRoot":"","sources":["../../../src/ai/agents/php-reviewer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnF,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAE/D,4EAA4E;AAC5E,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AACvC,MAAM,kBAAkB,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,SAAS,EAAE,kBAAkB,CAAC,EAAE,OAAO,CAAC,CAAC;AAErG,MAAM,CAAC,MAAM,gBAAgB,GAAU;IACrC,EAAE,EAAE,cAAc;IAClB,WAAW,EAAE,KAAK;IAClB,WAAW,EAAE,wDAAwD;IACrE,MAAM,EAAE,UAAU;IAClB,WAAW,EAAE,CAAC,aAAa,EAAE,gBAAgB,CAAC;IAE9C,UAAU,CAAC,QAAgB;QACzB,MAAM,KAAK,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;QACrC,IAAI,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC;YAAE,OAAO,KAAK,CAAC;QAC/C,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,MAAM,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,KAAiB,EAAE,QAAuB;QACtD,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACzC,MAAM,aAAa,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;QAE5E,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/B,OAAO;gBACL,OAAO,EAAE,IAAI,CAAC,EAAE;gBAChB,QAAQ,EAAE,EAAE;gBACZ,KAAK,EAAE,EAAE,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE;aAC3C,CAAC;QACJ,CAAC;QAED,MAAM,oBAAoB,GAAG,KAAK,CAAC,cAAc,CAAC;QAClD,MAAM,YAAY,GAAG,iBAAiB,CAAC,kBAAkB,EAAE,KAAK,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;QAChG,MAAM,WAAW,GAAG,gBAAgB,CAAC,aAAa,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QAElG,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC;YACpC,YAAY;YACZ,WAAW;YACX,QAAQ,EAAE,iBAAiB;YAC3B,UAAU,EAAE,mBAAmB;SAChC,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,EAAE,CAAC;QACpB,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YAClC,MAAM,OAAO,GAAG,gBAAgB,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;YAC/C,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;gBACrB,MAAM,CAAC,IAAI,CAAC,oEAAoE,CAAC,CAAC;gBAClF,SAAS;YACX,CAAC;YACD,IAAI,iBAAiB,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,CAAC;gBAC3E,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACzB,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,IAAI,CAAC,sCAAsC,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,UAAU,yBAAyB,CAAC,CAAC;YACrH,CAAC;QACH,CAAC;QAED,MAAM,KAAK,GAAe,MAAM,CAAC,KAAK,CAAC;QAEvC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IAC/C,CAAC;CACF,CAAC"}
|
|
@@ -8,11 +8,12 @@ A "Framework-Specific Review Rules" section may be appended below with the proje
|
|
|
8
8
|
- **Consider the listed key libraries.** If an ORM, queue system, or auth package is listed, factor its patterns and known pitfalls into your review.
|
|
9
9
|
- **Only suggest features available in the project's PHP version.** Do NOT recommend union types, named arguments, enums, readonly properties, or intersection types if the project runs PHP < 8.0.
|
|
10
10
|
|
|
11
|
-
### Version resolution
|
|
11
|
+
### Version resolution:
|
|
12
12
|
|
|
13
|
-
1. If the PHP version is explicitly stated in the framework context → use it
|
|
14
|
-
2. If
|
|
15
|
-
|
|
13
|
+
1. If the PHP version is explicitly stated in the framework context (e.g. "Language version: php ^7.2") → use it. This is the ONLY source of truth.
|
|
14
|
+
2. If NO version information is provided → do NOT suggest ANY version-specific features. Limit your review to logic bugs, security, and patterns that apply to ALL PHP versions. Do NOT infer versions from code patterns or framework versions.
|
|
15
|
+
|
|
16
|
+
**CRITICAL: NEVER invent or guess the PHP version.** Do not infer it from Laravel version, code patterns, or any other indirect signal. Only use the explicit "Language version" field from the framework context. If it is absent, you do not know the PHP version — act accordingly.
|
|
16
17
|
|
|
17
18
|
### Version-specific reference:
|
|
18
19
|
|
|
@@ -30,7 +31,7 @@ A "Framework-Specific Review Rules" section may be appended below with the proje
|
|
|
30
31
|
Review the provided diff and report findings for the following issues:
|
|
31
32
|
|
|
32
33
|
1. **Missing strict_types declaration** — ONLY flag on NEW files where the entire file content consists of addition lines in the diff (no context or deletion lines except the file header). For existing files being modified: SILENTLY SKIP — do NOT produce any finding about strict_types, not even at `low` severity. Adding `strict_types` to legacy code is a breaking change (type coercion that previously worked silently would throw TypeError). This rule has NO exceptions.
|
|
33
|
-
2. **Missing type declarations** — function parameters
|
|
34
|
+
2. **Missing type declarations** — function parameters and return types without type hints appropriate for the **confirmed** PHP version (see version table above). **Typed class properties require PHP 7.4+** — do NOT suggest them unless the PHP version is confirmed ≥ 7.4. When version is unknown, only suggest scalar type hints and return types (available since PHP 7.0).
|
|
34
35
|
3. **Null safety violations** — accessing properties/methods on nullable values without null checks; missing `??` or `?->` (nullsafe operator requires PHP 8.0+)
|
|
35
36
|
4. **SQL injection via raw queries** — string concatenation in SQL without parameterized bindings; `DB::raw()`, `whereRaw()`, `selectRaw()` with unescaped input
|
|
36
37
|
5. **Type juggling bugs** — loose `==` between different types; `in_array()` without `strict: true`
|
|
@@ -31,7 +31,7 @@ export const pythonReviewerAgent = {
|
|
|
31
31
|
}
|
|
32
32
|
const legacyProjectContext = input.projectContext;
|
|
33
33
|
const systemPrompt = buildSystemPrompt(BASE_SYSTEM_PROMPT, input.context, legacyProjectContext);
|
|
34
|
-
const userContent = buildUserContent(relevantFiles, input.prMetadata, input.context?.contentMode
|
|
34
|
+
const userContent = buildUserContent(relevantFiles, input.prMetadata, input.context?.contentMode);
|
|
35
35
|
const result = await provider.analyze({
|
|
36
36
|
systemPrompt,
|
|
37
37
|
userContent,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"python-reviewer.js","sourceRoot":"","sources":["../../../src/ai/agents/python-reviewer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnF,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAE/D,4EAA4E;AAC5E,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AACvC,MAAM,kBAAkB,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,SAAS,EAAE,qBAAqB,CAAC,EAAE,OAAO,CAAC,CAAC;AAExG,MAAM,CAAC,MAAM,mBAAmB,GAAU;IACxC,EAAE,EAAE,iBAAiB;IACrB,WAAW,EAAE,QAAQ;IACrB,WAAW,EAAE,sDAAsD;IACnE,MAAM,EAAE,UAAU;IAClB,WAAW,EAAE,CAAC,aAAa,EAAE,gBAAgB,CAAC;IAE9C,UAAU,CAAC,QAAgB;QACzB,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC;IACxD,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,KAAiB,EAAE,QAAuB;QACtD,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACzC,MAAM,aAAa,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;QAE5E,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/B,OAAO;gBACL,OAAO,EAAE,IAAI,CAAC,EAAE;gBAChB,QAAQ,EAAE,EAAE;gBACZ,KAAK,EAAE,EAAE,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE;aAC3C,CAAC;QACJ,CAAC;QAED,MAAM,oBAAoB,GAAG,KAAK,CAAC,cAAc,CAAC;QAClD,MAAM,YAAY,GAAG,iBAAiB,CAAC,kBAAkB,EAAE,KAAK,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;QAChG,MAAM,WAAW,GAAG,gBAAgB,CAAC,aAAa,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,OAAO,EAAE,WAAW,
|
|
1
|
+
{"version":3,"file":"python-reviewer.js","sourceRoot":"","sources":["../../../src/ai/agents/python-reviewer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"security-reviewer.d.ts","sourceRoot":"","sources":["../../../src/ai/agents/security-reviewer.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,KAAK,EAAgE,MAAM,sBAAsB,CAAC;AAYhH,eAAO,MAAM,qBAAqB,EAAE,
|
|
1
|
+
{"version":3,"file":"security-reviewer.d.ts","sourceRoot":"","sources":["../../../src/ai/agents/security-reviewer.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,KAAK,EAAgE,MAAM,sBAAsB,CAAC;AAYhH,eAAO,MAAM,qBAAqB,EAAE,KAoEnC,CAAC"}
|
|
@@ -17,6 +17,7 @@ export const securityReviewerAgent = {
|
|
|
17
17
|
domain: 'security',
|
|
18
18
|
contextTags: ['conventions'],
|
|
19
19
|
contentMode: 'summary',
|
|
20
|
+
model: 'claude-opus-4-5',
|
|
20
21
|
// Security reviewer checks ALL files regardless of extension
|
|
21
22
|
fileFilter(_filePath) {
|
|
22
23
|
return true;
|
|
@@ -35,7 +36,7 @@ export const securityReviewerAgent = {
|
|
|
35
36
|
// Support both legacy projectContext and new context field
|
|
36
37
|
const legacyProjectContext = input.projectContext;
|
|
37
38
|
const systemPrompt = buildSystemPrompt(BASE_SYSTEM_PROMPT, input.context, legacyProjectContext);
|
|
38
|
-
const userContent = buildUserContent(files, input.prMetadata, input.context?.contentMode
|
|
39
|
+
const userContent = buildUserContent(files, input.prMetadata, input.context?.contentMode);
|
|
39
40
|
const result = await provider.analyze({
|
|
40
41
|
systemPrompt,
|
|
41
42
|
userContent,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"security-reviewer.js","sourceRoot":"","sources":["../../../src/ai/agents/security-reviewer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnF,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAE/D,4EAA4E;AAC5E,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AACvC,MAAM,kBAAkB,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,SAAS,EAAE,uBAAuB,CAAC,EAAE,OAAO,CAAC,CAAC;AAE1G,MAAM,CAAC,MAAM,qBAAqB,GAAU;IAC1C,EAAE,EAAE,mBAAmB;IACvB,WAAW,EAAE,UAAU;IACvB,WAAW,EAAE,mDAAmD;IAChE,MAAM,EAAE,UAAU;IAClB,WAAW,EAAE,CAAC,aAAa,CAAC;IAC5B,WAAW,EAAE,SAAS;
|
|
1
|
+
{"version":3,"file":"security-reviewer.js","sourceRoot":"","sources":["../../../src/ai/agents/security-reviewer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,36 @@
|
|
|
1
1
|
import type { DiffFile } from '../../../types/diff.js';
|
|
2
2
|
import type { PRMetadata } from '../../../types/bitbucket.js';
|
|
3
3
|
import type { ContentMode } from '../../../types/agent.js';
|
|
4
|
+
export interface FileManifestEntry {
|
|
5
|
+
path: string;
|
|
6
|
+
status: 'added' | 'modified' | 'deleted' | 'renamed';
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Build the review content for a single file in file-by-file review mode.
|
|
10
|
+
*
|
|
11
|
+
* Output sections:
|
|
12
|
+
* ## Pull Request #<id>: <title>
|
|
13
|
+
* Branch: <sourceBranch> → <targetBranch>
|
|
14
|
+
*
|
|
15
|
+
* ## PR File Manifest (<N> files) ← omitted when manifest is empty
|
|
16
|
+
* - <path> (<status>)
|
|
17
|
+
* ...
|
|
18
|
+
*
|
|
19
|
+
* ## File Under Review
|
|
20
|
+
* <buildFileBlock output>
|
|
21
|
+
*
|
|
22
|
+
* @param file - The single DiffFile to render
|
|
23
|
+
* @param prMetadata - Pull request metadata (id, title, branches, etc.)
|
|
24
|
+
* @param manifest - Ordered list of all files in the PR (may be empty)
|
|
25
|
+
* @param mode - Content mode: 'additions-only', 'full', or 'summary'
|
|
26
|
+
*/
|
|
27
|
+
export declare function buildSingleFileContent(file: DiffFile, prMetadata: PRMetadata, manifest: FileManifestEntry[], mode: ContentMode): string;
|
|
4
28
|
/**
|
|
5
29
|
* Build the PR review user content string from a set of diff files and PR metadata.
|
|
6
30
|
*
|
|
7
31
|
* @param files - The diff files to include
|
|
8
32
|
* @param prMetadata - Pull request metadata (id, title, branches, etc.)
|
|
9
|
-
* @param mode - Content mode: '
|
|
33
|
+
* @param mode - Content mode: 'additions-only' (default), 'full', or 'summary'
|
|
10
34
|
* @param tokenBudget - Optional max estimated input tokens; files exceeding the budget are
|
|
11
35
|
* dropped (lowest addition-count first). At least 3 files are always kept.
|
|
12
36
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"content-builder.d.ts","sourceRoot":"","sources":["../../../../src/ai/agents/shared/content-builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAsG3D;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,QAAQ,EAAE,EACjB,UAAU,EAAE,UAAU,EACtB,IAAI,GAAE,
|
|
1
|
+
{"version":3,"file":"content-builder.d.ts","sourceRoot":"","sources":["../../../../src/ai/agents/shared/content-builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAsG3D,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,OAAO,GAAG,UAAU,GAAG,SAAS,GAAG,SAAS,CAAC;CACtD;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,QAAQ,EACd,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,iBAAiB,EAAE,EAC7B,IAAI,EAAE,WAAW,GAChB,MAAM,CAmBR;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,QAAQ,EAAE,EACjB,UAAU,EAAE,UAAU,EACtB,IAAI,GAAE,WAA8B,EACpC,WAAW,CAAC,EAAE,MAAM,GACnB,MAAM,CAuDR"}
|
|
@@ -99,16 +99,51 @@ function buildFileBlock(file, mode) {
|
|
|
99
99
|
lines.push('');
|
|
100
100
|
return lines;
|
|
101
101
|
}
|
|
102
|
+
/**
|
|
103
|
+
* Build the review content for a single file in file-by-file review mode.
|
|
104
|
+
*
|
|
105
|
+
* Output sections:
|
|
106
|
+
* ## Pull Request #<id>: <title>
|
|
107
|
+
* Branch: <sourceBranch> → <targetBranch>
|
|
108
|
+
*
|
|
109
|
+
* ## PR File Manifest (<N> files) ← omitted when manifest is empty
|
|
110
|
+
* - <path> (<status>)
|
|
111
|
+
* ...
|
|
112
|
+
*
|
|
113
|
+
* ## File Under Review
|
|
114
|
+
* <buildFileBlock output>
|
|
115
|
+
*
|
|
116
|
+
* @param file - The single DiffFile to render
|
|
117
|
+
* @param prMetadata - Pull request metadata (id, title, branches, etc.)
|
|
118
|
+
* @param manifest - Ordered list of all files in the PR (may be empty)
|
|
119
|
+
* @param mode - Content mode: 'additions-only', 'full', or 'summary'
|
|
120
|
+
*/
|
|
121
|
+
export function buildSingleFileContent(file, prMetadata, manifest, mode) {
|
|
122
|
+
const lines = [];
|
|
123
|
+
lines.push(`## Pull Request #${prMetadata.id}: ${prMetadata.title}`);
|
|
124
|
+
lines.push(`Branch: ${prMetadata.sourceBranch} → ${prMetadata.targetBranch}`);
|
|
125
|
+
if (manifest.length > 0) {
|
|
126
|
+
lines.push('');
|
|
127
|
+
lines.push(`## PR File Manifest (${manifest.length} files)`);
|
|
128
|
+
for (const entry of manifest) {
|
|
129
|
+
lines.push(`- ${entry.path} (${entry.status})`);
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
lines.push('');
|
|
133
|
+
lines.push('## File Under Review');
|
|
134
|
+
lines.push(...buildFileBlock(file, mode));
|
|
135
|
+
return lines.join('\n');
|
|
136
|
+
}
|
|
102
137
|
/**
|
|
103
138
|
* Build the PR review user content string from a set of diff files and PR metadata.
|
|
104
139
|
*
|
|
105
140
|
* @param files - The diff files to include
|
|
106
141
|
* @param prMetadata - Pull request metadata (id, title, branches, etc.)
|
|
107
|
-
* @param mode - Content mode: '
|
|
142
|
+
* @param mode - Content mode: 'additions-only' (default), 'full', or 'summary'
|
|
108
143
|
* @param tokenBudget - Optional max estimated input tokens; files exceeding the budget are
|
|
109
144
|
* dropped (lowest addition-count first). At least 3 files are always kept.
|
|
110
145
|
*/
|
|
111
|
-
export function buildUserContent(files, prMetadata, mode = '
|
|
146
|
+
export function buildUserContent(files, prMetadata, mode = 'additions-only', tokenBudget) {
|
|
112
147
|
const headerLines = [];
|
|
113
148
|
headerLines.push(`## Pull Request #${prMetadata.id}: ${prMetadata.title}`);
|
|
114
149
|
headerLines.push(`Branch: ${prMetadata.sourceBranch} → ${prMetadata.targetBranch}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"content-builder.js","sourceRoot":"","sources":["../../../../src/ai/agents/shared/content-builder.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"content-builder.js","sourceRoot":"","sources":["../../../../src/ai/agents/shared/content-builder.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompt-builder.d.ts","sourceRoot":"","sources":["../../../../src/ai/agents/shared/prompt-builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"prompt-builder.d.ts","sourceRoot":"","sources":["../../../../src/ai/agents/shared/prompt-builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAiDxE,wBAAgB,iBAAiB,CAC/B,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE,YAAY,EACtB,oBAAoB,CAAC,EAAE,MAAM,EAC7B,WAAW,CAAC,EAAE,UAAU,EAAE,GACzB,MAAM,CAgDR"}
|
|
@@ -9,6 +9,15 @@ import { FINDING_SEVERITIES } from '../../../types/review-finding.js';
|
|
|
9
9
|
* @param legacyProjectContext - Deprecated: projectContext from AgentInput top-level field
|
|
10
10
|
* @returns The assembled system prompt string
|
|
11
11
|
*/
|
|
12
|
+
const DIFF_AWARENESS_INSTRUCTION = `## Diff Awareness (CRITICAL)
|
|
13
|
+
|
|
14
|
+
You are reviewing a DIFF — NOT the full source file. Only changed lines and a few lines of surrounding context are shown. Large portions of each file are NOT visible to you.
|
|
15
|
+
|
|
16
|
+
**Rules:**
|
|
17
|
+
- Do NOT flag "missing code" unless the missing code is directly required by NEW lines in the diff.
|
|
18
|
+
- If the diff shows a pattern that implies supporting code (e.g. \`takeUntil(this.destroy)\` implies \`ngOnDestroy\`, an import implies a declaration), ASSUME the supporting code exists in the invisible portion of the file unless there is direct evidence IN THE DIFF that it is missing (e.g. a new class that lacks the method).
|
|
19
|
+
- Only report issues about code you CAN see. Never speculate about code outside the diff.
|
|
20
|
+
- "I don't see X in the diff" is NOT the same as "X is missing from the file."`;
|
|
12
21
|
const LANGUAGE_INSTRUCTION = `## Language
|
|
13
22
|
|
|
14
23
|
You MUST write all finding fields (problem, rationale, suggestion) in Spanish.
|
|
@@ -34,9 +43,17 @@ Do NOT report findings below ${minSeverity}. Ignore issues that would be ${minIn
|
|
|
34
43
|
Focus your analysis effort on finding ${allowed[0]}${allowed.length > 1 ? ` and ${allowed.slice(1).join(', ')}` : ''} issues only.`;
|
|
35
44
|
}
|
|
36
45
|
export function buildSystemPrompt(basePrompt, context, legacyProjectContext, allowedTags) {
|
|
37
|
-
const sections = [basePrompt, LANGUAGE_INSTRUCTION];
|
|
46
|
+
const sections = [basePrompt, DIFF_AWARENESS_INSTRUCTION, LANGUAGE_INSTRUCTION];
|
|
38
47
|
// Helper: check if a tag is allowed (undefined = all allowed)
|
|
39
48
|
const isAllowed = (tag) => allowedTags === undefined || allowedTags.includes(tag);
|
|
49
|
+
// Accessibility exclusion — opt-in via .prism.yml `accessibility: true`
|
|
50
|
+
// When not enabled, suppress all a11y findings to reduce noise
|
|
51
|
+
if (context?.accessibility !== true) {
|
|
52
|
+
sections.push(`## Accessibility: DISABLED
|
|
53
|
+
|
|
54
|
+
Do NOT report accessibility (a11y) findings. This includes: missing alt attributes, missing aria-label/aria-labelledby, heading hierarchy issues, missing form labels, non-focusable interactive elements, and any WCAG-related concerns.
|
|
55
|
+
Accessibility checks are opt-in for this project. Skip all a11y analysis entirely.`);
|
|
56
|
+
}
|
|
40
57
|
// Severity focus — injected early so the agent knows the scope before analyzing
|
|
41
58
|
// NOT filterable via allowedTags — always injected when present
|
|
42
59
|
const severityInstruction = buildSeverityInstruction(context?.minSeverity);
|