@tracehound/core 1.3.0 → 1.4.3

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 (53) hide show
  1. package/LICENSE +190 -0
  2. package/README.md +17 -30
  3. package/dist/core/agent.d.ts +8 -2
  4. package/dist/core/agent.d.ts.map +1 -1
  5. package/dist/core/agent.js +35 -7
  6. package/dist/core/agent.js.map +1 -1
  7. package/dist/core/evidence-worker-pool.d.ts +27 -0
  8. package/dist/core/evidence-worker-pool.d.ts.map +1 -0
  9. package/dist/core/evidence-worker-pool.js +87 -0
  10. package/dist/core/evidence-worker-pool.js.map +1 -0
  11. package/dist/core/evidence-worker.d.ts +20 -0
  12. package/dist/core/evidence-worker.d.ts.map +1 -0
  13. package/dist/core/evidence-worker.js +32 -0
  14. package/dist/core/evidence-worker.js.map +1 -0
  15. package/dist/core/hound-ipc.d.ts.map +1 -1
  16. package/dist/core/hound-ipc.js +14 -6
  17. package/dist/core/hound-ipc.js.map +1 -1
  18. package/dist/core/hound-pool.d.ts.map +1 -1
  19. package/dist/core/hound-pool.js +7 -1
  20. package/dist/core/hound-pool.js.map +1 -1
  21. package/dist/core/hound-process.js +2 -2
  22. package/dist/core/hound-process.js.map +1 -1
  23. package/dist/core/quarantine.d.ts +5 -0
  24. package/dist/core/quarantine.d.ts.map +1 -1
  25. package/dist/core/quarantine.js +7 -0
  26. package/dist/core/quarantine.js.map +1 -1
  27. package/dist/core/rate-limiter.d.ts +3 -0
  28. package/dist/core/rate-limiter.d.ts.map +1 -1
  29. package/dist/core/rate-limiter.js +21 -1
  30. package/dist/core/rate-limiter.js.map +1 -1
  31. package/dist/core/tracehound.d.ts.map +1 -1
  32. package/dist/core/tracehound.js +33 -3
  33. package/dist/core/tracehound.js.map +1 -1
  34. package/dist/index.d.ts +14 -14
  35. package/dist/index.d.ts.map +1 -1
  36. package/dist/index.js +13 -13
  37. package/dist/index.js.map +1 -1
  38. package/dist/types/config.d.ts +2 -0
  39. package/dist/types/config.d.ts.map +1 -1
  40. package/dist/types/config.js.map +1 -1
  41. package/package.json +4 -2
  42. package/dist/core/hound-worker.d.ts +0 -14
  43. package/dist/core/hound-worker.d.ts.map +0 -1
  44. package/dist/core/hound-worker.js +0 -112
  45. package/dist/core/hound-worker.js.map +0 -1
  46. package/dist/core/license-manager.d.ts +0 -128
  47. package/dist/core/license-manager.d.ts.map +0 -1
  48. package/dist/core/license-manager.js +0 -219
  49. package/dist/core/license-manager.js.map +0 -1
  50. package/dist/core/tier-capacity.d.ts +0 -58
  51. package/dist/core/tier-capacity.d.ts.map +0 -1
  52. package/dist/core/tier-capacity.js +0 -89
  53. package/dist/core/tier-capacity.js.map +0 -1
