@mneme-ai/core 2.19.86-lite → 2.19.87-lite
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/dist/agent_manifest.d.ts +1 -1
- package/dist/agent_manifest.d.ts.map +1 -1
- package/dist/agent_manifest.js +10 -1
- package/dist/agent_manifest.js.map +1 -1
- package/dist/ai_confessional/ai_confessional.test.d.ts +2 -0
- package/dist/ai_confessional/ai_confessional.test.d.ts.map +1 -0
- package/dist/ai_confessional/ai_confessional.test.js +51 -0
- package/dist/ai_confessional/ai_confessional.test.js.map +1 -0
- package/dist/ai_confessional/index.d.ts +43 -0
- package/dist/ai_confessional/index.d.ts.map +1 -0
- package/dist/ai_confessional/index.js +147 -0
- package/dist/ai_confessional/index.js.map +1 -0
- package/dist/dep_mortality/dep_mortality.test.d.ts +2 -0
- package/dist/dep_mortality/dep_mortality.test.d.ts.map +1 -0
- package/dist/dep_mortality/dep_mortality.test.js +39 -0
- package/dist/dep_mortality/dep_mortality.test.js.map +1 -0
- package/dist/dep_mortality/index.d.ts +51 -0
- package/dist/dep_mortality/index.d.ts.map +1 -0
- package/dist/dep_mortality/index.js +85 -0
- package/dist/dep_mortality/index.js.map +1 -0
- package/dist/funeral/index.d.ts +49 -0
- package/dist/funeral/index.d.ts.map +1 -0
- package/dist/funeral/index.js +172 -0
- package/dist/funeral/index.js.map +1 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +17 -0
- package/dist/index.js.map +1 -1
- package/dist/socratic/index.d.ts +41 -0
- package/dist/socratic/index.d.ts.map +1 -0
- package/dist/socratic/index.js +123 -0
- package/dist/socratic/index.js.map +1 -0
- package/dist/socratic/socratic.test.d.ts +2 -0
- package/dist/socratic/socratic.test.d.ts.map +1 -0
- package/dist/socratic/socratic.test.js +26 -0
- package/dist/socratic/socratic.test.js.map +1 -0
- package/dist/whistleblower/index.d.ts +56 -0
- package/dist/whistleblower/index.d.ts.map +1 -0
- package/dist/whistleblower/index.js +158 -0
- package/dist/whistleblower/index.js.map +1 -0
- package/dist/whistleblower/whistleblower.test.d.ts +2 -0
- package/dist/whistleblower/whistleblower.test.d.ts.map +1 -0
- package/dist/whistleblower/whistleblower.test.js +40 -0
- package/dist/whistleblower/whistleblower.test.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { describe, it, expect } from "vitest";
|
|
2
|
+
import { predictMortality } from "./index.js";
|
|
3
|
+
describe("dep_mortality · scoring", () => {
|
|
4
|
+
it("moment-style dead package scores high mortality (>= 0.45)", () => {
|
|
5
|
+
const r = predictMortality({
|
|
6
|
+
name: "moment", monthsSinceLatest: 30, monthsSinceFeatureRelease: 30,
|
|
7
|
+
deprecated: false, maintainerCount: 3, prevMaintainerCount: 5,
|
|
8
|
+
});
|
|
9
|
+
expect(r.score).toBeGreaterThanOrEqual(0.45);
|
|
10
|
+
expect(["watch", "moribund", "dead"]).toContain(r.band);
|
|
11
|
+
// moment is in KNOWN_SUBSTITUTES so the recommendation mentions date-fns
|
|
12
|
+
expect(r.recommendation.toLowerCase()).toMatch(/date-fns|dayjs|alternative/);
|
|
13
|
+
});
|
|
14
|
+
it("fresh active package scores low mortality + thriving band", () => {
|
|
15
|
+
const r = predictMortality({
|
|
16
|
+
name: "freshly-maintained", monthsSinceLatest: 0, monthsSinceFeatureRelease: 1,
|
|
17
|
+
deprecated: false, maintainerCount: 4, prevMaintainerCount: 4,
|
|
18
|
+
});
|
|
19
|
+
expect(r.score).toBeLessThan(0.20);
|
|
20
|
+
expect(["thriving", "healthy"]).toContain(r.band);
|
|
21
|
+
});
|
|
22
|
+
it("deprecated package gets a deprecation bump", () => {
|
|
23
|
+
const r = predictMortality({
|
|
24
|
+
name: "abandoned", monthsSinceLatest: 5, monthsSinceFeatureRelease: 6,
|
|
25
|
+
deprecated: true, maintainerCount: 1, prevMaintainerCount: 1,
|
|
26
|
+
});
|
|
27
|
+
expect(r.reasons.find((rs) => rs.signal === "deprecation")?.raw).toBe(1);
|
|
28
|
+
expect(r.probability18mo).toBeGreaterThan(0.2);
|
|
29
|
+
});
|
|
30
|
+
it("probability18mo is bounded in [0, 0.95]", () => {
|
|
31
|
+
const r = predictMortality({
|
|
32
|
+
name: "very-dead", monthsSinceLatest: 60, monthsSinceFeatureRelease: 60,
|
|
33
|
+
deprecated: true, maintainerCount: 0, prevMaintainerCount: 5,
|
|
34
|
+
});
|
|
35
|
+
expect(r.probability18mo).toBeGreaterThanOrEqual(0);
|
|
36
|
+
expect(r.probability18mo).toBeLessThanOrEqual(0.95);
|
|
37
|
+
});
|
|
38
|
+
});
|
|
39
|
+
//# sourceMappingURL=dep_mortality.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dep_mortality.test.js","sourceRoot":"","sources":["../../src/dep_mortality/dep_mortality.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE9C,QAAQ,CAAC,yBAAyB,EAAE,GAAG,EAAE;IACvC,EAAE,CAAC,2DAA2D,EAAE,GAAG,EAAE;QACnE,MAAM,CAAC,GAAG,gBAAgB,CAAC;YACzB,IAAI,EAAE,QAAQ,EAAE,iBAAiB,EAAE,EAAE,EAAE,yBAAyB,EAAE,EAAE;YACpE,UAAU,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC,EAAE,mBAAmB,EAAE,CAAC;SAC9D,CAAC,CAAC;QACH,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;QAC7C,MAAM,CAAC,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACxD,yEAAyE;QACzE,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC,CAAC,OAAO,CAAC,4BAA4B,CAAC,CAAC;IAC/E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2DAA2D,EAAE,GAAG,EAAE;QACnE,MAAM,CAAC,GAAG,gBAAgB,CAAC;YACzB,IAAI,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,CAAC,EAAE,yBAAyB,EAAE,CAAC;YAC9E,UAAU,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC,EAAE,mBAAmB,EAAE,CAAC;SAC9D,CAAC,CAAC;QACH,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QACnC,MAAM,CAAC,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;QACpD,MAAM,CAAC,GAAG,gBAAgB,CAAC;YACzB,IAAI,EAAE,WAAW,EAAE,iBAAiB,EAAE,CAAC,EAAE,yBAAyB,EAAE,CAAC;YACrE,UAAU,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC,EAAE,mBAAmB,EAAE,CAAC;SAC7D,CAAC,CAAC;QACH,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,KAAK,aAAa,CAAC,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACzE,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;IACjD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;QACjD,MAAM,CAAC,GAAG,gBAAgB,CAAC;YACzB,IAAI,EAAE,WAAW,EAAE,iBAAiB,EAAE,EAAE,EAAE,yBAAyB,EAAE,EAAE;YACvE,UAAU,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC,EAAE,mBAAmB,EAAE,CAAC;SAC7D,CAAC,CAAC;QACH,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC;QACpD,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* v2.19.87 — #11 DEPENDENCY DEATH PREDICTOR.
|
|
3
|
+
*
|
|
4
|
+
* The first tool to give you a PROBABILITY OF ABANDONMENT before you
|
|
5
|
+
* `npm install`. Multi-signal mortality score using ONLY the data that
|
|
6
|
+
* comes back from `npm view` (which is cached on every machine and
|
|
7
|
+
* works offline once cached) — no GitHub API key required.
|
|
8
|
+
*
|
|
9
|
+
* Mortality signals (each 0..1; higher = more dead):
|
|
10
|
+
* - commit_lag months since last release / 36
|
|
11
|
+
* - maintainer |delta in maintainer count| / max(prev,1)
|
|
12
|
+
* - deprecation 1 if deprecated, else 0
|
|
13
|
+
* - version_freeze months without a non-patch bump / 24
|
|
14
|
+
* - dep_health mean mortality of THIS package's direct deps
|
|
15
|
+
* - alternatives presence of a known substitute (moment → date-fns)
|
|
16
|
+
*
|
|
17
|
+
* Final score = weighted sum, clamped to 0..1.
|
|
18
|
+
* Probability of abandonment in 18 months = score * 0.95 (95% ceiling
|
|
19
|
+
* because nothing is certain).
|
|
20
|
+
*/
|
|
21
|
+
export interface NpmMetadata {
|
|
22
|
+
name: string;
|
|
23
|
+
/** ISO of latest publish. */
|
|
24
|
+
latestPublishedAt?: string;
|
|
25
|
+
/** Months since latest publish. */
|
|
26
|
+
monthsSinceLatest?: number;
|
|
27
|
+
/** Months since last MAJOR or MINOR version (not patch). */
|
|
28
|
+
monthsSinceFeatureRelease?: number;
|
|
29
|
+
deprecated?: boolean;
|
|
30
|
+
maintainerCount?: number;
|
|
31
|
+
prevMaintainerCount?: number;
|
|
32
|
+
/** Direct deps (name only) — for cascade scoring. */
|
|
33
|
+
directDeps?: string[];
|
|
34
|
+
/** A known successor / substitute name, if any. */
|
|
35
|
+
knownSubstitute?: string | null;
|
|
36
|
+
}
|
|
37
|
+
export interface MortalityReport {
|
|
38
|
+
package: string;
|
|
39
|
+
score: number;
|
|
40
|
+
probability18mo: number;
|
|
41
|
+
band: "thriving" | "healthy" | "watch" | "moribund" | "dead";
|
|
42
|
+
reasons: Array<{
|
|
43
|
+
signal: string;
|
|
44
|
+
weight: number;
|
|
45
|
+
raw: number;
|
|
46
|
+
note: string;
|
|
47
|
+
}>;
|
|
48
|
+
recommendation: string;
|
|
49
|
+
}
|
|
50
|
+
export declare function predictMortality(meta: NpmMetadata): MortalityReport;
|
|
51
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/dep_mortality/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,6BAA6B;IAC7B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,mCAAmC;IACnC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,4DAA4D;IAC5D,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,qDAAqD;IACrD,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,mDAAmD;IACnD,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACjC;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,eAAe,EAAE,MAAM,CAAC;IACxB,IAAI,EAAE,UAAU,GAAG,SAAS,GAAG,OAAO,GAAG,UAAU,GAAG,MAAM,CAAC;IAC7D,OAAO,EAAE,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC9E,cAAc,EAAE,MAAM,CAAC;CACxB;AAqBD,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,WAAW,GAAG,eAAe,CAiDnE"}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* v2.19.87 — #11 DEPENDENCY DEATH PREDICTOR.
|
|
3
|
+
*
|
|
4
|
+
* The first tool to give you a PROBABILITY OF ABANDONMENT before you
|
|
5
|
+
* `npm install`. Multi-signal mortality score using ONLY the data that
|
|
6
|
+
* comes back from `npm view` (which is cached on every machine and
|
|
7
|
+
* works offline once cached) — no GitHub API key required.
|
|
8
|
+
*
|
|
9
|
+
* Mortality signals (each 0..1; higher = more dead):
|
|
10
|
+
* - commit_lag months since last release / 36
|
|
11
|
+
* - maintainer |delta in maintainer count| / max(prev,1)
|
|
12
|
+
* - deprecation 1 if deprecated, else 0
|
|
13
|
+
* - version_freeze months without a non-patch bump / 24
|
|
14
|
+
* - dep_health mean mortality of THIS package's direct deps
|
|
15
|
+
* - alternatives presence of a known substitute (moment → date-fns)
|
|
16
|
+
*
|
|
17
|
+
* Final score = weighted sum, clamped to 0..1.
|
|
18
|
+
* Probability of abandonment in 18 months = score * 0.95 (95% ceiling
|
|
19
|
+
* because nothing is certain).
|
|
20
|
+
*/
|
|
21
|
+
// Hand-curated substitute map — these get baked in because they don't
|
|
22
|
+
// change often, and the alternative pattern is a strong death signal.
|
|
23
|
+
const KNOWN_SUBSTITUTES = {
|
|
24
|
+
"moment": "date-fns or dayjs",
|
|
25
|
+
"request": "got, axios, or native fetch",
|
|
26
|
+
"underscore": "lodash or native ES",
|
|
27
|
+
"bower": "npm or pnpm",
|
|
28
|
+
"grunt": "vite, esbuild, or rollup",
|
|
29
|
+
"gulp": "vite, esbuild, or rollup",
|
|
30
|
+
"tslint": "eslint with @typescript-eslint",
|
|
31
|
+
"node-sass": "sass (dart-sass)",
|
|
32
|
+
"react-router-3": "react-router v6+",
|
|
33
|
+
"create-react-app": "vite or next.js",
|
|
34
|
+
"phantomjs": "puppeteer or playwright",
|
|
35
|
+
"lodash": "native ES (array/object spread) or es-toolkit",
|
|
36
|
+
};
|
|
37
|
+
const W = { commit_lag: 0.30, version_freeze: 0.15, deprecation: 0.25, maintainer: 0.10, dep_health: 0.05, alternatives: 0.15 };
|
|
38
|
+
export function predictMortality(meta) {
|
|
39
|
+
const sig = {
|
|
40
|
+
commit_lag: Math.min(1, (meta.monthsSinceLatest ?? 0) / 36),
|
|
41
|
+
version_freeze: Math.min(1, (meta.monthsSinceFeatureRelease ?? 0) / 24),
|
|
42
|
+
deprecation: meta.deprecated ? 1 : 0,
|
|
43
|
+
maintainer: clamp(meta.prevMaintainerCount != null && meta.maintainerCount != null
|
|
44
|
+
? Math.max(0, (meta.prevMaintainerCount - meta.maintainerCount) / Math.max(1, meta.prevMaintainerCount))
|
|
45
|
+
: 0),
|
|
46
|
+
dep_health: 0, // populated externally when cascading
|
|
47
|
+
alternatives: KNOWN_SUBSTITUTES[meta.name] || meta.knownSubstitute ? 1 : 0,
|
|
48
|
+
};
|
|
49
|
+
const score = W.commit_lag * sig.commit_lag
|
|
50
|
+
+ W.version_freeze * sig.version_freeze
|
|
51
|
+
+ W.deprecation * sig.deprecation
|
|
52
|
+
+ W.maintainer * sig.maintainer
|
|
53
|
+
+ W.dep_health * sig.dep_health
|
|
54
|
+
+ W.alternatives * sig.alternatives;
|
|
55
|
+
const clamped = Math.max(0, Math.min(1, score));
|
|
56
|
+
const probability18mo = Math.min(0.95, clamped * 0.95);
|
|
57
|
+
const band = clamped >= 0.75 ? "dead"
|
|
58
|
+
: clamped >= 0.55 ? "moribund"
|
|
59
|
+
: clamped >= 0.35 ? "watch"
|
|
60
|
+
: clamped >= 0.15 ? "healthy"
|
|
61
|
+
: "thriving";
|
|
62
|
+
const subst = KNOWN_SUBSTITUTES[meta.name] || meta.knownSubstitute;
|
|
63
|
+
const reasons = [
|
|
64
|
+
{ signal: "commit_lag", weight: W.commit_lag, raw: sig.commit_lag,
|
|
65
|
+
note: meta.monthsSinceLatest != null ? `last release ${meta.monthsSinceLatest} month${meta.monthsSinceLatest === 1 ? "" : "s"} ago` : "no release-date data" },
|
|
66
|
+
{ signal: "version_freeze", weight: W.version_freeze, raw: sig.version_freeze,
|
|
67
|
+
note: meta.monthsSinceFeatureRelease != null ? `${meta.monthsSinceFeatureRelease} months since last non-patch bump` : "no feature-release data" },
|
|
68
|
+
{ signal: "deprecation", weight: W.deprecation, raw: sig.deprecation,
|
|
69
|
+
note: meta.deprecated ? "package is npm-deprecated" : "not deprecated" },
|
|
70
|
+
{ signal: "maintainer", weight: W.maintainer, raw: sig.maintainer,
|
|
71
|
+
note: meta.prevMaintainerCount != null ? `maintainers went ${meta.prevMaintainerCount}→${meta.maintainerCount ?? "?"}` : "no maintainer-history data" },
|
|
72
|
+
{ signal: "alternatives", weight: W.alternatives, raw: sig.alternatives,
|
|
73
|
+
note: subst ? `known successor: ${subst}` : "no known direct substitute" },
|
|
74
|
+
];
|
|
75
|
+
const recommendation = band === "dead" || band === "moribund"
|
|
76
|
+
? subst
|
|
77
|
+
? `Don't install. ${subst} replaces ${meta.name}.`
|
|
78
|
+
: `Don't install. Find a maintained alternative or fork.`
|
|
79
|
+
: band === "watch"
|
|
80
|
+
? `OK for now, but pin the version and check again in 6 months.`
|
|
81
|
+
: `Safe to install. Healthy maintenance signal.`;
|
|
82
|
+
return { package: meta.name, score: clamped, probability18mo, band, reasons, recommendation };
|
|
83
|
+
}
|
|
84
|
+
function clamp(v) { return Math.max(0, Math.min(1, v)); }
|
|
85
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/dep_mortality/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* v2.19.87 — #9 AI FUNERAL.
|
|
3
|
+
*
|
|
4
|
+
* Repos die. Mneme is the FIRST tool to give them a proper send-off.
|
|
5
|
+
*
|
|
6
|
+
* Given a git repo (archived OR untouched for N months), produce:
|
|
7
|
+
* - A literary eulogy (3 paragraphs): origin / peak / legacy
|
|
8
|
+
* - An ASCII tombstone (text)
|
|
9
|
+
* - A self-contained SVG memorial card (twitter / GitHub-readme-safe)
|
|
10
|
+
* - A copy-paste tweet thread (no API access required)
|
|
11
|
+
*
|
|
12
|
+
* The wild bit: every stat is grounded in the actual git log. Mneme
|
|
13
|
+
* doesn't fabricate ages or contributor counts. It reads the repo,
|
|
14
|
+
* computes the truth, and writes the eulogy from that truth.
|
|
15
|
+
*/
|
|
16
|
+
export interface EulogyStats {
|
|
17
|
+
repoName: string;
|
|
18
|
+
bornAt: string;
|
|
19
|
+
diedAt: string;
|
|
20
|
+
lifespan: string;
|
|
21
|
+
lifespanDays: number;
|
|
22
|
+
archived: boolean;
|
|
23
|
+
totalCommits: number;
|
|
24
|
+
totalAuthors: number;
|
|
25
|
+
totalLines: number;
|
|
26
|
+
topAuthor: {
|
|
27
|
+
name: string;
|
|
28
|
+
commits: number;
|
|
29
|
+
} | null;
|
|
30
|
+
topFiles: Array<{
|
|
31
|
+
path: string;
|
|
32
|
+
touches: number;
|
|
33
|
+
}>;
|
|
34
|
+
causeOfDeath: string;
|
|
35
|
+
}
|
|
36
|
+
export declare function collectEulogyStats(repoRoot: string, opts?: {
|
|
37
|
+
archived?: boolean;
|
|
38
|
+
}): EulogyStats;
|
|
39
|
+
/** Three-paragraph literary eulogy from the stats. Template-driven —
|
|
40
|
+
* no LLM call required, so it runs identically on a sandbox without
|
|
41
|
+
* Ollama / API key. */
|
|
42
|
+
export declare function renderEulogy(s: EulogyStats): string;
|
|
43
|
+
export declare function renderTombstoneAscii(s: EulogyStats): string;
|
|
44
|
+
/** Self-contained SVG memorial card (640×360, embeddable in tweets,
|
|
45
|
+
* GitHub READMEs, Mastodon, anywhere that takes an <img>). */
|
|
46
|
+
export declare function renderTombstoneSvg(s: EulogyStats): string;
|
|
47
|
+
/** Pre-formatted tweet thread (3 tweets) the user copy-pastes. */
|
|
48
|
+
export declare function renderTweetThread(s: EulogyStats): string[];
|
|
49
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/funeral/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAMH,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,OAAO,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IACpD,QAAQ,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACnD,YAAY,EAAE,MAAM,CAAC;CACtB;AAgBD,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,GAAE;IAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAO,GAAG,WAAW,CA+CnG;AAED;;wBAEwB;AACxB,wBAAgB,YAAY,CAAC,CAAC,EAAE,WAAW,GAAG,MAAM,CAsBnD;AAED,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,WAAW,GAAG,MAAM,CAgB3D;AAOD;+DAC+D;AAC/D,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,WAAW,GAAG,MAAM,CAyBzD;AAMD,kEAAkE;AAClE,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,WAAW,GAAG,MAAM,EAAE,CAM1D"}
|
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* v2.19.87 — #9 AI FUNERAL.
|
|
3
|
+
*
|
|
4
|
+
* Repos die. Mneme is the FIRST tool to give them a proper send-off.
|
|
5
|
+
*
|
|
6
|
+
* Given a git repo (archived OR untouched for N months), produce:
|
|
7
|
+
* - A literary eulogy (3 paragraphs): origin / peak / legacy
|
|
8
|
+
* - An ASCII tombstone (text)
|
|
9
|
+
* - A self-contained SVG memorial card (twitter / GitHub-readme-safe)
|
|
10
|
+
* - A copy-paste tweet thread (no API access required)
|
|
11
|
+
*
|
|
12
|
+
* The wild bit: every stat is grounded in the actual git log. Mneme
|
|
13
|
+
* doesn't fabricate ages or contributor counts. It reads the repo,
|
|
14
|
+
* computes the truth, and writes the eulogy from that truth.
|
|
15
|
+
*/
|
|
16
|
+
import { execSync } from "node:child_process";
|
|
17
|
+
function git(cmd, cwd) {
|
|
18
|
+
try {
|
|
19
|
+
return execSync(`git ${cmd}`, { cwd, encoding: "utf8", stdio: ["ignore", "pipe", "ignore"] }).trim();
|
|
20
|
+
}
|
|
21
|
+
catch {
|
|
22
|
+
return "";
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
function humanLifespan(ms) {
|
|
26
|
+
const days = Math.floor(ms / (24 * 3600_000));
|
|
27
|
+
const years = Math.floor(days / 365);
|
|
28
|
+
const months = Math.floor((days - years * 365) / 30);
|
|
29
|
+
if (years > 0)
|
|
30
|
+
return `${years} year${years === 1 ? "" : "s"}${months > 0 ? `, ${months} month${months === 1 ? "" : "s"}` : ""}`;
|
|
31
|
+
if (months > 0)
|
|
32
|
+
return `${months} month${months === 1 ? "" : "s"}`;
|
|
33
|
+
return `${days} day${days === 1 ? "" : "s"}`;
|
|
34
|
+
}
|
|
35
|
+
export function collectEulogyStats(repoRoot, opts = {}) {
|
|
36
|
+
const repoName = repoRoot.split(/[\\/]/).filter(Boolean).pop() || "repo";
|
|
37
|
+
const bornAt = git('log --reverse --format="%aI" --max-count=1', repoRoot);
|
|
38
|
+
const diedAt = git('log -1 --format="%aI"', repoRoot);
|
|
39
|
+
const totalCommitsStr = git("rev-list --count HEAD", repoRoot);
|
|
40
|
+
const totalCommits = parseInt(totalCommitsStr, 10) || 0;
|
|
41
|
+
const authorsRaw = git('log --format="%aN"', repoRoot);
|
|
42
|
+
const authorsList = authorsRaw.split("\n").filter(Boolean);
|
|
43
|
+
const authorMap = new Map();
|
|
44
|
+
for (const a of authorsList)
|
|
45
|
+
authorMap.set(a, (authorMap.get(a) ?? 0) + 1);
|
|
46
|
+
const topAuthorEntry = [...authorMap.entries()].sort((a, b) => b[1] - a[1])[0];
|
|
47
|
+
const topAuthor = topAuthorEntry ? { name: topAuthorEntry[0], commits: topAuthorEntry[1] } : null;
|
|
48
|
+
const filesRaw = git('log --name-only --format=""', repoRoot);
|
|
49
|
+
const fileMap = new Map();
|
|
50
|
+
for (const f of filesRaw.split("\n")) {
|
|
51
|
+
if (!f.trim())
|
|
52
|
+
continue;
|
|
53
|
+
fileMap.set(f, (fileMap.get(f) ?? 0) + 1);
|
|
54
|
+
}
|
|
55
|
+
const topFiles = [...fileMap.entries()]
|
|
56
|
+
.sort((a, b) => b[1] - a[1])
|
|
57
|
+
.slice(0, 5)
|
|
58
|
+
.map(([path, touches]) => ({ path, touches }));
|
|
59
|
+
// Total lines = `git ls-files | xargs wc -l` is expensive; use approximation
|
|
60
|
+
// by counting diff lines across all commits (positive = ever-added).
|
|
61
|
+
const shortstat = git('log --shortstat --format=""', repoRoot);
|
|
62
|
+
const totalLines = shortstat.split("\n")
|
|
63
|
+
.map((l) => /(\d+) insertions?/.exec(l))
|
|
64
|
+
.filter((m) => m != null)
|
|
65
|
+
.reduce((s, m) => s + parseInt(m[1], 10), 0);
|
|
66
|
+
const bornTs = bornAt ? Date.parse(bornAt) : Date.now();
|
|
67
|
+
const diedTs = diedAt ? Date.parse(diedAt) : Date.now();
|
|
68
|
+
const lifespanMs = Math.max(0, diedTs - bornTs);
|
|
69
|
+
const dormantMonths = Math.floor((Date.now() - diedTs) / (30 * 24 * 3600_000));
|
|
70
|
+
const archived = !!opts.archived;
|
|
71
|
+
const causeOfDeath = archived
|
|
72
|
+
? "GitHub-archived by maintainer"
|
|
73
|
+
: dormantMonths >= 12
|
|
74
|
+
? `no commits in ${dormantMonths} months`
|
|
75
|
+
: dormantMonths >= 6
|
|
76
|
+
? `dormant for ${dormantMonths} months — moribund`
|
|
77
|
+
: "still alive (eulogy is premature)";
|
|
78
|
+
return {
|
|
79
|
+
repoName, bornAt: bornAt || new Date(0).toISOString(), diedAt: diedAt || new Date().toISOString(),
|
|
80
|
+
lifespan: humanLifespan(lifespanMs), lifespanDays: Math.floor(lifespanMs / (24 * 3600_000)),
|
|
81
|
+
archived, totalCommits, totalAuthors: authorMap.size, totalLines,
|
|
82
|
+
topAuthor, topFiles, causeOfDeath,
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
/** Three-paragraph literary eulogy from the stats. Template-driven —
|
|
86
|
+
* no LLM call required, so it runs identically on a sandbox without
|
|
87
|
+
* Ollama / API key. */
|
|
88
|
+
export function renderEulogy(s) {
|
|
89
|
+
const bornHuman = s.bornAt.slice(0, 10);
|
|
90
|
+
const diedHuman = s.diedAt.slice(0, 10);
|
|
91
|
+
const top = s.topAuthor ? s.topAuthor.name : "anonymous hands";
|
|
92
|
+
const topTouch = s.topFiles[0]?.path ?? "no single hot file";
|
|
93
|
+
const lines = [
|
|
94
|
+
`# In memoriam: ${s.repoName}`,
|
|
95
|
+
``,
|
|
96
|
+
`**Born** ${bornHuman} · **${s.archived ? "Archived" : "Last touched"}** ${diedHuman} · **${s.lifespan}** of useful life.`,
|
|
97
|
+
``,
|
|
98
|
+
`## Origin`,
|
|
99
|
+
`Created on ${bornHuman}, ${s.repoName} drew its first breath in a quiet commit. Across ${s.lifespan}, it absorbed ${s.totalCommits.toLocaleString()} commits and ${s.totalLines.toLocaleString()} lines of intention from ${s.totalAuthors} pair${s.totalAuthors === 1 ? "" : "s"} of hands. It was not always loud, but it was never silent.`,
|
|
100
|
+
``,
|
|
101
|
+
`## Peak`,
|
|
102
|
+
`In its prime, the hottest place was ${"`" + topTouch + "`"} — touched ${s.topFiles[0]?.touches ?? 0} times, the heart that kept beating. ${top}${s.topAuthor ? ` authored ${s.topAuthor.commits} of the commits` : ""}, and stayed long enough to know every dark corner of the diff. There are repos that ship features; there are repos that shape minds. This one did both.`,
|
|
103
|
+
``,
|
|
104
|
+
`## Legacy`,
|
|
105
|
+
`Cause of stillness: ${s.causeOfDeath}. The files remain. The history is HMAC-chained into git's own object store; nothing important is lost. Future repos that learned from ${"`" + s.repoName + "`"} carry its DNA forward whether they know it or not. Memory is the only thing that outlives a project. Mneme remembered.`,
|
|
106
|
+
``,
|
|
107
|
+
`*Rendered by Mneme · ${new Date().toISOString().slice(0, 10)}*`,
|
|
108
|
+
];
|
|
109
|
+
return lines.join("\n");
|
|
110
|
+
}
|
|
111
|
+
export function renderTombstoneAscii(s) {
|
|
112
|
+
const lines = [
|
|
113
|
+
" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓",
|
|
114
|
+
" ┃ ┃",
|
|
115
|
+
` ┃ ⚰ ${pad(s.repoName, 18)} ┃`,
|
|
116
|
+
" ┃ ┃",
|
|
117
|
+
` ┃ ${pad(s.bornAt.slice(0, 10), 12)} - ${pad(s.diedAt.slice(0, 10), 10)} ┃`,
|
|
118
|
+
" ┃ ┃",
|
|
119
|
+
` ┃ ${pad(s.lifespan + " of code", 26)} ┃`,
|
|
120
|
+
` ┃ ${pad(s.totalCommits + " commits, " + s.totalAuthors + " souls", 26)} ┃`,
|
|
121
|
+
" ┃ ┃",
|
|
122
|
+
" ┃ Mneme remembers. ┃",
|
|
123
|
+
" ┃ ┃",
|
|
124
|
+
" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛",
|
|
125
|
+
];
|
|
126
|
+
return lines.join("\n");
|
|
127
|
+
}
|
|
128
|
+
function pad(s, w) {
|
|
129
|
+
if (s.length > w)
|
|
130
|
+
return s.slice(0, w - 1) + "…";
|
|
131
|
+
return s.padEnd(w);
|
|
132
|
+
}
|
|
133
|
+
/** Self-contained SVG memorial card (640×360, embeddable in tweets,
|
|
134
|
+
* GitHub READMEs, Mastodon, anywhere that takes an <img>). */
|
|
135
|
+
export function renderTombstoneSvg(s) {
|
|
136
|
+
const W = 640, H = 360;
|
|
137
|
+
return `<svg xmlns="http://www.w3.org/2000/svg" width="${W}" height="${H}" viewBox="0 0 ${W} ${H}">
|
|
138
|
+
<defs>
|
|
139
|
+
<linearGradient id="bg" x1="0" y1="0" x2="0" y2="1">
|
|
140
|
+
<stop offset="0" stop-color="#0a0a0e"/><stop offset="1" stop-color="#1a1a22"/>
|
|
141
|
+
</linearGradient>
|
|
142
|
+
</defs>
|
|
143
|
+
<rect x="0" y="0" width="${W}" height="${H}" fill="url(#bg)" rx="14"/>
|
|
144
|
+
<text x="320" y="50" text-anchor="middle" font-family="ui-serif, Georgia, serif" font-size="13" letter-spacing="0.25em" fill="#9ba1a6">IN MEMORIAM</text>
|
|
145
|
+
<text x="320" y="100" text-anchor="middle" font-family="ui-serif, Georgia, serif" font-size="32" font-weight="700" fill="#f7d34c">${escapeXml(s.repoName)}</text>
|
|
146
|
+
<line x1="160" y1="118" x2="480" y2="118" stroke="#f38020" stroke-width="1.2"/>
|
|
147
|
+
<text x="320" y="148" text-anchor="middle" font-family="ui-monospace, SFMono-Regular, Menlo, monospace" font-size="14" fill="#e6e6e6">${s.bornAt.slice(0, 10)} — ${s.diedAt.slice(0, 10)}</text>
|
|
148
|
+
<text x="320" y="172" text-anchor="middle" font-family="ui-serif, Georgia, serif" font-size="14" fill="#9ba1a6">${escapeXml(s.lifespan)} of useful life</text>
|
|
149
|
+
<g font-family="ui-monospace, SFMono-Regular, Menlo, monospace" font-size="11" fill="#9ba1a6">
|
|
150
|
+
<text x="80" y="222">commits</text><text x="200" y="222" fill="#e6e6e6">${s.totalCommits.toLocaleString()}</text>
|
|
151
|
+
<text x="80" y="244">authors</text><text x="200" y="244" fill="#e6e6e6">${s.totalAuthors}</text>
|
|
152
|
+
<text x="80" y="266">lines authored</text><text x="200" y="266" fill="#e6e6e6">${s.totalLines.toLocaleString()}</text>
|
|
153
|
+
<text x="340" y="222">cause</text><text x="420" y="222" fill="#e6e6e6">${escapeXml(s.causeOfDeath)}</text>
|
|
154
|
+
<text x="340" y="244">top heart</text><text x="420" y="244" fill="#e6e6e6">${escapeXml((s.topFiles[0]?.path ?? "—").slice(0, 18))}</text>
|
|
155
|
+
<text x="340" y="266">eulogist</text><text x="420" y="266" fill="#e6e6e6">${escapeXml(s.topAuthor?.name ?? "—")}</text>
|
|
156
|
+
</g>
|
|
157
|
+
<text x="320" y="318" text-anchor="middle" font-family="ui-serif, Georgia, serif" font-size="14" fill="#f7d34c" font-style="italic">"Memory is the only thing that outlives a project."</text>
|
|
158
|
+
<text x="320" y="340" text-anchor="middle" font-family="ui-monospace, SFMono-Regular, Menlo, monospace" font-size="9" fill="#6e7681">μνήμη · rendered ${new Date().toISOString().slice(0, 10)}</text>
|
|
159
|
+
</svg>`;
|
|
160
|
+
}
|
|
161
|
+
function escapeXml(s) {
|
|
162
|
+
return s.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">").replace(/"/g, """);
|
|
163
|
+
}
|
|
164
|
+
/** Pre-formatted tweet thread (3 tweets) the user copy-pastes. */
|
|
165
|
+
export function renderTweetThread(s) {
|
|
166
|
+
return [
|
|
167
|
+
`Today we mourn ${s.repoName}.\n\n${s.bornAt.slice(0, 10)} – ${s.diedAt.slice(0, 10)}\n${s.lifespan} of useful life\n${s.totalCommits.toLocaleString()} commits · ${s.totalAuthors} souls\n\nCause: ${s.causeOfDeath}`,
|
|
168
|
+
`Its heart was ${"`" + (s.topFiles[0]?.path ?? "—") + "`"} — touched ${s.topFiles[0]?.touches ?? 0} times.\n\n${s.topAuthor ? `${s.topAuthor.name} stayed longest (${s.topAuthor.commits} commits).` : ""}\n\nWe will remember.`,
|
|
169
|
+
`Mneme can write an AI Funeral for any abandoned repo on your machine:\n\nmneme funeral <path-to-repo>\n\nNo LLM call. Pure git-log truth. The first tool that gives dead projects a proper send-off.\n\n#OpenSource #DeadRepos`,
|
|
170
|
+
];
|
|
171
|
+
}
|
|
172
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/funeral/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -337,4 +337,9 @@ export * as polygraph from "./polygraph/index.js";
|
|
|
337
337
|
export * as worldPulse from "./world_pulse/index.js";
|
|
338
338
|
export * as honestyCert from "./honesty_cert/index.js";
|
|
339
339
|
export * as timeMachine from "./time_machine/index.js";
|
|
340
|
+
export * as whistleblower from "./whistleblower/index.js";
|
|
341
|
+
export * as funeral from "./funeral/index.js";
|
|
342
|
+
export * as socratic from "./socratic/index.js";
|
|
343
|
+
export * as depMortality from "./dep_mortality/index.js";
|
|
344
|
+
export * as aiConfessional from "./ai_confessional/index.js";
|
|
340
345
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -1027,4 +1027,21 @@ export * as honestyCert from "./honesty_cert/index.js";
|
|
|
1027
1027
|
// pulse.jsonl events by time + vendor to show honesty-over-time.
|
|
1028
1028
|
// Pure read-side; no new ledger.
|
|
1029
1029
|
export * as timeMachine from "./time_machine/index.js";
|
|
1030
|
+
// v2.19.87 — FIVE OUTLIERS (the wild ones):
|
|
1031
|
+
// #8 WHISTLEBLOWER Loyal-to-user proxy scanner: flags AI suggestions
|
|
1032
|
+
// that are illegal / dangerous / leak secrets / etc.
|
|
1033
|
+
// #9 AI FUNERAL Reads git history of a dead/archived repo,
|
|
1034
|
+
// generates literary eulogy + ASCII tombstone +
|
|
1035
|
+
// SVG memorial card + tweet thread.
|
|
1036
|
+
// #10 SOCRATIC (Reverse Stack Overflow) Code -> 3 humble hypothesis
|
|
1037
|
+
// questions for the human; LLM-free.
|
|
1038
|
+
// #11 DEP MORTALITY Multi-signal score for whether an npm package
|
|
1039
|
+
// is about to be abandoned.
|
|
1040
|
+
// #12 AI CONFESSIONAL Anonymous, scrubbed, shareable confession card
|
|
1041
|
+
// for AI hallucinations.
|
|
1042
|
+
export * as whistleblower from "./whistleblower/index.js";
|
|
1043
|
+
export * as funeral from "./funeral/index.js";
|
|
1044
|
+
export * as socratic from "./socratic/index.js";
|
|
1045
|
+
export * as depMortality from "./dep_mortality/index.js";
|
|
1046
|
+
export * as aiConfessional from "./ai_confessional/index.js";
|
|
1030
1047
|
//# sourceMappingURL=index.js.map
|