contradiction-mcp 0.2.1 → 0.3.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.
- package/README.md +80 -55
- package/dist/analysis/contextAnalyzer.js +13 -6
- package/dist/analysis/contextAnalyzer.js.map +1 -1
- package/dist/analysis/valueComparator.js +4 -4
- package/dist/analysis/valueComparator.js.map +1 -1
- package/dist/config/env.js +1 -1
- package/dist/connectors/document/documentConnector.js +44 -9
- package/dist/connectors/document/documentConnector.js.map +1 -1
- package/dist/connectors/website/websiteConnector.d.ts +1 -1
- package/dist/connectors/website/websiteConnector.js +6 -3
- package/dist/connectors/website/websiteConnector.js.map +1 -1
- package/dist/domain/entities/claim.d.ts +1 -1
- package/dist/domain/entities/claim.js +2 -0
- package/dist/domain/entities/claim.js.map +1 -1
- package/dist/intelligence/authorityScorer.js +14 -3
- package/dist/intelligence/authorityScorer.js.map +1 -1
- package/dist/intelligence/evidenceEvaluator.js +14 -3
- package/dist/intelligence/evidenceEvaluator.js.map +1 -1
- package/dist/intelligence/resolutionAdvisor.js +17 -0
- package/dist/intelligence/resolutionAdvisor.js.map +1 -1
- package/dist/scripts/comprehensiveVerification.js +2 -2
- package/dist/server.js +632 -810
- package/dist/server.js.map +1 -1
- package/dist/storage/database.d.ts +5 -0
- package/dist/storage/database.js +35 -3
- package/dist/storage/database.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
[](https://nodejs.org/)
|
|
10
10
|
[](https://www.typescriptlang.org/)
|
|
11
11
|
[](https://modelcontextprotocol.io/)
|
|
12
|
-
[](tests)
|
|
13
13
|
[](package.json)
|
|
14
14
|
[](https://prettier.io/)
|
|
15
15
|
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
<a href="#limitations--known-edge-cases">Limitations</a> •
|
|
20
20
|
<a href="#system-architecture">Architecture</a> •
|
|
21
21
|
<a href="#one-command-quickstart-all-ides">Quickstart</a> •
|
|
22
|
-
<a href="#mcp-interface-
|
|
22
|
+
<a href="#mcp-interface-12-canonical-tools-4-resources-2-prompts">Tools Reference</a> •
|
|
23
23
|
<a href="#step-by-step-hands-on-tutorial">Tutorials</a> •
|
|
24
24
|
<a href="#documentation-index">Docs</a> •
|
|
25
25
|
<a href="#license">License</a>
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
|
|
32
32
|
> [!NOTE]
|
|
33
33
|
>
|
|
34
|
-
> ### Project Status: Active Development (v0.
|
|
34
|
+
> ### Project Status: Active Development (v0.3.1)
|
|
35
35
|
>
|
|
36
36
|
> **Contradiction MCP is currently under active development.** Core multi-format document ingestion (Markdown, RFC822 `.eml`, OpenXML `.docx`, and JSON) and cross-document contradiction discovery are operational and verified. Heuristic classifiers, deep JSON scoping, and public APIs are actively evolving prior to v1.0.0.
|
|
37
37
|
|
|
@@ -76,25 +76,34 @@ When these systems diverge—for example, a Kubernetes manifest deploying Node.j
|
|
|
76
76
|
|
|
77
77
|
## Limitations & Known Edge Cases
|
|
78
78
|
|
|
79
|
-
While Contradiction MCP is battle-tested on cross-document and cross-source consistency audits, users should
|
|
79
|
+
While Contradiction MCP is battle-tested on cross-document and cross-source consistency audits, users and integrating agents should take note of current architectural boundaries and operational edge cases:
|
|
80
80
|
|
|
81
|
-
1. **Intra-Manifest Hierarchical Collisions (Deeply Nested JSON/YAML)**:
|
|
82
|
-
- **Behavior**: Key-value extraction flattens object hierarchies into leaf tokens. In complex single manifests (such as Kubernetes deployments), parameters sharing identical leaf keys across distinct blocks (e.g., `readinessProbe.initialDelaySeconds` vs `livenessProbe.initialDelaySeconds`, or container `resources.requests.cpu` vs `resources.limits.cpu`) can trigger intra-file candidate comparisons and false-positive warnings.
|
|
83
|
-
- **Mitigation**: Focus analysis on cross-document source verification or filter by external source boundaries.
|
|
81
|
+
1. **Intra-Manifest Hierarchical Collisions (Deeply Nested JSON/YAML/K8s)**:
|
|
82
|
+
- **Behavior**: Key-value extraction flattens object hierarchies into leaf tokens. In complex single manifests (such as Kubernetes deployments or Terraform plans), parameters sharing identical leaf keys across distinct blocks (e.g., `readinessProbe.initialDelaySeconds` vs `livenessProbe.initialDelaySeconds`, or container `resources.requests.cpu` vs `resources.limits.cpu`) can trigger intra-file candidate comparisons and false-positive warnings.
|
|
83
|
+
- **Mitigation**: Focus analysis on cross-document source verification or filter by external source boundaries (`sync_source` / `compare_sources`). Full JSON-path namespace scoping is in development for future releases.
|
|
84
84
|
|
|
85
|
-
2. **
|
|
86
|
-
- **Behavior**:
|
|
87
|
-
- **Mitigation**:
|
|
85
|
+
2. **Heuristic Claim Extraction vs Nuanced Prose Negations**:
|
|
86
|
+
- **Behavior**: Heuristic extractors identify explicit version strings, ports, URLs, quantities, and key-value declarations from markdown tables, code fences, and bullet points. Complex natural language nuance, rhetorical negations (e.g., _"We initially planned v3.0, but firmly rejected it in favor of v2.4"_), or implied conditionals without standard configuration keys might not extract or may produce contradictory assertions requiring manual review.
|
|
87
|
+
- **Mitigation**: Use explicit tabular or structured key-value declarations in documentation, or use `create_claim` to programmatically ingest claims with verified predicate semantics.
|
|
88
88
|
|
|
89
|
-
3. **
|
|
90
|
-
- **
|
|
89
|
+
3. **Connector Security Sandboxing & Network Boundaries**:
|
|
90
|
+
- **Document Connector**: File ingestion is strictly restricted to configured `allowedRoots` (default: current workspace). Paths outside these roots or attempts to navigate via directory traversal are rejected by design.
|
|
91
|
+
- **Website Connector**: Enforces strict SSRF protections, blocking private RFC 1918 subnets, loopback interfaces (`127.0.0.1`, `localhost`), and cloud instance metadata endpoints (`169.254.169.254`). HTTP redirects are capped at 5 hops to prevent circular redirect exhaustion. Client-side rendered Single-Page Applications (SPAs) requiring JavaScript execution are not executed dynamically; static HTML snapshots or rendered markdown must be supplied.
|
|
92
|
+
- **GitHub Connector**: Governed by GitHub REST API rate limits (60 requests/hour unauthenticated; 5,000 requests/hour with `GITHUB_TOKEN`).
|
|
91
93
|
|
|
92
|
-
4. **
|
|
93
|
-
- **Behavior**:
|
|
94
|
-
- **Mitigation**: Bounded file size guards (`MAX_FILE_SIZE_BYTES`, default 10MB) prevent memory exhaust. Partition giant monoliths into modular architecture specs.
|
|
94
|
+
4. **Static Assertions vs Ephemeral Live Infrastructure**:
|
|
95
|
+
- **Behavior**: The engine analyzes declared assertions across files, repositories, API specs, and documentation. It does not probe live runtime network sockets, ephemeral cloud container states, or uncommitted database rows unless synced as structured state documents.
|
|
95
96
|
|
|
96
|
-
5. **
|
|
97
|
-
- **Behavior**:
|
|
97
|
+
5. **Pairwise Combinatorial Complexity on Monolithic Manifests**:
|
|
98
|
+
- **Behavior**: Files producing >1,000 claims increase pairwise combinations quadratically ($O(N^2)$ worst-case prior to subject grouping and similarity pruning).
|
|
99
|
+
- **Mitigation**: Bounded file size guards (`MAX_FILE_SIZE_BYTES`, default 10MB) prevent memory exhaustion. Partition giant monolithic specifications into modular domain or component manifests.
|
|
100
|
+
|
|
101
|
+
6. **Environment & Scope Assumptions**:
|
|
102
|
+
- **Behavior**: Contradiction MCP recognizes disjoint runtime environments (`development`, `staging`, `testing`, `production`, `deployment`, `ci`). However, if claims are ingested without explicit `environment` or `scope` metadata, the engine conservatively assumes they apply to the same global subject scope.
|
|
103
|
+
- **Mitigation**: Provide explicit `environment` and `scope` arguments when syncing sources or creating claims to prevent false positives across heterogeneous environments.
|
|
104
|
+
|
|
105
|
+
7. **Language & Domain Units**:
|
|
106
|
+
- **Behavior**: Predicate patterns, quantity normalizers (`GB`, `MB`, `ms`, `s`, ports, semantic versions, comma-formatted numbers), and terminology heuristics are tuned for English technical documentation and standard DevOps configurations. Multi-lingual prose extraction without standard keying is planned for future major releases.
|
|
98
107
|
|
|
99
108
|
---
|
|
100
109
|
|
|
@@ -114,7 +123,7 @@ flowchart TD
|
|
|
114
123
|
subgraph Protocol["MCP Protocol Layer"]
|
|
115
124
|
StdioT["StdioServerTransport"]
|
|
116
125
|
HttpT["StreamableHttpTransport"]
|
|
117
|
-
Router["
|
|
126
|
+
Router["12 Canonical Tools | 4 Resources | 2 Prompts"]
|
|
118
127
|
end
|
|
119
128
|
|
|
120
129
|
subgraph Core["Analysis & Intelligence Engine"]
|
|
@@ -285,34 +294,29 @@ Connect distributed agents or team members to a centralized server daemon:
|
|
|
285
294
|
|
|
286
295
|
---
|
|
287
296
|
|
|
288
|
-
## MCP Interface:
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
|
295
|
-
|
|
|
296
|
-
| `
|
|
297
|
-
| `
|
|
298
|
-
| `
|
|
299
|
-
| `
|
|
300
|
-
| `
|
|
301
|
-
| `
|
|
302
|
-
| `
|
|
303
|
-
| `
|
|
304
|
-
| `
|
|
305
|
-
| `
|
|
306
|
-
| `
|
|
307
|
-
| `
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
| `sync_github_repository` | Ingests package.json, Dockerfile, README, and workflows | `owner`, `repo`, `branch` |
|
|
312
|
-
| `sync_document` | Ingests local JSON, YAML, MD, CSV, TXT, or PDF files | `filePath`, `subject`, `sourceRole` |
|
|
313
|
-
| `sync_website` | Ingests web URL with pre-flight SSRF protection | `url`, `subject`, `maxDepth` |
|
|
314
|
-
| `sync_source` | Synchronizes an existing registered source by ID | `sourceId` |
|
|
315
|
-
| `sync_sources` | Bounded-concurrency batch synchronization | `sourceIds` |
|
|
297
|
+
## MCP Interface: 12 Canonical Tools, 4 Resources, 2 Prompts
|
|
298
|
+
|
|
299
|
+
Contradiction MCP exposes **12 canonical tools** engineered to the highest specification standards (Glama Tool Definition Quality Score **5.0 / 5.0 Grade A**). Every tool strictly follows `verb_noun` nomenclature, provides rich typed schemas, and isolates distinct operational domains.
|
|
300
|
+
|
|
301
|
+
### Active Canonical MCP Tools (12)
|
|
302
|
+
|
|
303
|
+
| Tool Name | Operational Domain | Description | Key Arguments |
|
|
304
|
+
| :---------------------- | :----------------- | :------------------------------------------------------------------------------------------ | :------------------------------------------------------------------- |
|
|
305
|
+
| `check_health` | Diagnostics | Verifies server runtime health, database connectivity, and active connector health | `{}` |
|
|
306
|
+
| `list_sources` | Discovery | Lists registered knowledge sources and connector types with pagination | `type`, `limit`, `offset` |
|
|
307
|
+
| `test_connection` | Connectivity | Validates credentials, permissions, and network reachability without persisting data | `type`, `target`, `credentials` |
|
|
308
|
+
| `sync_source` | Ingestion | Unified ingestion engine for files, Markdown, Word (.docx), JSON, URLs, or Git repositories | `sourceId` OR (`filePath` / `url` / `owner`+`repo`), `subject` |
|
|
309
|
+
| `scan_contradictions` | Intelligence | Scans the knowledge base, a source, or a claim for logical/semantic contradictions | `sourceId`, `claimId`, `limit`, `minConfidence`, `includeDismissed` |
|
|
310
|
+
| `analyze_claim_pair` | Intelligence | Performs pairwise contradiction and contextual relationship analysis between two claims | `claimIdA`, `claimIdB` |
|
|
311
|
+
| `list_claims` | Knowledge Base | Lists extracted factual claims with multi-field filtering and pagination | `sourceId`, `subject`, `predicate`, `environment`, `limit`, `offset` |
|
|
312
|
+
| `get_claim` | Knowledge Base | Retrieves factual claim details, contextual metadata, and audit supersession history | `claimId` |
|
|
313
|
+
| `list_contradictions` | Lifecycle | Queries detected contradictions filtered by lifecycle status, severity, and confidence | `status`, `severity`, `minConfidence`, `limit`, `offset` |
|
|
314
|
+
| `get_contradiction` | Lifecycle | Retrieves full contradiction state, conflicting claims, and contextual explanation | `contradictionId` |
|
|
315
|
+
| `advise_resolution` | Advisory | Evaluates source authority, freshness, and evidence quality to recommend canonical truth | `contradictionId` |
|
|
316
|
+
| `resolve_contradiction` | Resolution | Executes lifecycle transitions (`REVIEW`, `RESOLVE`, `DISMISS`, `REOPEN`) with audit trail | `contradictionId`, `action`, `actor`, `reason`, `canonicalClaimId` |
|
|
317
|
+
|
|
318
|
+
> [!TIP]
|
|
319
|
+
> **Full Backwards Compatibility**: Legacy tool names (`health_check`, `sync_document`, `sync_website`, `sync_github_repository`, `scan_for_contradictions`, `scan_claim_for_contradictions`, `scan_source_for_contradictions`, `explain_claim_relationship`, `review_contradiction`, `dismiss_contradiction`, `reopen_contradiction`, `get_contradiction_history`, `get_claim_history`, `list_connectors`, `test_github_connection`, `sync_sources`) continue to function without error via automatic request routing and parameter translation.
|
|
316
320
|
|
|
317
321
|
### Active MCP Resources (4)
|
|
318
322
|
|
|
@@ -331,7 +335,7 @@ Connect distributed agents or team members to a centralized server daemon:
|
|
|
331
335
|
## Example Tool Payloads & Responses
|
|
332
336
|
|
|
333
337
|
<details>
|
|
334
|
-
<summary><b>1. Ingesting a Document (<code>sync_document</code>)</b></summary>
|
|
338
|
+
<summary><b>1. Ingesting a Document (<code>sync_source</code> / legacy: <code>sync_document</code>)</b></summary>
|
|
335
339
|
|
|
336
340
|
**Request**:
|
|
337
341
|
|
|
@@ -359,7 +363,7 @@ Connect distributed agents or team members to a centralized server daemon:
|
|
|
359
363
|
</details>
|
|
360
364
|
|
|
361
365
|
<details>
|
|
362
|
-
<summary><b>2. Scanning for Contradictions (<code>scan_for_contradictions</code>)</b></summary>
|
|
366
|
+
<summary><b>2. Scanning for Contradictions (<code>scan_contradictions</code> / legacy: <code>scan_for_contradictions</code>)</b></summary>
|
|
363
367
|
|
|
364
368
|
**Request**:
|
|
365
369
|
|
|
@@ -448,20 +452,20 @@ async function main() {
|
|
|
448
452
|
const client = new Client({ name: "tester", version: "1.0.0" }, { capabilities: {} });
|
|
449
453
|
await client.connect(new StdioClientTransport({ command: "node", args: ["dist/index.js"] }));
|
|
450
454
|
|
|
451
|
-
// Ingest Deployment Spec (role: deployment)
|
|
455
|
+
// Ingest Deployment Spec (canonical: sync_source, role: deployment)
|
|
452
456
|
await client.callTool({
|
|
453
|
-
name: "
|
|
457
|
+
name: "sync_source",
|
|
454
458
|
arguments: { filePath: "/tmp/deployment_spec.json", subject: "api-server", sourceRole: "deployment", environment: "production" }
|
|
455
459
|
});
|
|
456
460
|
|
|
457
|
-
// Ingest Architecture Guide (role: documentation)
|
|
461
|
+
// Ingest Architecture Guide (canonical: sync_source, role: documentation)
|
|
458
462
|
await client.callTool({
|
|
459
|
-
name: "
|
|
463
|
+
name: "sync_source",
|
|
460
464
|
arguments: { filePath: "/tmp/architecture_guide.md", subject: "api-server", sourceRole: "documentation", environment: "production" }
|
|
461
465
|
});
|
|
462
466
|
|
|
463
|
-
// Automatically scan knowledge base
|
|
464
|
-
const scan = await client.callTool({ name: "
|
|
467
|
+
// Automatically scan knowledge base (canonical: scan_contradictions)
|
|
468
|
+
const scan = await client.callTool({ name: "scan_contradictions", arguments: {} });
|
|
465
469
|
console.log("\nDISCOVERED CONTRADICTIONS:\n", JSON.stringify(JSON.parse(scan.content[0].text), null, 2));
|
|
466
470
|
|
|
467
471
|
await client.close();
|
|
@@ -479,7 +483,7 @@ main();
|
|
|
479
483
|
| `npm run build` | Compiles TypeScript and packages SQL migration scripts |
|
|
480
484
|
| `npm start` | Launches compiled production server (`node dist/index.js`) |
|
|
481
485
|
| `npm run dev` | Runs development server with on-the-fly TypeScript execution |
|
|
482
|
-
| `npm test` | Runs complete Vitest test suite (**
|
|
486
|
+
| `npm test` | Runs complete Vitest test suite (**181 tests across 25 files**) |
|
|
483
487
|
| `npm run test:coverage` | Generates detailed V8 code coverage report |
|
|
484
488
|
| `npm run verify` | Runs all 62 end-to-end verification gates (protocol, security, heuristics) |
|
|
485
489
|
| `npm run demo` | Executes live 17-step end-to-end demonstration scenario |
|
|
@@ -548,6 +552,27 @@ docker compose logs -f
|
|
|
548
552
|
|
|
549
553
|
## Release History
|
|
550
554
|
|
|
555
|
+
### v0.3.1 (2026-09-15)
|
|
556
|
+
|
|
557
|
+
- **Security & Extraction Hardening**: Replaced shell string execution in `DocumentConnector` with safe `execFileSync`, eliminating command injection vectors in `.docx` processing.
|
|
558
|
+
- **Website Connector Redirect Safety**: Enforced a strict maximum of 5 HTTP redirects to prevent unbounded redirect loops and guaranteed timeout cleanup on all fetch error paths.
|
|
559
|
+
- **Authority & Specification Role Scoring**: Added `'specification'` and `'deployment'` to standard claim source roles with a dedicated authority score of `0.75` in `AuthorityScorer`, preventing specification claims from falling into low-confidence fallbacks.
|
|
560
|
+
- **Evidence Metadata Alignment**: Aligned connector provenance metadata (`lineRange`, `evidence`) with `EvidenceEvaluator` and `AuthorityScorer` schema expectations to accurately quantify citation directness and snippet quality.
|
|
561
|
+
- **Deterministic Resolution Tie-Breaking**: Enhanced `ResolutionAdvisor` to evaluate evidence quality as a deterministic tie-breaker before falling back to `'uncertain'`.
|
|
562
|
+
- **Environment Disjointness Heuristics**: Expanded `ContextAnalyzer` environment comparison to recognize non-overlapping tiers (`development`, `staging`, `testing`, `production`, `deployment`, `ci`), eliminating false-positive contradiction flags across distinct environments.
|
|
563
|
+
- **Comma-Formatted Numeric Normalization**: Stripped comma separators in `ValueComparator` (`isLikelyNumber`, `normalizeQuantity`, `compareNumbers`) so formatted numbers (e.g., `"5,000"`) compare accurately against integer values.
|
|
564
|
+
- **Deterministic Database Pagination**: Added SQL `OFFSET` support and primary key tie-breakers (`ORDER BY created_at DESC, id ASC`) across `listSources`, `listClaims`, and `listContradictions` queries.
|
|
565
|
+
- **Server Tool Delegation Fixes**: Delegated `test_connection` to registered connector implementations and forwarded pagination offsets and sync metadata.
|
|
566
|
+
- **Expanded Regression Suite**: Added dedicated regression test suite (`tests/bugfixes.test.ts`), raising test coverage to 181 passing tests across 25 suites.
|
|
567
|
+
|
|
568
|
+
### v0.3.0 (2026-09-14)
|
|
569
|
+
|
|
570
|
+
- **12 Canonical Tools Architecture**: Streamlined tool interface into 12 orthogonal, strictly typed `verb_noun` tools (`check_health`, `list_sources`, `test_connection`, `sync_source`, `scan_contradictions`, `analyze_claim_pair`, `list_claims`, `get_claim`, `list_contradictions`, `get_contradiction`, `advise_resolution`, `resolve_contradiction`).
|
|
571
|
+
- **Zero-Breaking Backwards Compatibility Routing**: Added a transparent request router shim ensuring all legacy tool names continue to function seamlessly with argument translation.
|
|
572
|
+
- **Enhanced OpenXML (.docx) Ingestion**: Direct extraction of table structures (`<w:tr>`, `<w:tc>`) as key-value assertions with XML stripping to eliminate duplicate claims.
|
|
573
|
+
- **Multi-Format Cross-Document Consistency**: Verified cross-referencing and contradiction discovery across Markdown runbooks, JSON configs, and Word architecture documents.
|
|
574
|
+
- **Parametric Claim Queries**: Extended SQLite database layer with multi-field filtering (`predicate`, `environment`, `valueType`, `limit`, `offset`).
|
|
575
|
+
|
|
551
576
|
### v0.2.1 (2026-09-14)
|
|
552
577
|
|
|
553
578
|
- **22 Active MCP Tools**: Full interface alignment including `scan_source_for_contradictions` for targeted source discovery.
|
|
@@ -110,12 +110,19 @@ export class ContextAnalyzer {
|
|
|
110
110
|
// 4. Check Environment Divergence (e.g. dev vs prod, staging vs prod)
|
|
111
111
|
const envA = normalizeEnvironment(claimA.environment);
|
|
112
112
|
const envB = normalizeEnvironment(claimB.environment);
|
|
113
|
-
const
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
113
|
+
const isProdOrDeploy = (e) => e === 'production' || e === 'deployment';
|
|
114
|
+
const concreteRuntimeEnvs = [
|
|
115
|
+
'development',
|
|
116
|
+
'staging',
|
|
117
|
+
'testing',
|
|
118
|
+
'production',
|
|
119
|
+
'deployment',
|
|
120
|
+
'ci',
|
|
121
|
+
];
|
|
122
|
+
const isEnvDisjoint = envA !== envB &&
|
|
123
|
+
!(isProdOrDeploy(envA) && isProdOrDeploy(envB)) &&
|
|
124
|
+
concreteRuntimeEnvs.includes(envA) &&
|
|
125
|
+
concreteRuntimeEnvs.includes(envB);
|
|
119
126
|
if (isEnvDisjoint) {
|
|
120
127
|
divergences.push('environment');
|
|
121
128
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contextAnalyzer.js","sourceRoot":"","sources":["../../src/analysis/contextAnalyzer.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"contextAnalyzer.js","sourceRoot":"","sources":["../../src/analysis/contextAnalyzer.ts"],"names":[],"mappings":"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"}
|
|
@@ -344,10 +344,10 @@ export class ValueComparator {
|
|
|
344
344
|
}
|
|
345
345
|
// --- NUMBER / QUANTITY COMPARISON ---
|
|
346
346
|
isLikelyNumber(str) {
|
|
347
|
-
return /^[-+]
|
|
347
|
+
return /^[-+]?[\d,]+(?:\.\d+)?\s*(?:b|kb|mb|gb|tb|ms|s|sec|m|min|h|hr|hours)?$/i.test(str.trim());
|
|
348
348
|
}
|
|
349
349
|
normalizeQuantity(val) {
|
|
350
|
-
const trimmed = val.trim().toLowerCase();
|
|
350
|
+
const trimmed = val.trim().replace(/,/g, '').toLowerCase();
|
|
351
351
|
const match = trimmed.match(/^([-+]?\d+(?:\.\d+)?)\s*([a-z]*)$/i);
|
|
352
352
|
if (!match)
|
|
353
353
|
return null;
|
|
@@ -403,8 +403,8 @@ export class ValueComparator {
|
|
|
403
403
|
},
|
|
404
404
|
};
|
|
405
405
|
}
|
|
406
|
-
const numA = parseFloat(a.trim());
|
|
407
|
-
const numB = parseFloat(b.trim());
|
|
406
|
+
const numA = parseFloat(a.trim().replace(/,/g, ''));
|
|
407
|
+
const numB = parseFloat(b.trim().replace(/,/g, ''));
|
|
408
408
|
if (isNaN(numA) || isNaN(numB)) {
|
|
409
409
|
return this.compareStrings(a, b, valueType);
|
|
410
410
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"valueComparator.js","sourceRoot":"","sources":["../../src/analysis/valueComparator.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"valueComparator.js","sourceRoot":"","sources":["../../src/analysis/valueComparator.ts"],"names":[],"mappings":"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"}
|
package/dist/config/env.js
CHANGED
|
@@ -27,7 +27,7 @@ const EnvSchema = z.object({
|
|
|
27
27
|
DATABASE_PATH: z.string().min(1).default(getDefaultDatabasePath()),
|
|
28
28
|
LOG_LEVEL: z.enum(['debug', 'info', 'warn', 'error']).default('info'),
|
|
29
29
|
SERVER_NAME: z.string().min(1).default('contradiction-mcp'),
|
|
30
|
-
SERVER_VERSION: z.string().min(1).default('0.
|
|
30
|
+
SERVER_VERSION: z.string().min(1).default('0.3.1'),
|
|
31
31
|
GITHUB_TOKEN: z.string().optional(),
|
|
32
32
|
MCP_TRANSPORT: z.enum(['stdio', 'http']).default('stdio'),
|
|
33
33
|
HTTP_HOST: z.string().default('0.0.0.0'),
|
|
@@ -141,22 +141,48 @@ export class DocumentConnector {
|
|
|
141
141
|
}
|
|
142
142
|
else if (ext === '.docx') {
|
|
143
143
|
try {
|
|
144
|
-
const xml = child_process.
|
|
144
|
+
const xml = child_process.execFileSync('unzip', ['-p', realPath, 'word/document.xml'], {
|
|
145
145
|
encoding: 'utf-8',
|
|
146
146
|
maxBuffer: this.maxFileSizeBytes,
|
|
147
147
|
});
|
|
148
|
-
const
|
|
149
|
-
|
|
150
|
-
|
|
148
|
+
const extractedLines = [];
|
|
149
|
+
// 1. Extract table rows (<w:tr>) first to capture tabular specifications and key-value matrices
|
|
150
|
+
const tableRows = xml.match(/<w:tr\b[^>]*>.*?<\/w:tr>/gs) || [];
|
|
151
|
+
for (const tr of tableRows) {
|
|
152
|
+
const cells = tr.match(/<w:tc\b[^>]*>.*?<\/w:tc>/gs) || [];
|
|
153
|
+
const cellTexts = cells
|
|
154
|
+
.map((cell) => {
|
|
155
|
+
const tMatches = cell.match(/<w:t\b[^>]*>([^<]*)<\/w:t>/g) || [];
|
|
156
|
+
return tMatches
|
|
157
|
+
.map((t) => t.replace(/<[^>]+>/g, ''))
|
|
158
|
+
.join('')
|
|
159
|
+
.trim();
|
|
160
|
+
})
|
|
161
|
+
.filter(Boolean);
|
|
162
|
+
if (cellTexts.length >= 2) {
|
|
163
|
+
extractedLines.push(`- ${cellTexts[0]}: ${cellTexts.slice(1).join(' ')}`);
|
|
164
|
+
}
|
|
165
|
+
else if (cellTexts.length === 1) {
|
|
166
|
+
extractedLines.push(cellTexts[0]);
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
// 2. Extract regular paragraphs outside tables
|
|
170
|
+
const xmlWithoutTables = xml.replace(/<w:tbl\b[^>]*>.*?<\/w:tbl>/gs, '');
|
|
171
|
+
const paragraphs = xmlWithoutTables.match(/<w:p\b[^>]*>.*?<\/w:p>/gs) || [];
|
|
172
|
+
for (const p of paragraphs) {
|
|
151
173
|
const textMatches = p.match(/<w:t\b[^>]*>([^<]*)<\/w:t>/g);
|
|
152
174
|
if (!textMatches)
|
|
153
|
-
|
|
154
|
-
|
|
175
|
+
continue;
|
|
176
|
+
const text = textMatches
|
|
155
177
|
.map((t) => t.replace(/<[^>]+>/g, ''))
|
|
156
178
|
.join('')
|
|
157
179
|
.trim();
|
|
158
|
-
|
|
159
|
-
|
|
180
|
+
if (text) {
|
|
181
|
+
extractedLines.push(text);
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
// De-duplicate contiguous identical lines
|
|
185
|
+
lines = extractedLines.filter((l, idx) => idx === 0 || l !== extractedLines[idx - 1]);
|
|
160
186
|
content = lines.join('\n');
|
|
161
187
|
}
|
|
162
188
|
catch (err) {
|
|
@@ -425,7 +451,7 @@ export class DocumentConnector {
|
|
|
425
451
|
const headingMatch = line.match(/^(#{2,6})\s+(.+)$/);
|
|
426
452
|
if (headingMatch) {
|
|
427
453
|
const rawHeading = headingMatch[2].trim();
|
|
428
|
-
const genericSections = /^(overview|introduction|getting started|summary|table of contents|notes|appendix|prerequisites|requirements|technology stack|service configuration|monitoring|security|hardware requirements)/i;
|
|
454
|
+
const genericSections = /^(overview|introduction|getting started|summary|table of contents|notes|appendix|prerequisites|requirements|runtime requirements|deployment profile|deployment requirements|technology stack|service configuration|configuration|specifications|specs|monitoring|security|hardware requirements)/i;
|
|
429
455
|
if (!genericSections.test(rawHeading)) {
|
|
430
456
|
let s = rawHeading
|
|
431
457
|
.toLowerCase()
|
|
@@ -449,6 +475,15 @@ export class DocumentConnector {
|
|
|
449
475
|
const rawK = directMatch[1].trim();
|
|
450
476
|
const rawV = directMatch[2].trim();
|
|
451
477
|
if (rawK && rawV && !rawK.startsWith('#') && !rawK.includes('---')) {
|
|
478
|
+
const lowerK = rawK.toLowerCase();
|
|
479
|
+
if (lowerK === 'specification' ||
|
|
480
|
+
lowerK === 'property' ||
|
|
481
|
+
lowerK === 'setting' ||
|
|
482
|
+
lowerK === 'key' ||
|
|
483
|
+
lowerK === 'parameter' ||
|
|
484
|
+
lowerK === 'attribute') {
|
|
485
|
+
continue;
|
|
486
|
+
}
|
|
452
487
|
key = rawK.toLowerCase().replace(/[^a-z0-9_]/g, '_');
|
|
453
488
|
val = rawV.replace(/^[*`_"'\s]+|[*`_"'\s]+$/g, '').trim();
|
|
454
489
|
const qtyMatch = val.match(/(?:at\s+least|minimum|requires|is)?\s*(\d+(?:\.\d+)?\s*(?:gb|mb|tb|kb|g|m|b|ms|s|sec|seconds|minutes|hours))\b/i);
|