tryassay 0.32.0 → 0.33.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (157) hide show
  1. package/dist/cli.js +55 -0
  2. package/dist/cli.js.map +1 -1
  3. package/dist/commands/assess.js +73 -0
  4. package/dist/commands/assess.js.map +1 -1
  5. package/dist/commands/bounty-chain.d.ts +1 -0
  6. package/dist/commands/bounty-chain.js +34 -0
  7. package/dist/commands/bounty-chain.js.map +1 -0
  8. package/dist/commands/bounty-check.d.ts +10 -0
  9. package/dist/commands/bounty-check.js +104 -0
  10. package/dist/commands/bounty-check.js.map +1 -0
  11. package/dist/commands/bounty-discover.d.ts +6 -0
  12. package/dist/commands/bounty-discover.js +45 -0
  13. package/dist/commands/bounty-discover.js.map +1 -0
  14. package/dist/commands/bounty-scan.d.ts +7 -0
  15. package/dist/commands/bounty-scan.js +312 -0
  16. package/dist/commands/bounty-scan.js.map +1 -0
  17. package/dist/commands/bounty-watch.d.ts +9 -0
  18. package/dist/commands/bounty-watch.js +210 -0
  19. package/dist/commands/bounty-watch.js.map +1 -0
  20. package/dist/commands/hunt.d.ts +11 -0
  21. package/dist/commands/hunt.js +216 -0
  22. package/dist/commands/hunt.js.map +1 -0
  23. package/dist/hunt/__tests__/deep-dive.test.d.ts +1 -0
  24. package/dist/hunt/__tests__/deep-dive.test.js +102 -0
  25. package/dist/hunt/__tests__/deep-dive.test.js.map +1 -0
  26. package/dist/hunt/__tests__/discovery.test.d.ts +1 -0
  27. package/dist/hunt/__tests__/discovery.test.js +55 -0
  28. package/dist/hunt/__tests__/discovery.test.js.map +1 -0
  29. package/dist/hunt/__tests__/e2e.test.d.ts +1 -0
  30. package/dist/hunt/__tests__/e2e.test.js +261 -0
  31. package/dist/hunt/__tests__/e2e.test.js.map +1 -0
  32. package/dist/hunt/__tests__/matcher.test.d.ts +1 -0
  33. package/dist/hunt/__tests__/matcher.test.js +63 -0
  34. package/dist/hunt/__tests__/matcher.test.js.map +1 -0
  35. package/dist/hunt/__tests__/orchestrator.test.d.ts +1 -0
  36. package/dist/hunt/__tests__/orchestrator.test.js +73 -0
  37. package/dist/hunt/__tests__/orchestrator.test.js.map +1 -0
  38. package/dist/hunt/__tests__/parse-utils.test.d.ts +1 -0
  39. package/dist/hunt/__tests__/parse-utils.test.js +28 -0
  40. package/dist/hunt/__tests__/parse-utils.test.js.map +1 -0
  41. package/dist/hunt/__tests__/state.test.d.ts +1 -0
  42. package/dist/hunt/__tests__/state.test.js +49 -0
  43. package/dist/hunt/__tests__/state.test.js.map +1 -0
  44. package/dist/hunt/__tests__/templates.test.d.ts +1 -0
  45. package/dist/hunt/__tests__/templates.test.js +32 -0
  46. package/dist/hunt/__tests__/templates.test.js.map +1 -0
  47. package/dist/hunt/__tests__/triage.test.d.ts +1 -0
  48. package/dist/hunt/__tests__/triage.test.js +91 -0
  49. package/dist/hunt/__tests__/triage.test.js.map +1 -0
  50. package/dist/hunt/__tests__/types.test.d.ts +1 -0
  51. package/dist/hunt/__tests__/types.test.js +65 -0
  52. package/dist/hunt/__tests__/types.test.js.map +1 -0
  53. package/dist/hunt/deep-dive.d.ts +8 -0
  54. package/dist/hunt/deep-dive.js +86 -0
  55. package/dist/hunt/deep-dive.js.map +1 -0
  56. package/dist/hunt/discovery.d.ts +15 -0
  57. package/dist/hunt/discovery.js +116 -0
  58. package/dist/hunt/discovery.js.map +1 -0
  59. package/dist/hunt/matcher.d.ts +8 -0
  60. package/dist/hunt/matcher.js +27 -0
  61. package/dist/hunt/matcher.js.map +1 -0
  62. package/dist/hunt/orchestrator.d.ts +27 -0
  63. package/dist/hunt/orchestrator.js +91 -0
  64. package/dist/hunt/orchestrator.js.map +1 -0
  65. package/dist/hunt/parse-utils.d.ts +8 -0
  66. package/dist/hunt/parse-utils.js +44 -0
  67. package/dist/hunt/parse-utils.js.map +1 -0
  68. package/dist/hunt/state.d.ts +5 -0
  69. package/dist/hunt/state.js +35 -0
  70. package/dist/hunt/state.js.map +1 -0
  71. package/dist/hunt/templates/auth-bypass.d.ts +2 -0
  72. package/dist/hunt/templates/auth-bypass.js +80 -0
  73. package/dist/hunt/templates/auth-bypass.js.map +1 -0
  74. package/dist/hunt/templates/cors-misconfig.d.ts +2 -0
  75. package/dist/hunt/templates/cors-misconfig.js +88 -0
  76. package/dist/hunt/templates/cors-misconfig.js.map +1 -0
  77. package/dist/hunt/templates/csrf-bypass.d.ts +2 -0
  78. package/dist/hunt/templates/csrf-bypass.js +65 -0
  79. package/dist/hunt/templates/csrf-bypass.js.map +1 -0
  80. package/dist/hunt/templates/index.d.ts +3 -0
  81. package/dist/hunt/templates/index.js +29 -0
  82. package/dist/hunt/templates/index.js.map +1 -0
  83. package/dist/hunt/templates/injection.d.ts +2 -0
  84. package/dist/hunt/templates/injection.js +103 -0
  85. package/dist/hunt/templates/injection.js.map +1 -0
  86. package/dist/hunt/templates/open-redirect.d.ts +2 -0
  87. package/dist/hunt/templates/open-redirect.js +93 -0
  88. package/dist/hunt/templates/open-redirect.js.map +1 -0
  89. package/dist/hunt/templates/path-traversal.d.ts +2 -0
  90. package/dist/hunt/templates/path-traversal.js +94 -0
  91. package/dist/hunt/templates/path-traversal.js.map +1 -0
  92. package/dist/hunt/templates/prototype-pollution.d.ts +2 -0
  93. package/dist/hunt/templates/prototype-pollution.js +108 -0
  94. package/dist/hunt/templates/prototype-pollution.js.map +1 -0
  95. package/dist/hunt/templates/ssrf.d.ts +2 -0
  96. package/dist/hunt/templates/ssrf.js +75 -0
  97. package/dist/hunt/templates/ssrf.js.map +1 -0
  98. package/dist/hunt/templates/timing-attack.d.ts +2 -0
  99. package/dist/hunt/templates/timing-attack.js +108 -0
  100. package/dist/hunt/templates/timing-attack.js.map +1 -0
  101. package/dist/hunt/templates/weak-random.d.ts +2 -0
  102. package/dist/hunt/templates/weak-random.js +73 -0
  103. package/dist/hunt/templates/weak-random.js.map +1 -0
  104. package/dist/hunt/triage.d.ts +8 -0
  105. package/dist/hunt/triage.js +78 -0
  106. package/dist/hunt/triage.js.map +1 -0
  107. package/dist/lib/__tests__/bounty-scan.test.d.ts +1 -0
  108. package/dist/lib/__tests__/bounty-scan.test.js +15 -0
  109. package/dist/lib/__tests__/bounty-scan.test.js.map +1 -0
  110. package/dist/lib/__tests__/chain-analyzer.test.d.ts +1 -0
  111. package/dist/lib/__tests__/chain-analyzer.test.js +47 -0
  112. package/dist/lib/__tests__/chain-analyzer.test.js.map +1 -0
  113. package/dist/lib/__tests__/finding-dedup.test.d.ts +1 -0
  114. package/dist/lib/__tests__/finding-dedup.test.js +30 -0
  115. package/dist/lib/__tests__/finding-dedup.test.js.map +1 -0
  116. package/dist/lib/__tests__/learned-rules.test.js +25 -0
  117. package/dist/lib/__tests__/learned-rules.test.js.map +1 -1
  118. package/dist/lib/__tests__/novelty-checker.test.d.ts +1 -0
  119. package/dist/lib/__tests__/novelty-checker.test.js +57 -0
  120. package/dist/lib/__tests__/novelty-checker.test.js.map +1 -0
  121. package/dist/lib/__tests__/program-registry.test.d.ts +1 -0
  122. package/dist/lib/__tests__/program-registry.test.js +40 -0
  123. package/dist/lib/__tests__/program-registry.test.js.map +1 -0
  124. package/dist/lib/__tests__/retry.test.d.ts +1 -0
  125. package/dist/lib/__tests__/retry.test.js +23 -0
  126. package/dist/lib/__tests__/retry.test.js.map +1 -0
  127. package/dist/lib/__tests__/watchlist.test.d.ts +1 -0
  128. package/dist/lib/__tests__/watchlist.test.js +88 -0
  129. package/dist/lib/__tests__/watchlist.test.js.map +1 -0
  130. package/dist/lib/chain-analyzer.d.ts +25 -0
  131. package/dist/lib/chain-analyzer.js +105 -0
  132. package/dist/lib/chain-analyzer.js.map +1 -0
  133. package/dist/lib/finding-dedup.d.ts +2 -0
  134. package/dist/lib/finding-dedup.js +9 -0
  135. package/dist/lib/finding-dedup.js.map +1 -0
  136. package/dist/lib/issue-reporter.d.ts +13 -0
  137. package/dist/lib/issue-reporter.js +51 -0
  138. package/dist/lib/issue-reporter.js.map +1 -0
  139. package/dist/lib/novelty-checker.d.ts +60 -0
  140. package/dist/lib/novelty-checker.js +223 -0
  141. package/dist/lib/novelty-checker.js.map +1 -0
  142. package/dist/lib/program-registry.d.ts +12 -0
  143. package/dist/lib/program-registry.js +18 -0
  144. package/dist/lib/program-registry.js.map +1 -0
  145. package/dist/lib/retry.d.ts +5 -0
  146. package/dist/lib/retry.js +19 -0
  147. package/dist/lib/retry.js.map +1 -0
  148. package/dist/lib/watchlist.d.ts +23 -0
  149. package/dist/lib/watchlist.js +31 -0
  150. package/dist/lib/watchlist.js.map +1 -0
  151. package/dist/runtime/safe-executor.js +1 -1
  152. package/dist/runtime/safe-executor.js.map +1 -1
  153. package/dist/runtime/types.d.ts +1 -1
  154. package/dist/sdk/forward-verify.js +1 -1
  155. package/dist/sdk/forward-verify.js.map +1 -1
  156. package/dist/types.d.ts +45 -0
  157. package/package.json +1 -1