@@ -1,89 +0,0 @@
1
- /**
2
- * Tier-Aware Capacity Configuration
3
- *
4
- * Maps license tiers to HoundPool capacity constraints.
5
- * This enforces the pricing model's capacity-gating strategy.
6
- *
7
- * INVARIANT: Security features are identical across all tiers.
8
- * Only capacity (poolSize, memory, timeout) varies.
9
- */
10
- /**
11
- * Tier capacity definitions.
12
- *
13
- * | Tier | Processes | Memory | Timeout |
14
- * |------------|-----------|--------|---------|
15
- * | Starter | 1 | 64MB | 5s |
16
- * | Pro | 8 | 512MB | 30s |
17
- * | Enterprise | 32 | 2048MB | 60s |
18
- */
19
- export const TIER_CAPACITY_LIMITS = {
20
- starter: {
21
- poolSize: 1,
22
- maxMemoryMB: 64,
23
- timeoutMs: 5_000,
24
- onPoolExhausted: 'drop',
25
- deferQueueLimit: 10,
26
- },
27
- pro: {
28
- poolSize: 8,
29
- maxMemoryMB: 512,
30
- timeoutMs: 30_000,
31
- onPoolExhausted: 'defer',
32
- deferQueueLimit: 100,
33
- },
34
- enterprise: {
35
- poolSize: 32,
36
- maxMemoryMB: 2048,
37
- timeoutMs: 60_000,
38
- onPoolExhausted: 'defer',
39
- deferQueueLimit: 1000,
40
- },
41
- };
42
- // ─────────────────────────────────────────────────────────────────────────────
43
- // Factory
44
- // ─────────────────────────────────────────────────────────────────────────────
45
- /**
46
- * Create tier-aware HoundPool configuration.
47
- *
48
- * @param tier - License tier
49
- * @param overrides - Optional overrides (Enterprise can customize)
50
- * @returns HoundPool configuration
51
- *
52
- * @example
53
- * ```ts
54
- * const config = createTierAwarePoolConfig('pro')
55
- * const pool = createHoundPool(config)
56
- * ```
57
- */
58
- export function createTierAwarePoolConfig(tier, overrides) {
59
- const limits = TIER_CAPACITY_LIMITS[tier];
60
- const processConstraints = {
61
- maxMemoryMB: limits.maxMemoryMB,
62
- networkAccess: false,
63
- fileSystemWrite: false,
64
- childSpawn: false,
65
- };
66
- const baseConfig = {
67
- poolSize: limits.poolSize,
68
- timeout: limits.timeoutMs,
69
- rotationJitterMs: 1000,
70
- onPoolExhausted: limits.onPoolExhausted,
71
- deferQueueLimit: limits.deferQueueLimit,
72
- processConstraints,
73
- };
74
- // Enterprise tier can override
75
- if (tier === 'enterprise' && overrides) {
76
- return { ...baseConfig, ...overrides };
77
- }
78
- return baseConfig;
79
- }
80
- /**
81
- * Get capacity limits for a tier (read-only).
82
- *
83
- * @param tier - License tier
84
- * @returns Capacity limits
85
- */
86
- export function getTierCapacityLimits(tier) {
87
- return TIER_CAPACITY_LIMITS[tier];
88
- }
89
- //# sourceMappingURL=tier-capacity.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tier-capacity.js","sourceRoot":"","sources":["../../src/core/tier-capacity.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AA0BH;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAA4C;IAC3E,OAAO,EAAE;QACP,QAAQ,EAAE,CAAC;QACX,WAAW,EAAE,EAAE;QACf,SAAS,EAAE,KAAK;QAChB,eAAe,EAAE,MAAM;QACvB,eAAe,EAAE,EAAE;KACpB;IACD,GAAG,EAAE;QACH,QAAQ,EAAE,CAAC;QACX,WAAW,EAAE,GAAG;QAChB,SAAS,EAAE,MAAM;QACjB,eAAe,EAAE,OAAO;QACxB,eAAe,EAAE,GAAG;KACrB;IACD,UAAU,EAAE;QACV,QAAQ,EAAE,EAAE;QACZ,WAAW,EAAE,IAAI;QACjB,SAAS,EAAE,MAAM;QACjB,eAAe,EAAE,OAAO;QACxB,eAAe,EAAE,IAAI;KACtB;CACO,CAAA;AAEV,gFAAgF;AAChF,UAAU;AACV,gFAAgF;AAEhF;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,yBAAyB,CACvC,IAAiB,EACjB,SAAoC;IAEpC,MAAM,MAAM,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAA;IAEzC,MAAM,kBAAkB,GAAqC;QAC3D,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,aAAa,EAAE,KAAK;QACpB,eAAe,EAAE,KAAK;QACtB,UAAU,EAAE,KAAK;KAClB,CAAA;IAED,MAAM,UAAU,GAAoB;QAClC,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,OAAO,EAAE,MAAM,CAAC,SAAS;QACzB,gBAAgB,EAAE,IAAI;QACtB,eAAe,EAAE,MAAM,CAAC,eAAe;QACvC,eAAe,EAAE,MAAM,CAAC,eAAe;QACvC,kBAAkB;KACnB,CAAA;IAED,+BAA+B;IAC/B,IAAI,IAAI,KAAK,YAAY,IAAI,SAAS,EAAE,CAAC;QACvC,OAAO,EAAE,GAAG,UAAU,EAAE,GAAG,SAAS,EAAE,CAAA;IACxC,CAAC;IAED,OAAO,UAAU,CAAA;AACnB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,qBAAqB,CAAC,IAAiB;IACrD,OAAO,oBAAoB,CAAC,IAAI,CAAC,CAAA;AACnC,CAAC"}