@martinloop/mcp 0.3.7 → 0.3.9

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 (88) hide show
  1. package/README.md +196 -137
  2. package/dist/resources.js +148 -148
  3. package/dist/server.js +0 -0
  4. package/dist/tools/tool-support.js +11 -1
  5. package/dist/vendor/adapters/claude-cli.d.ts +2 -2
  6. package/dist/vendor/adapters/claude-cli.js +127 -51
  7. package/dist/vendor/adapters/codex-launcher.js +10 -1
  8. package/dist/vendor/adapters/openai-compatible.js +6 -6
  9. package/package.json +86 -76
  10. package/server.json +21 -21
  11. package/dist/vendor/adapters/adapters/src/claude-cli.d.ts +0 -146
  12. package/dist/vendor/adapters/adapters/src/claude-cli.js +0 -1100
  13. package/dist/vendor/adapters/adapters/src/cli-bridge.d.ts +0 -103
  14. package/dist/vendor/adapters/adapters/src/cli-bridge.js +0 -569
  15. package/dist/vendor/adapters/adapters/src/codex-launcher.d.ts +0 -78
  16. package/dist/vendor/adapters/adapters/src/codex-launcher.js +0 -663
  17. package/dist/vendor/adapters/adapters/src/direct-provider.d.ts +0 -10
  18. package/dist/vendor/adapters/adapters/src/direct-provider.js +0 -40
  19. package/dist/vendor/adapters/adapters/src/index.d.ts +0 -8
  20. package/dist/vendor/adapters/adapters/src/index.js +0 -8
  21. package/dist/vendor/adapters/adapters/src/openai-compatible.d.ts +0 -62
  22. package/dist/vendor/adapters/adapters/src/openai-compatible.js +0 -306
  23. package/dist/vendor/adapters/adapters/src/runtime-support.d.ts +0 -17
  24. package/dist/vendor/adapters/adapters/src/runtime-support.js +0 -59
  25. package/dist/vendor/adapters/adapters/src/stub-agent-cli.d.ts +0 -8
  26. package/dist/vendor/adapters/adapters/src/stub-agent-cli.js +0 -40
  27. package/dist/vendor/adapters/adapters/src/stub-direct-provider.d.ts +0 -8
  28. package/dist/vendor/adapters/adapters/src/stub-direct-provider.js +0 -12
  29. package/dist/vendor/adapters/adapters/src/verifier-only.d.ts +0 -9
  30. package/dist/vendor/adapters/adapters/src/verifier-only.js +0 -63
  31. package/dist/vendor/adapters/contracts/src/context-graph.d.ts +0 -48
  32. package/dist/vendor/adapters/contracts/src/context-graph.js +0 -26
  33. package/dist/vendor/adapters/contracts/src/execution-policy.d.ts +0 -78
  34. package/dist/vendor/adapters/contracts/src/execution-policy.js +0 -43
  35. package/dist/vendor/adapters/contracts/src/governance.d.ts +0 -24
  36. package/dist/vendor/adapters/contracts/src/governance.js +0 -11
  37. package/dist/vendor/adapters/contracts/src/identity.d.ts +0 -29
  38. package/dist/vendor/adapters/contracts/src/identity.js +0 -30
  39. package/dist/vendor/adapters/contracts/src/index.d.ts +0 -412
  40. package/dist/vendor/adapters/contracts/src/index.js +0 -225
  41. package/dist/vendor/adapters/contracts/src/operator.d.ts +0 -19
  42. package/dist/vendor/adapters/contracts/src/operator.js +0 -11
  43. package/dist/vendor/adapters/contracts/src/trajectory.d.ts +0 -26
  44. package/dist/vendor/adapters/contracts/src/trajectory.js +0 -27
  45. package/dist/vendor/adapters/core/src/compiler.d.ts +0 -52
  46. package/dist/vendor/adapters/core/src/compiler.js +0 -52
  47. package/dist/vendor/adapters/core/src/context-graph.d.ts +0 -3
  48. package/dist/vendor/adapters/core/src/context-graph.js +0 -371
  49. package/dist/vendor/adapters/core/src/context-integrity.d.ts +0 -26
  50. package/dist/vendor/adapters/core/src/context-integrity.js +0 -80
  51. package/dist/vendor/adapters/core/src/grounding.d.ts +0 -38
  52. package/dist/vendor/adapters/core/src/grounding.js +0 -273
  53. package/dist/vendor/adapters/core/src/identity.d.ts +0 -20
  54. package/dist/vendor/adapters/core/src/identity.js +0 -86
  55. package/dist/vendor/adapters/core/src/index.d.ts +0 -186
  56. package/dist/vendor/adapters/core/src/index.js +0 -1495
  57. package/dist/vendor/adapters/core/src/leash.d.ts +0 -48
  58. package/dist/vendor/adapters/core/src/leash.js +0 -497
  59. package/dist/vendor/adapters/core/src/persistence/compiler.d.ts +0 -18
  60. package/dist/vendor/adapters/core/src/persistence/compiler.js +0 -34
  61. package/dist/vendor/adapters/core/src/persistence/index.d.ts +0 -10
  62. package/dist/vendor/adapters/core/src/persistence/index.js +0 -5
  63. package/dist/vendor/adapters/core/src/persistence/integrity.d.ts +0 -39
  64. package/dist/vendor/adapters/core/src/persistence/integrity.js +0 -252
  65. package/dist/vendor/adapters/core/src/persistence/ledger.d.ts +0 -23
  66. package/dist/vendor/adapters/core/src/persistence/ledger.js +0 -9
  67. package/dist/vendor/adapters/core/src/persistence/memory-store.d.ts +0 -63
  68. package/dist/vendor/adapters/core/src/persistence/memory-store.js +0 -115
  69. package/dist/vendor/adapters/core/src/persistence/runs-reader.d.ts +0 -66
  70. package/dist/vendor/adapters/core/src/persistence/runs-reader.js +0 -140
  71. package/dist/vendor/adapters/core/src/persistence/store.d.ts +0 -89
  72. package/dist/vendor/adapters/core/src/persistence/store.js +0 -125
  73. package/dist/vendor/adapters/core/src/persistence/trace-store.d.ts +0 -85
  74. package/dist/vendor/adapters/core/src/persistence/trace-store.js +0 -125
  75. package/dist/vendor/adapters/core/src/policy-compiler.d.ts +0 -2
  76. package/dist/vendor/adapters/core/src/policy-compiler.js +0 -195
  77. package/dist/vendor/adapters/core/src/policy.d.ts +0 -156
  78. package/dist/vendor/adapters/core/src/policy.js +0 -704
  79. package/dist/vendor/adapters/core/src/repo-analyzer.d.ts +0 -53
  80. package/dist/vendor/adapters/core/src/repo-analyzer.js +0 -263
  81. package/dist/vendor/adapters/core/src/rollback.d.ts +0 -15
  82. package/dist/vendor/adapters/core/src/rollback.js +0 -253
  83. package/dist/vendor/adapters/core/src/routing.d.ts +0 -82
  84. package/dist/vendor/adapters/core/src/routing.js +0 -336
  85. package/dist/vendor/adapters/core/src/test-integrity.d.ts +0 -64
  86. package/dist/vendor/adapters/core/src/test-integrity.js +0 -197
  87. package/dist/vendor/adapters/core/src/trajectory.d.ts +0 -18
  88. package/dist/vendor/adapters/core/src/trajectory.js +0 -295