package/dist/cli.js CHANGED
@@ -19,6 +19,12 @@ import { suppressCommand, suppressionsListCommand, suppressionsClearCommand, sup
19
19
  import { configCommand } from './commands/config-cmd.js';
20
20
  import { harvestCommand } from './commands/harvest.js';
21
21
  import { catalogPush } from './commands/catalog-push.js';
22
+ import { bountyScanCommand } from './commands/bounty-scan.js';
23
+ import { bountyCheckCommand } from './commands/bounty-check.js';
24
+ import { bountyWatchCommand } from './commands/bounty-watch.js';
25
+ import { bountyChainCommand } from './commands/bounty-chain.js';
26
+ import { bountyDiscoverCommand } from './commands/bounty-discover.js';
27
+ import { huntCommand } from './commands/hunt.js';
22
28
  const program = new Command();
23
29
  program
24
30
  .name('assay')
@@ -98,6 +104,55 @@ program
98
104
  .option('--no-telemetry', 'Disable anonymous usage telemetry')
99
105
  .option('-y, --yes', 'Auto-confirm manifest without interactive prompt')
100
106
  .action(assessCommand);
107
+ program
108
+ .command('bounty-scan')
109
+ .description('Scan a repo for security vulnerabilities (bounty hunting mode)')
110
+ .argument('<target>', 'Path to codebase or GitHub repo URL')
111
+ .option('--max-lines <n>', 'Max lines per file to scan (default: 500)', '500')
112
+ .option('--max-files <n>', 'Max files to scan (default: 50)', '50')
113
+ .option('--output <dir>', 'Output directory for reports')
114
+ .option('--noclone', 'Use local path even if target looks like a URL')
115
+ .action(bountyScanCommand);
116
+ program
117
+ .command('bounty-check')
118
+ .description('Deep novelty check on bounty findings before submission')
119
+ .argument('<report>', 'Path to bounty-scan.json report')
120
+ .option('--finding <n>', 'Check specific finding by number (1-based)')
121
+ .action(bountyCheckCommand);
122
+ program
123
+ .command('bounty-watch')
124
+ .description('Watch repos for new security-relevant commits and scan them')
125
+ .option('--add <url>', 'Add a repo URL to the watchlist')
126
+ .option('--remove <url>', 'Remove a repo from the watchlist')
127
+ .option('--list', 'Show watchlist status')
128
+ .option('--dry-run', 'Show what would be scanned without calling Anthropic API')
129
+ .option('--watchlist <path>', 'Path to watchlist.json', 'watchlist.json')
130
+ .option('--state-file <path>', 'Path to scan-state.json', '.assay/scan-state.json')
131
+ .action(bountyWatchCommand);
132
+ program
133
+ .command('bounty-chain')
134
+ .description('Analyze bounty scan findings for composable vulnerability chains')
135
+ .argument('<report>', 'Path to bounty-scan.json report')
136
+ .action(bountyChainCommand);
137
+ program
138
+ .command('bounty-discover')
139
+ .description('Discover new bounty targets from program registry')
140
+ .option('--trending', 'Search for trending repos from bounty program orgs')
141
+ .option('--programs <path>', 'Path to programs.json', 'programs.json')
142
+ .option('--watchlist <path>', 'Path to watchlist.json', 'watchlist.json')
143
+ .action(bountyDiscoverCommand);
144
+ program
145
+ .command('hunt')
146
+ .description('Adversarial security scanner — find exploitable vulnerabilities')
147
+ .argument('<target>', 'Path to scan (local directory)')
148
+ .option('--dive <ids>', 'Deep-dive hypothesis by id (comma-separated)')
149
+ .option('--auto', 'Auto deep-dive all HIGH confidence hypotheses')
150
+ .option('--template <ids>', 'Run specific templates only (comma-separated)')
151
+ .option('--json', 'Output JSON for machine consumption')
152
+ .option('--min-confidence <level>', 'Minimum confidence threshold (high/medium/low)', 'low')
153
+ .option('--concurrency <n>', 'Max parallel LLM calls', '10')
154
+ .option('--state-dir <path>', 'Custom state directory')
155
+ .action(huntCommand);
101
156
  program
102
157
  .command('harvest')
103
158
  .description('Harvest formal verification rules from public TypeScript repos')
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,7 @@ import { CheckExecutor } from '../runtime/check-definitions.js';
15
15
  import { migrateOutputDir } from '../lib/output-dir.js';
16
16
  import { loadOverrides, buildSuppressedGapIdSet, isGapSuppressed } from '../lib/overrides.js';
17
17
  import { isTelemetryEnabled, sendTelemetryEvent, showTelemetryNotice, getPackageVersion } from '../lib/telemetry.js';
18
+ import { learnFromFinding, getLearnedRulesSummary } from '../lib/learned-rules/index.js';
18
19
  const OUTPUT_DIR = '.assay';
19
20
  const DEFAULT_API_URL = 'https://tryassay.ai';
20
21
  const DEFAULT_CONCURRENCY = 5;
@@ -397,6 +398,65 @@ export async function assessCommand(target, options) {
397
398
  }
398
399
  console.log(` \u2713 ${allBugs.length} bugs found (FAIL + PARTIAL)`);
399
400
  console.log(` \u2713 Tokens: ${totalInputTokens.toLocaleString()} in / ${totalOutputTokens.toLocaleString()} out`);
401
+ // Step 6.5: Feed confirmed failures to the learning system
402
+ // Each FAIL/PARTIAL verdict may produce a new formal rule
403
+ let rulesLearned = 0;
404
+ let learningAttempts = 0;
405
+ const failVerifications = allVerifications.filter((v) => v.verdict === 'FAIL' || v.verdict === 'PARTIAL');
406
+ if (failVerifications.length > 0) {
407
+ process.stdout.write(` Learning from ${failVerifications.length} findings...`);
408
+ for (const verification of failVerifications) {
409
+ // Read the source file referenced in evidence
410
+ const evidenceFile = verification.evidence[0]?.file;
411
+ if (!evidenceFile)
412
+ continue;
413
+ let code;
414
+ try {
415
+ const filePath = resolve(path, evidenceFile);
416
+ code = await readFile(filePath, 'utf-8');
417
+ }
418
+ catch {
419
+ continue; // File not readable — skip
420
+ }
421
+ // Detect language from file extension
422
+ const ext = evidenceFile.split('.').pop()?.toLowerCase() ?? '';
423
+ const langMap = {
424
+ ts: 'typescript', tsx: 'typescript',
425
+ js: 'javascript', jsx: 'javascript',
426
+ py: 'python', go: 'go', rs: 'rust', java: 'java',
427
+ };
428
+ const language = langMap[ext] ?? ext;
429
+ const input = {
430
+ claim: {
431
+ id: verification.claimId,
432
+ // Known limitation: assess-level ClaimVerification lacks category/severity.
433
+ // Default to 'security'/'high'. The pattern extractor uses claim.description
434
+ // text matching to select the right strategy, so category is a hint not a gate.
435
+ category: 'security',
436
+ severity: 'high',
437
+ description: verification.claim,
438
+ assertion: verification.claim,
439
+ },
440
+ verification: {
441
+ verdict: 'FAIL',
442
+ reasoning: verification.reasoning,
443
+ },
444
+ code,
445
+ language,
446
+ filePath: evidenceFile,
447
+ };
448
+ learningAttempts++;
449
+ try {
450
+ const result = await learnFromFinding(path, input);
451
+ if (result.learned)
452
+ rulesLearned++;
453
+ }
454
+ catch {
455
+ // Learning is best-effort — never blocks the pipeline
456
+ }
457
+ }
458
+ process.stdout.write(` ${rulesLearned} rules learned from ${learningAttempts} attempts\n`);
459
+ }
400
460
  // Write summary JSON for downstream consumption (report generation, publish)
401
461
  const summaryData = {
402
462
  repoName,
@@ -444,10 +504,23 @@ export async function assessCommand(target, options) {
444
504
  count: suppressedCount,
445
505
  ids: Array.from(suppressedIds),
446
506
  },
507
+ learning: {
508
+ attempts: learningAttempts,
509
+ rulesLearned,
510
+ totalRulesInCatalog: 0, // Will be filled below
511
+ },
447
512
  inputTokens: totalInputTokens,
448
513
  outputTokens: totalOutputTokens,
449
514
  completedAt: new Date().toISOString(),
450
515
  };
516
+ // Fill in catalog stats
517
+ try {
518
+ const catalogStats = await getLearnedRulesSummary(path);
519
+ summaryData.learning.totalRulesInCatalog = catalogStats.promoted;
520
+ }
521
+ catch {
522
+ // Catalog stats are informational only
523
+ }
451
524
  await writeFile(resolve(outputDir, 'assessment-summary.json'), JSON.stringify(summaryData, null, 2));
452
525
  console.log('[7/8] Generating report...');
453
526
  const assessmentResult = await withTimer('Report generation', () => generateAssessmentReport(flowResults, repoName, repoUrl, index.frameworks, { input: totalInputTokens, output: totalOutputTokens }, outputDir, (msg) => console.log(` ${msg}`)));
@@ -1 +1 @@
1
- {"version":3,"file":"assess.js","sourceRoot":"","sources":["../../src/commands/assess.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"assess.js","sourceRoot":"","sources":["../../src/commands/assess.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export declare function bountyChainCommand(reportPath: string): Promise<void>;
@@ -0,0 +1,34 @@
1
+ import { resolve } from 'node:path';
2
+ import { readFile } from 'node:fs/promises';
3
+ import { detectChains } from '../lib/chain-analyzer.js';
4
+ export async function bountyChainCommand(reportPath) {
5
+ let report;
6
+ try {
7
+ const raw = await readFile(resolve(reportPath), 'utf-8');
8
+ report = JSON.parse(raw);
9
+ }
10
+ catch (err) {
11
+ console.error(`Failed to read report: ${err instanceof Error ? err.message : err}`);
12
+ process.exit(1);
13
+ }
14
+ if (!report.findings || report.findings.length === 0) {
15
+ console.log('No findings to analyze for chains.');
16
+ return;
17
+ }
18
+ console.log(`\nAnalyzing ${report.findings.length} findings from ${report.repoName}...\n`);
19
+ const chains = detectChains(report.findings);
20
+ if (chains.length === 0) {
21
+ console.log('No vulnerability chains detected.');
22
+ return;
23
+ }
24
+ console.log(`Found ${chains.length} chain(s):\n`);
25
+ for (const chain of chains) {
26
+ console.log(` ${chain.chainId}`);
27
+ console.log(` A: [${chain.findingA.severity}] ${chain.findingA.file} — ${chain.findingA.claim.slice(0, 60)}`);
28
+ console.log(` B: [${chain.findingB.severity}] ${chain.findingB.file} — ${chain.findingB.claim.slice(0, 60)}`);
29
+ console.log(` Impact: ${chain.impact}`);
30
+ console.log(` Severity: ${chain.upgradedSeverity}`);
31
+ console.log('');
32
+ }
33
+ }
34
+ //# sourceMappingURL=bounty-chain.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bounty-chain.js","sourceRoot":"","sources":["../../src/commands/bounty-chain.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAoB,MAAM,0BAA0B,CAAC;AAE1E,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,UAAkB;IACzD,IAAI,MAAqD,CAAC;IAC1D,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC,CAAC;QACzD,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC3B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,0BAA0B,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;QACpF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrD,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;QAClD,OAAO;IACT,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,eAAe,MAAM,CAAC,QAAQ,CAAC,MAAM,kBAAkB,MAAM,CAAC,QAAQ,OAAO,CAAC,CAAC;IAE3F,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAE7C,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;QACjD,OAAO;IACT,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,SAAS,MAAM,CAAC,MAAM,cAAc,CAAC,CAAC;IAElD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QAClC,OAAO,CAAC,GAAG,CAAC,YAAY,KAAK,CAAC,QAAQ,CAAC,QAAQ,KAAK,KAAK,CAAC,QAAQ,CAAC,IAAI,MAAM,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;QAClH,OAAO,CAAC,GAAG,CAAC,YAAY,KAAK,CAAC,QAAQ,CAAC,QAAQ,KAAK,KAAK,CAAC,QAAQ,CAAC,IAAI,MAAM,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;QAClH,OAAO,CAAC,GAAG,CAAC,gBAAgB,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;QAC5C,OAAO,CAAC,GAAG,CAAC,kBAAkB,KAAK,CAAC,gBAAgB,EAAE,CAAC,CAAC;QACxD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC;AACH,CAAC"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Bounty Check — deep novelty verification before submitting a bounty report.
3
+ *
4
+ * Reads a bounty-scan.json report, picks a finding by index,
5
+ * and runs deep checks: GitHub advisories, git history, code comparison.
6
+ */
7
+ export interface BountyCheckOptions {
8
+ finding?: string;
9
+ }
10
+ export declare function bountyCheckCommand(reportPath: string, options: BountyCheckOptions): Promise<void>;
@@ -0,0 +1,104 @@
1
+ /**
2
+ * Bounty Check — deep novelty verification before submitting a bounty report.
3
+ *
4
+ * Reads a bounty-scan.json report, picks a finding by index,
5
+ * and runs deep checks: GitHub advisories, git history, code comparison.
6
+ */
7
+ import { resolve } from 'node:path';
8
+ import { readFile } from 'node:fs/promises';
9
+ import { deepNoveltyCheck, } from '../lib/novelty-checker.js';
10
+ export async function bountyCheckCommand(reportPath, options) {
11
+ // Read the bounty-scan report
12
+ let report;
13
+ try {
14
+ const raw = await readFile(resolve(reportPath), 'utf-8');
15
+ report = JSON.parse(raw);
16
+ }
17
+ catch (err) {
18
+ console.error(`Failed to read report: ${err instanceof Error ? err.message : err}`);
19
+ console.error('Usage: assay bounty-check <path-to-bounty-scan.json> --finding <n>');
20
+ process.exit(1);
21
+ }
22
+ if (!report.findings || report.findings.length === 0) {
23
+ console.log('No findings in report. Nothing to check.');
24
+ return;
25
+ }
26
+ // Determine which findings to check
27
+ const findingIndices = [];
28
+ if (options.finding) {
29
+ const idx = parseInt(options.finding, 10) - 1; // 1-based to 0-based
30
+ if (idx < 0 || idx >= report.findings.length) {
31
+ console.error(`Finding #${options.finding} out of range. Report has ${report.findings.length} finding(s).`);
32
+ process.exit(1);
33
+ }
34
+ findingIndices.push(idx);
35
+ }
36
+ else {
37
+ // Check all findings
38
+ for (let i = 0; i < report.findings.length; i++) {
39
+ findingIndices.push(i);
40
+ }
41
+ }
42
+ // Determine repo path — try to find the clone
43
+ const repoUrl = report.target;
44
+ const repoName = report.repoName;
45
+ // Look for existing clone in /tmp
46
+ let targetPath = '';
47
+ // Find the most recent bounty clone for this repo
48
+ try {
49
+ const { readdirSync } = await import('node:fs');
50
+ const tmpEntries = readdirSync('/tmp');
51
+ const bountyDirs = tmpEntries
52
+ .filter(e => e.startsWith(`assay-bounty-${repoName}`))
53
+ .sort()
54
+ .reverse();
55
+ if (bountyDirs.length > 0) {
56
+ targetPath = resolve('/tmp', bountyDirs[0]);
57
+ }
58
+ }
59
+ catch {
60
+ // /tmp scan failed
61
+ }
62
+ if (!targetPath) {
63
+ console.error(`No clone found for ${repoName}. Run bounty-scan first.`);
64
+ process.exit(1);
65
+ }
66
+ console.log('\n' + '='.repeat(60));
67
+ console.log(` BOUNTY NOVELTY CHECK: ${repoName}`);
68
+ console.log('='.repeat(60));
69
+ console.log(` Report: ${reportPath}`);
70
+ console.log(` Clone: ${targetPath}`);
71
+ console.log(` Checking ${findingIndices.length} finding(s)\n`);
72
+ for (const idx of findingIndices) {
73
+ const f = report.findings[idx];
74
+ console.log('-'.repeat(60));
75
+ console.log(` Finding #${idx + 1}: ${f.file}`);
76
+ console.log(` Claim: ${f.claim}`);
77
+ console.log(` Severity: ${f.severity} | Verdict: ${f.verdict}`);
78
+ console.log('-'.repeat(60));
79
+ const result = deepNoveltyCheck(targetPath, f.file, f.claim, repoUrl);
80
+ // Display results
81
+ console.log('');
82
+ console.log(` GitHub Advisories: ${result.advisories.length > 0
83
+ ? result.advisories.join('; ')
84
+ : 'None found'}`);
85
+ console.log(` Code on main: ${result.codeStillVulnerable === null
86
+ ? 'Could not determine'
87
+ : result.codeStillVulnerable
88
+ ? 'UNCHANGED (still vulnerable)'
89
+ : 'PATCHED'}`);
90
+ console.log(` Git history: ${result.reason}`);
91
+ console.log('');
92
+ const verdict = result.status === 'likely-novel'
93
+ ? ' VERDICT: LIKELY NOVEL'
94
+ : result.status === 'likely-patched'
95
+ ? ' VERDICT: LIKELY DUPLICATE'
96
+ : ' VERDICT: CHECK MANUALLY';
97
+ console.log(verdict);
98
+ console.log('');
99
+ }
100
+ console.log('='.repeat(60));
101
+ console.log(' Done. Review verdicts before submitting to HackerOne.');
102
+ console.log('='.repeat(60) + '\n');
103
+ }
104
+ //# sourceMappingURL=bounty-check.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bounty-check.js","sourceRoot":"","sources":["../../src/commands/bounty-check.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ export interface BountyDiscoverOptions {
2
+ trending?: boolean;
3
+ programs?: string;
4
+ watchlist?: string;
5
+ }
6
+ export declare function bountyDiscoverCommand(options: BountyDiscoverOptions): Promise<void>;
@@ -0,0 +1,45 @@
1
+ import { resolve } from 'node:path';
2
+ import { loadPrograms, findNewRepos } from '../lib/program-registry.js';
3
+ import { loadWatchlist, addRepo } from '../lib/watchlist.js';
4
+ import { safeExecSync } from '../runtime/safe-executor.js';
5
+ export async function bountyDiscoverCommand(options) {
6
+ const programsPath = resolve(options.programs ?? 'programs.json');
7
+ const watchlistPath = resolve(options.watchlist ?? 'watchlist.json');
8
+ if (options.trending) {
9
+ console.log('\nTrending Discovery\n');
10
+ const registry = await loadPrograms(programsPath);
11
+ for (const program of registry.programs) {
12
+ const org = program.repos[0]?.match(/github\.com\/([^/]+)/)?.[1];
13
+ if (!org)
14
+ continue;
15
+ const result = safeExecSync('gh', [
16
+ 'api', `orgs/${org}/repos`,
17
+ '--jq', 'sort_by(.pushed_at) | reverse | .[:5] | .[].full_name',
18
+ ]);
19
+ if (result.exitCode === 0 && result.stdout.trim()) {
20
+ console.log(` ${program.name} (${org}):`);
21
+ for (const repo of result.stdout.trim().split('\n').slice(0, 5)) {
22
+ console.log(` · ${repo}`);
23
+ }
24
+ console.log('');
25
+ }
26
+ }
27
+ return;
28
+ }
29
+ console.log('\nProgram Discovery\n');
30
+ const registry = await loadPrograms(programsPath);
31
+ const watchlist = await loadWatchlist(watchlistPath);
32
+ const existingUrls = watchlist.repos.map(r => r.url);
33
+ const newRepos = findNewRepos(registry, existingUrls);
34
+ if (newRepos.length === 0) {
35
+ console.log('All program repos are already in the watchlist.');
36
+ return;
37
+ }
38
+ console.log(`Found ${newRepos.length} new repo(s) to add:\n`);
39
+ for (const repo of newRepos) {
40
+ console.log(` + ${repo.url} (${repo.program})`);
41
+ await addRepo(watchlistPath, repo);
42
+ }
43
+ console.log('\nWatchlist updated.');
44
+ }
45
+ //# sourceMappingURL=bounty-discover.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bounty-discover.js","sourceRoot":"","sources":["../../src/commands/bounty-discover.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAQ3D,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,OAA8B;IACxE,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,QAAQ,IAAI,eAAe,CAAC,CAAC;IAClE,MAAM,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,IAAI,gBAAgB,CAAC,CAAC;IAErE,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;QACrB,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;QACtC,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,YAAY,CAAC,CAAC;QAClD,KAAK,MAAM,OAAO,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;YACxC,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,sBAAsB,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YACjE,IAAI,CAAC,GAAG;gBAAE,SAAS;YACnB,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,EAAE;gBAChC,KAAK,EAAE,QAAQ,GAAG,QAAQ;gBAC1B,MAAM,EAAE,uDAAuD;aAChE,CAAC,CAAC;YACH,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;gBAClD,OAAO,CAAC,GAAG,CAAC,KAAK,OAAO,CAAC,IAAI,KAAK,GAAG,IAAI,CAAC,CAAC;gBAC3C,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;oBAChE,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;gBAC/B,CAAC;gBACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAClB,CAAC;QACH,CAAC;QACD,OAAO;IACT,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;IACrC,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,YAAY,CAAC,CAAC;IAClD,MAAM,SAAS,GAAG,MAAM,aAAa,CAAC,aAAa,CAAC,CAAC;IACrD,MAAM,YAAY,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACrD,MAAM,QAAQ,GAAG,YAAY,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;IAEtD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAAC;QAC/D,OAAO;IACT,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,SAAS,QAAQ,CAAC,MAAM,wBAAwB,CAAC,CAAC;IAC9D,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC,GAAG,KAAK,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;QACjD,MAAM,OAAO,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;IACrC,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;AACtC,CAAC"}
@@ -0,0 +1,7 @@
1
+ export interface BountyScanOptions {
2
+ maxLines?: string;
3
+ maxFiles?: string;
4
+ output?: string;
5
+ noclone?: boolean;
6
+ }
7
+ export declare function bountyScanCommand(target: string, options: BountyScanOptions): Promise<void>;