@mneme-ai/correlator 0.8.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 (38) hide show
  1. package/README.md +42 -0
  2. package/dist/adapters/datadog.d.ts +41 -0
  3. package/dist/adapters/datadog.d.ts.map +1 -0
  4. package/dist/adapters/datadog.js +136 -0
  5. package/dist/adapters/datadog.js.map +1 -0
  6. package/dist/adapters/github-actions.d.ts +44 -0
  7. package/dist/adapters/github-actions.d.ts.map +1 -0
  8. package/dist/adapters/github-actions.js +114 -0
  9. package/dist/adapters/github-actions.js.map +1 -0
  10. package/dist/adapters/manual.d.ts +20 -0
  11. package/dist/adapters/manual.d.ts.map +1 -0
  12. package/dist/adapters/manual.js +47 -0
  13. package/dist/adapters/manual.js.map +1 -0
  14. package/dist/adapters/manual.test.d.ts +2 -0
  15. package/dist/adapters/manual.test.d.ts.map +1 -0
  16. package/dist/adapters/manual.test.js +54 -0
  17. package/dist/adapters/manual.test.js.map +1 -0
  18. package/dist/adapters/sentry.d.ts +51 -0
  19. package/dist/adapters/sentry.d.ts.map +1 -0
  20. package/dist/adapters/sentry.js +206 -0
  21. package/dist/adapters/sentry.js.map +1 -0
  22. package/dist/adapters/sentry.test.d.ts +2 -0
  23. package/dist/adapters/sentry.test.d.ts.map +1 -0
  24. package/dist/adapters/sentry.test.js +241 -0
  25. package/dist/adapters/sentry.test.js.map +1 -0
  26. package/dist/index.d.ts +6 -0
  27. package/dist/index.d.ts.map +1 -0
  28. package/dist/index.js +6 -0
  29. package/dist/index.js.map +1 -0
  30. package/dist/temporal.d.ts +24 -0
  31. package/dist/temporal.d.ts.map +1 -0
  32. package/dist/temporal.js +121 -0
  33. package/dist/temporal.js.map +1 -0
  34. package/dist/temporal.test.d.ts +2 -0
  35. package/dist/temporal.test.d.ts.map +1 -0
  36. package/dist/temporal.test.js +132 -0
  37. package/dist/temporal.test.js.map +1 -0
  38. package/package.json +32 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"temporal.js","sourceRoot":"","sources":["../src/temporal.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=temporal.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"temporal.test.d.ts","sourceRoot":"","sources":["../src/temporal.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,132 @@
1
+ import { describe, it, expect } from "vitest";
2
+ import { TemporalCorrelationEngine } from "./temporal.js";
3
+ const commit = (over = {}) => ({
4
+ hash: "a".repeat(40),
5
+ shortHash: "aaaaaaa",
6
+ authorName: "Alice",
7
+ authorEmail: "a@x.io",
8
+ authorDate: "2025-01-01T00:00:00Z",
9
+ committerDate: "2025-01-01T00:00:00Z",
10
+ subject: "fix payment",
11
+ body: "",
12
+ parents: [],
13
+ files: ["src/payment.ts"],
14
+ ...over,
15
+ });
16
+ const incident = (over = {}) => ({
17
+ id: "INC-1",
18
+ source: "manual",
19
+ title: "Stripe webhook 500",
20
+ occurredAt: "2025-01-02T00:00:00Z",
21
+ severity: "error",
22
+ affectedFiles: ["src/payment.ts"],
23
+ ...over,
24
+ });
25
+ const ONE_DAY = 24 * 60 * 60 * 1000;
26
+ describe("TemporalCorrelationEngine", () => {
27
+ const engine = new TemporalCorrelationEngine();
28
+ it("correlates commit + incident within window", async () => {
29
+ const out = await engine.correlate({
30
+ commits: [commit()],
31
+ incidents: [incident()],
32
+ windowMs: 7 * ONE_DAY,
33
+ });
34
+ expect(out.length).toBe(1);
35
+ expect(out[0].fromKind).toBe("commit");
36
+ expect(out[0].toKind).toBe("incident");
37
+ expect(out[0].weight).toBeGreaterThan(0);
38
+ });
39
+ it("ignores incidents outside the window", async () => {
40
+ const out = await engine.correlate({
41
+ commits: [commit({ authorDate: "2024-01-01T00:00:00Z" })],
42
+ incidents: [incident({ occurredAt: "2025-06-01T00:00:00Z" })],
43
+ windowMs: 7 * ONE_DAY,
44
+ });
45
+ expect(out).toEqual([]);
46
+ });
47
+ it("ignores commits AFTER the incident", async () => {
48
+ const out = await engine.correlate({
49
+ commits: [commit({ authorDate: "2025-01-10T00:00:00Z" })],
50
+ incidents: [incident({ occurredAt: "2025-01-02T00:00:00Z" })],
51
+ windowMs: 30 * ONE_DAY,
52
+ });
53
+ expect(out).toEqual([]);
54
+ });
55
+ it("higher score for closer-in-time commits", async () => {
56
+ const out = await engine.correlate({
57
+ commits: [
58
+ commit({ hash: "a".repeat(40), authorDate: "2025-01-01T23:00:00Z" }),
59
+ commit({ hash: "b".repeat(40), authorDate: "2025-01-01T01:00:00Z" }),
60
+ ],
61
+ incidents: [incident({ occurredAt: "2025-01-02T00:00:00Z" })],
62
+ windowMs: 7 * ONE_DAY,
63
+ });
64
+ expect(out.length).toBe(2);
65
+ const closer = out.find((c) => c.fromId === "a".repeat(40));
66
+ const farther = out.find((c) => c.fromId === "b".repeat(40));
67
+ expect(closer.weight).toBeGreaterThan(farther.weight);
68
+ });
69
+ it("file overlap boosts the score", async () => {
70
+ const c1 = commit({ hash: "a".repeat(40), files: ["src/payment.ts"] });
71
+ const c2 = commit({ hash: "b".repeat(40), files: ["src/unrelated.ts"] });
72
+ const inc = incident({ affectedFiles: ["src/payment.ts"] });
73
+ const out = await engine.correlate({
74
+ commits: [c1, c2],
75
+ incidents: [inc],
76
+ windowMs: 7 * ONE_DAY,
77
+ });
78
+ const overlap = out.find((c) => c.fromId === c1.hash);
79
+ const noOverlap = out.find((c) => c.fromId === c2.hash);
80
+ expect(overlap).toBeDefined();
81
+ if (noOverlap)
82
+ expect(overlap.weight).toBeGreaterThan(noOverlap.weight);
83
+ });
84
+ it("normalizes paths case-insensitively (Windows-friendly)", async () => {
85
+ const out = await engine.correlate({
86
+ commits: [commit({ files: ["SRC/Payment.TS"] })],
87
+ incidents: [incident({ affectedFiles: ["src/payment.ts"] })],
88
+ windowMs: 7 * ONE_DAY,
89
+ });
90
+ expect(out.length).toBe(1);
91
+ expect(out[0].reason).toMatch(/file overlap/i);
92
+ });
93
+ it("handles back-slash paths", async () => {
94
+ const out = await engine.correlate({
95
+ commits: [commit({ files: ["src\\payment.ts"] })],
96
+ incidents: [incident({ affectedFiles: ["src/payment.ts"] })],
97
+ windowMs: 7 * ONE_DAY,
98
+ });
99
+ expect(out.length).toBe(1);
100
+ });
101
+ it("respects minWeight threshold", async () => {
102
+ const strict = new TemporalCorrelationEngine({ minWeight: 0.99 });
103
+ const out = await strict.correlate({
104
+ commits: [commit({ files: ["unrelated.ts"], authorDate: "2024-12-29T00:00:00Z" })],
105
+ incidents: [incident({ affectedFiles: ["other.ts"] })],
106
+ windowMs: 7 * ONE_DAY,
107
+ });
108
+ expect(out).toEqual([]);
109
+ });
110
+ it("produces deterministic correlation ids", async () => {
111
+ const a = await engine.correlate({
112
+ commits: [commit()],
113
+ incidents: [incident()],
114
+ windowMs: 7 * ONE_DAY,
115
+ });
116
+ const b = await engine.correlate({
117
+ commits: [commit()],
118
+ incidents: [incident()],
119
+ windowMs: 7 * ONE_DAY,
120
+ });
121
+ expect(a[0].id).toBe(b[0].id);
122
+ });
123
+ it("includes evidence array", async () => {
124
+ const out = await engine.correlate({
125
+ commits: [commit()],
126
+ incidents: [incident()],
127
+ windowMs: 7 * ONE_DAY,
128
+ });
129
+ expect(out[0].evidence).toEqual([commit().hash, "INC-1"]);
130
+ });
131
+ });
132
+ //# sourceMappingURL=temporal.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"temporal.test.js","sourceRoot":"","sources":["../src/temporal.test.ts"],"names":[],"mappings":"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"}
package/package.json ADDED
@@ -0,0 +1,32 @@
1
+ {
2
+ "name": "@mneme-ai/correlator",
3
+ "version": "0.8.3",
4
+ "description": "Phase 3 — error/incident correlation engine. The moat: connect git + code + errors + time.",
5
+ "type": "module",
6
+ "main": "./dist/index.js",
7
+ "types": "./dist/index.d.ts",
8
+ "exports": {
9
+ ".": {
10
+ "import": "./dist/index.js",
11
+ "types": "./dist/index.d.ts"
12
+ }
13
+ },
14
+ "repository": {
15
+ "type": "git",
16
+ "url": "git+https://github.com/patsa2561-art/mneme-ai.git",
17
+ "directory": "packages/correlator"
18
+ },
19
+ "homepage": "https://github.com/patsa2561-art/mneme-ai#readme",
20
+ "bugs": {
21
+ "url": "https://github.com/patsa2561-art/mneme-ai/issues"
22
+ },
23
+ "license": "MIT",
24
+ "files": ["dist", "README.md"],
25
+ "scripts": {
26
+ "build": "tsc -b",
27
+ "clean": "tsc -b --clean"
28
+ },
29
+ "dependencies": {
30
+ "@mneme-ai/core": "0.8.3"
31
+ }
32
+ }