@@ -1,156 +0,0 @@
1
- import type { BudgetPreflightEstimate, CostProvenance, EvidenceVector, FailureClass, InterventionType, LoopAttempt, LoopBudget, LoopCost, LoopLifecycleState, LoopStatus, PatchDecisionArtifact, PatchScore, PolicyPhase } from "../../../contracts/index.js";
2
- export interface FailureAssessment {
3
- failureClass: FailureClass;
4
- rationale: string;
5
- retryable: boolean;
6
- recommendedIntervention: InterventionType;
7
- /** Actionable diagnosis injected into the next attempt's prompt context. */
8
- diagnosticHint?: string;
9
- }
10
- export interface CostGovernorState {
11
- pressure: "healthy" | "soft_limit" | "hard_limit";
12
- shouldStop: boolean;
13
- remainingBudgetUsd: number;
14
- remainingIterations: number;
15
- remainingTokens: number;
16
- recommendedIntervention?: InterventionType;
17
- }
18
- export interface ExitDecision {
19
- shouldExit: boolean;
20
- lifecycleState: LoopLifecycleState;
21
- status: LoopStatus;
22
- reason: string;
23
- /** Machine-readable stop classifier for non-attempt exits such as preflight safety blocks. */
24
- failureClass?: FailureClass;
25
- /** Machine-readable safety surface, when the stop came from a safety leash. */
26
- safetySurface?: string;
27
- /** Stable reason code for dashboards, MCP, and downstream automation. */
28
- reasonCode?: string;
29
- }
30
- export interface MartinAdapterResultLike {
31
- status: "completed" | "failed";
32
- summary: string;
33
- usage?: {
34
- actualUsd: number;
35
- estimatedUsd?: number;
36
- tokensIn: number;
37
- tokensOut: number;
38
- provenance?: CostProvenance;
39
- };
40
- verification: {
41
- passed: boolean;
42
- summary: string;
43
- steps?: Array<{
44
- command: string;
45
- launched: boolean;
46
- exitCode?: number;
47
- timedOut: boolean;
48
- fastFail?: boolean;
49
- detail?: string;
50
- }>;
51
- warnings?: string[];
52
- };
53
- failure?: {
54
- message: string;
55
- classHint?: FailureClass;
56
- };
57
- }
58
- /**
59
- * Maps a PolicyPhase to the LoopLifecycleState used in events and persistence.
60
- * FailureClass remains a thin output label — policy reads EvidenceVector, not the label.
61
- */
62
- export declare function policyPhaseToLifecycleState(phase: PolicyPhase): LoopLifecycleState;
63
- /**
64
- * Determines the next PolicyPhase given the current phase and last result.
65
- * This is the explicit typed transition table — no implicit fallthrough.
66
- */
67
- export declare function nextPolicyPhase(current: PolicyPhase, result: MartinAdapterResultLike, costState: CostGovernorState, retryCount: number): PolicyPhase;
68
- export declare function classifyFailure(input: {
69
- attempts: LoopAttempt[];
70
- result: MartinAdapterResultLike;
71
- }): FailureAssessment;
72
- export declare function evaluateCostGovernor(input: {
73
- budget: LoopBudget;
74
- cost: LoopCost;
75
- attemptsUsed: number;
76
- }): CostGovernorState;
77
- export interface CostPerOutcome {
78
- costPerAcceptedChange: number | undefined;
79
- costPerAttempt: number;
80
- acceptanceRate: number;
81
- wastedCoordinationUsd: number;
82
- }
83
- export declare function calculateCostPerOutcome(input: {
84
- totalCostUsd: number;
85
- preworkCostUsd: number;
86
- attemptCount: number;
87
- accepted: boolean;
88
- verificationPassed: boolean;
89
- }): CostPerOutcome;
90
- export declare function inferExit(input: {
91
- loop: {
92
- budget: LoopBudget;
93
- cost: LoopCost;
94
- attempts: LoopAttempt[];
95
- };
96
- lastResult: MartinAdapterResultLike;
97
- lastFailure?: FailureAssessment;
98
- costState: CostGovernorState;
99
- canSwitchAdapter?: boolean;
100
- }): ExitDecision;
101
- export interface BudgetPreflightInput {
102
- promptCharCount: number;
103
- attemptCount: number;
104
- remainingBudgetUsd: number;
105
- perAttemptCapUsd?: number;
106
- pricePerMTokenUsd?: number;
107
- }
108
- export interface BudgetPreflightDecision {
109
- allowed: boolean;
110
- reason: string;
111
- estimate: BudgetPreflightEstimate;
112
- }
113
- export declare function evaluateBudgetPreflight(input: BudgetPreflightInput): BudgetPreflightDecision;
114
- export interface EvidenceVectorInput {
115
- compilerOutput?: string;
116
- testOutput?: string;
117
- diff?: string;
118
- previousDiff?: string;
119
- forbiddenTouchedFiles?: string[];
120
- missingSymbols?: string[];
121
- actualUsd?: number;
122
- previousVerifierScore?: number;
123
- verifierScore?: number;
124
- retryCountForSurface?: number;
125
- }
126
- export declare function computeEvidenceVector(input: EvidenceVectorInput): EvidenceVector;
127
- export type RecoveryRecipe = "narrow_prompt_targeted_files" | "failing_tests_only" | "force_repo_anatomy_slices" | "tighten_allowlist_reduce_patch" | "strategy_swap" | "abort_safety_violation" | "downgrade_model" | "escalate_human";
128
- export interface RecoveryDecision {
129
- recipe: RecoveryRecipe;
130
- rationale: string;
131
- intervention: InterventionType;
132
- }
133
- export interface PatchDecisionInput {
134
- verificationPassed: boolean;
135
- previousVerifierScore?: number;
136
- verifierScore?: number;
137
- groundingViolationCount?: number;
138
- safetyViolationCount?: number;
139
- scopeViolationCount?: number;
140
- changedFileCount?: number;
141
- diffNovelty?: number;
142
- diffStats?: {
143
- filesChanged: number;
144
- addedLines: number;
145
- deletedLines: number;
146
- };
147
- costUsd?: number;
148
- humanApprovalRequired?: boolean;
149
- summary?: string;
150
- }
151
- export interface EvaluatedPatchDecision extends PatchDecisionArtifact {
152
- score: PatchScore;
153
- }
154
- export declare function selectRecoveryRecipe(evidence: EvidenceVector): RecoveryDecision;
155
- export declare function evaluatePatchDecision(input: PatchDecisionInput): EvaluatedPatchDecision;
156
- export declare function scorePatchDecision(input: PatchDecisionInput): PatchScore;