codekin 0.3.6 → 0.4.0
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 +13 -2
- package/bin/codekin.mjs +2 -1
- package/dist/assets/index-BAdQqYEY.js +182 -0
- package/dist/assets/index-CeZYNLWt.css +1 -0
- package/dist/index.html +2 -2
- package/package.json +8 -2
- package/server/dist/approval-manager.d.ts +44 -8
- package/server/dist/approval-manager.js +262 -23
- package/server/dist/approval-manager.js.map +1 -1
- package/server/dist/claude-process.d.ts +16 -1
- package/server/dist/claude-process.js +36 -12
- package/server/dist/claude-process.js.map +1 -1
- package/server/dist/commit-event-handler.d.ts +41 -0
- package/server/dist/commit-event-handler.js +99 -0
- package/server/dist/commit-event-handler.js.map +1 -0
- package/server/dist/commit-event-hooks.d.ts +35 -0
- package/server/dist/commit-event-hooks.js +177 -0
- package/server/dist/commit-event-hooks.js.map +1 -0
- package/server/dist/crypto-utils.js +10 -5
- package/server/dist/crypto-utils.js.map +1 -1
- package/server/dist/diff-parser.d.ts +23 -0
- package/server/dist/diff-parser.js +236 -0
- package/server/dist/diff-parser.js.map +1 -0
- package/server/dist/session-archive.js +6 -1
- package/server/dist/session-archive.js.map +1 -1
- package/server/dist/session-manager.d.ts +25 -8
- package/server/dist/session-manager.js +370 -30
- package/server/dist/session-manager.js.map +1 -1
- package/server/dist/session-routes.js +101 -4
- package/server/dist/session-routes.js.map +1 -1
- package/server/dist/stepflow-handler.js +19 -5
- package/server/dist/stepflow-handler.js.map +1 -1
- package/server/dist/tsconfig.tsbuildinfo +1 -1
- package/server/dist/types.d.ts +63 -8
- package/server/dist/upload-routes.d.ts +1 -1
- package/server/dist/upload-routes.js +40 -13
- package/server/dist/upload-routes.js.map +1 -1
- package/server/dist/webhook-handler.js +2 -2
- package/server/dist/webhook-handler.js.map +1 -1
- package/server/dist/webhook-workspace.js +5 -2
- package/server/dist/webhook-workspace.js.map +1 -1
- package/server/dist/workflow-loader.d.ts +6 -0
- package/server/dist/workflow-loader.js +11 -0
- package/server/dist/workflow-loader.js.map +1 -1
- package/server/dist/workflow-routes.d.ts +5 -1
- package/server/dist/workflow-routes.js +49 -8
- package/server/dist/workflow-routes.js.map +1 -1
- package/server/dist/ws-message-handler.js +19 -2
- package/server/dist/ws-message-handler.js.map +1 -1
- package/server/dist/ws-server.js +37 -9
- package/server/dist/ws-server.js.map +1 -1
- package/server/workflows/commit-review.md +22 -0
- package/server/workflows/docs-audit.weekly.md +97 -0
- package/dist/assets/index-Cp27uOZO.js +0 -174
- package/dist/assets/index-D3SqBuHB.css +0 -1
|
@@ -107,9 +107,26 @@ export function handleWsMessage(msg, ctx) {
|
|
|
107
107
|
case 'ping':
|
|
108
108
|
send({ type: 'pong' });
|
|
109
109
|
break;
|
|
110
|
-
case '
|
|
111
|
-
|
|
110
|
+
case 'get_diff': {
|
|
111
|
+
const sessionId = clientSessions.get(ws);
|
|
112
|
+
if (sessionId) {
|
|
113
|
+
void sessions.getDiff(sessionId, msg.scope).then(result => { send(result); });
|
|
114
|
+
}
|
|
115
|
+
else {
|
|
116
|
+
send({ type: 'diff_error', message: 'Not in a session' });
|
|
117
|
+
}
|
|
112
118
|
break;
|
|
119
|
+
}
|
|
120
|
+
case 'discard_changes': {
|
|
121
|
+
const sessionId = clientSessions.get(ws);
|
|
122
|
+
if (sessionId) {
|
|
123
|
+
void sessions.discardChanges(sessionId, msg.scope, msg.paths, msg.statuses).then(result => { send(result); });
|
|
124
|
+
}
|
|
125
|
+
else {
|
|
126
|
+
send({ type: 'diff_error', message: 'Not in a session' });
|
|
127
|
+
}
|
|
128
|
+
break;
|
|
129
|
+
}
|
|
113
130
|
}
|
|
114
131
|
}
|
|
115
132
|
//# sourceMappingURL=ws-message-handler.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ws-message-handler.js","sourceRoot":"","sources":["../ws-message-handler.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAcH,sFAAsF;AACtF,MAAM,UAAU,eAAe,CAAC,GAAoB,EAAE,GAAqB;IACzE,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,cAAc,EAAE,IAAI,EAAE,GAAG,GAAG,CAAA;IAElD,QAAQ,GAAG,CAAC,IAAI,EAAE,CAAC;QACjB,KAAK,gBAAgB,CAAC,CAAC,CAAC;YACtB,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,CAAA;YAC/E,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;YACvB,cAAc,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,CAAC,CAAA;YAClC,IAAI,CAAC;gBACH,IAAI,EAAE,iBAAiB;gBACvB,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,WAAW,EAAE,OAAO,CAAC,IAAI;gBACzB,UAAU,EAAE,OAAO,CAAC,UAAU;aAC/B,CAAC,CAAA;YACF,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;YAChC,MAAK;QACP,CAAC;QAED,KAAK,cAAc,CAAC,CAAC,CAAC;YACpB,MAAM,SAAS,GAAG,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;YACxC,IAAI,SAAS,EAAE,CAAC;gBACd,QAAQ,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,CAAC,CAAA;YAC/B,CAAC;YACD,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,CAAC,CAAA;YAChD,IAAI,OAAO,EAAE,CAAC;gBACZ,cAAc,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,CAAC,CAAA;gBAClC,IAAI,CAAC;oBACH,IAAI,EAAE,gBAAgB;oBACtB,SAAS,EAAE,OAAO,CAAC,EAAE;oBACrB,WAAW,EAAE,OAAO,CAAC,IAAI;oBACzB,UAAU,EAAE,OAAO,CAAC,UAAU;oBAC9B,MAAM,EAAE,OAAO,CAAC,aAAa,EAAE,OAAO,EAAE,IAAI,KAAK;oBACjD,YAAY,EAAE,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC;iBAChD,CAAC,CAAA;YACJ,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,mBAAmB,EAAE,CAAC,CAAA;YACvD,CAAC;YACD,MAAK;QACP,CAAC;QAED,KAAK,eAAe,CAAC,CAAC,CAAC;YACrB,MAAM,SAAS,GAAG,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;YACxC,IAAI,SAAS,EAAE,CAAC;gBACd,QAAQ,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,CAAC,CAAA;gBAC7B,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;gBACzB,IAAI,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAA;YAChC,CAAC;YACD,MAAK;QACP,CAAC;QAED,KAAK,cAAc,CAAC,CAAC,CAAC;YACpB,MAAM,SAAS,GAAG,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;YACxC,IAAI,SAAS,EAAE,CAAC;gBACd,QAAQ,CAAC,WAAW,CAAC,SAAS,CAAC,CAAA;YACjC,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,kBAAkB,EAAE,CAAC,CAAA;YACtD,CAAC;YACD,MAAK;QACP,CAAC;QAED,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,MAAM,SAAS,GAAG,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;YACxC,IAAI,SAAS,EAAE,CAAC;gBACd,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC,CAAA;YAChC,CAAC;YACD,MAAK;QACP,CAAC;QAED,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,MAAM,SAAS,GAAG,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;YACxC,IAAI,SAAS,EAAE,CAAC;gBACd,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;gBACvC,IAAI,OAAO,EAAE,CAAC;oBACZ,MAAM,WAAW,GAAG,OAAO,GAAG,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAA;oBACrF,MAAM,OAAO,GAAoB,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,WAAW,IAAI,GAAG,CAAC,IAAI,EAAE,CAAA;oBACrF,QAAQ,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;oBACvC,QAAQ,CAAC,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;gBACtC,CAAC;gBACD,QAAQ,CAAC,SAAS,CAAC,SAAS,EAAE,GAAG,CAAC,IAAI,CAAC,CAAA;YACzC,CAAC;YACD,MAAK;QACP,CAAC;QAED,KAAK,iBAAiB,CAAC,CAAC,CAAC;YACvB,MAAM,SAAS,GAAG,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;YACxC,OAAO,CAAC,GAAG,CAAC,+BAA+B,SAAS,UAAU,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,cAAc,GAAG,CAAC,SAAS,EAAE,CAAC,CAAA;YACrH,IAAI,SAAS,EAAE,CAAC;gBACd,QAAQ,CAAC,kBAAkB,CAAC,SAAS,EAAE,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,SAAS,CAAC,CAAA;YAClE,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,IAAI,CAAC,+CAA+C,CAAC,CAAA;YAC/D,CAAC;YACD,MAAK;QACP,CAAC;QAED,KAAK,WAAW,CAAC,CAAC,CAAC;YACjB,MAAM,SAAS,GAAG,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;YACxC,IAAI,SAAS,EAAE,CAAC;gBACd,QAAQ,CAAC,QAAQ,CAAC,SAAS,EAAE,GAAG,CAAC,KAAK,CAAC,CAAA;YACzC,CAAC;YACD,MAAK;QACP,CAAC;QAED,KAAK,QAAQ;YACX,yDAAyD;YACzD,MAAK;QAEP,KAAK,MAAM;YACT,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;YACtB,MAAK;QAEP,KAAK,
|
|
1
|
+
{"version":3,"file":"ws-message-handler.js","sourceRoot":"","sources":["../ws-message-handler.ts"],"names":[],"mappings":"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"}
|
package/server/dist/ws-server.js
CHANGED
|
@@ -17,7 +17,7 @@ import { WebSocketServer, WebSocket } from 'ws';
|
|
|
17
17
|
import { readFileSync, existsSync } from 'fs';
|
|
18
18
|
import { join } from 'path';
|
|
19
19
|
import { execFileSync } from 'child_process';
|
|
20
|
-
import { randomUUID, timingSafeEqual } from 'crypto';
|
|
20
|
+
import { createHash, randomUUID, timingSafeEqual } from 'crypto';
|
|
21
21
|
import { verifySessionToken } from './crypto-utils.js';
|
|
22
22
|
import { SessionManager } from './session-manager.js';
|
|
23
23
|
import { handleWsMessage } from './ws-message-handler.js';
|
|
@@ -28,6 +28,8 @@ import { StepflowHandler, loadStepflowConfig } from './stepflow-handler.js';
|
|
|
28
28
|
import { initWorkflowEngine, shutdownWorkflowEngine } from './workflow-engine.js';
|
|
29
29
|
import { loadMdWorkflows } from './workflow-loader.js';
|
|
30
30
|
import { createWorkflowRouter, syncSchedules } from './workflow-routes.js';
|
|
31
|
+
import { CommitEventHandler } from './commit-event-handler.js';
|
|
32
|
+
import { ensureHookConfig, syncCommitHooks } from './commit-event-hooks.js';
|
|
31
33
|
import { createAuthRouter } from './auth-routes.js';
|
|
32
34
|
import { createSessionRouter } from './session-routes.js';
|
|
33
35
|
import { createWebhookRouter } from './webhook-routes.js';
|
|
@@ -68,11 +70,9 @@ function verifyToken(token) {
|
|
|
68
70
|
return false; // No auth configured — fail closed
|
|
69
71
|
if (!token)
|
|
70
72
|
return false;
|
|
71
|
-
// Timing-safe comparison to
|
|
72
|
-
const a =
|
|
73
|
-
const b =
|
|
74
|
-
if (a.length !== b.length)
|
|
75
|
-
return false;
|
|
73
|
+
// Timing-safe comparison — hash both to fixed length to avoid leaking length info
|
|
74
|
+
const a = createHash('sha256').update(authToken).digest();
|
|
75
|
+
const b = createHash('sha256').update(token).digest();
|
|
76
76
|
return timingSafeEqual(a, b);
|
|
77
77
|
}
|
|
78
78
|
/**
|
|
@@ -154,6 +154,9 @@ if (stepflowConfig.enabled) {
|
|
|
154
154
|
else {
|
|
155
155
|
console.log('[stepflow] Stepflow webhook integration disabled (STEPFLOW_WEBHOOK_ENABLED != true)');
|
|
156
156
|
}
|
|
157
|
+
// Commit event handler — instantiated after workflow engine init.
|
|
158
|
+
// Wrapped in an object so the router closure captures a live reference.
|
|
159
|
+
const commitEventState = { handler: undefined };
|
|
157
160
|
// ---------------------------------------------------------------------------
|
|
158
161
|
// Express app and REST API
|
|
159
162
|
// ---------------------------------------------------------------------------
|
|
@@ -207,7 +210,7 @@ app.use((_req, res, next) => {
|
|
|
207
210
|
res.header('X-XSS-Protection', '1; mode=block');
|
|
208
211
|
res.header('Referrer-Policy', 'strict-origin-when-cross-origin');
|
|
209
212
|
res.header('Permissions-Policy', 'camera=(), microphone=(), geolocation=()');
|
|
210
|
-
res.header('Content-Security-Policy', "default-src 'self'; script-src 'self'; style-src 'self' 'unsafe-inline'; connect-src 'self' wss: ws:; img-src 'self' data: https:; font-src 'self'");
|
|
213
|
+
res.header('Content-Security-Policy', "default-src 'self'; script-src 'self'; style-src 'self' 'unsafe-inline' https://fonts.googleapis.com; connect-src 'self' wss: ws:; img-src 'self' data: https:; font-src 'self' https://fonts.gstatic.com");
|
|
211
214
|
if (process.env.NODE_ENV === 'production') {
|
|
212
215
|
res.header('Strict-Transport-Security', 'max-age=31536000; includeSubDomains');
|
|
213
216
|
}
|
|
@@ -231,9 +234,11 @@ if (FRONTEND_DIST && existsSync(FRONTEND_DIST)) {
|
|
|
231
234
|
app.use(createAuthRouter(verifyToken, extractToken, sessions, claudeAvailable, claudeVersion, apiKeySet));
|
|
232
235
|
app.use(createSessionRouter(verifyToken, extractToken, sessions, verifyTokenOrSessionToken));
|
|
233
236
|
app.use(createWebhookRouter(verifyToken, extractToken, webhookHandler, stepflowHandler));
|
|
234
|
-
app.use(createUploadRouter(verifyToken, extractToken));
|
|
237
|
+
app.use(createUploadRouter(verifyToken, extractToken, () => sessions.archive.getSetting('repos_path', '')));
|
|
235
238
|
app.use(createDocsRouter(verifyToken, extractToken));
|
|
236
|
-
|
|
239
|
+
// Workflow router — commitEventHandler is set after engine init, but the
|
|
240
|
+
// router closure captures the variable reference so it will resolve correctly.
|
|
241
|
+
app.use('/api/workflows', createWorkflowRouter(verifyToken, extractToken, sessions, commitEventState));
|
|
237
242
|
// --- SPA fallback: serve index.html for non-API routes (client-side routing) ---
|
|
238
243
|
if (FRONTEND_DIST && existsSync(FRONTEND_DIST)) {
|
|
239
244
|
const indexPath = join(FRONTEND_DIST, 'index.html');
|
|
@@ -309,6 +314,11 @@ wss.on('connection', (ws, req) => {
|
|
|
309
314
|
}
|
|
310
315
|
}, WS_AUTH_TIMEOUT_MS);
|
|
311
316
|
const handlerCtx = { ws, sessions, clientSessions, send };
|
|
317
|
+
// Post-auth message rate limiting: max 60 messages per second
|
|
318
|
+
const MSG_RATE_LIMIT = 60;
|
|
319
|
+
const MSG_RATE_WINDOW_MS = 1000;
|
|
320
|
+
let msgCount = 0;
|
|
321
|
+
let msgWindowStart = Date.now();
|
|
312
322
|
ws.on('message', (raw) => {
|
|
313
323
|
let msg;
|
|
314
324
|
try {
|
|
@@ -329,6 +339,15 @@ wss.on('connection', (ws, req) => {
|
|
|
329
339
|
send({ type: 'connected', connectionId, claudeAvailable, claudeVersion, apiKeySet });
|
|
330
340
|
return;
|
|
331
341
|
}
|
|
342
|
+
// Rate limit post-auth messages
|
|
343
|
+
const now = Date.now();
|
|
344
|
+
if (now - msgWindowStart > MSG_RATE_WINDOW_MS) {
|
|
345
|
+
msgCount = 0;
|
|
346
|
+
msgWindowStart = now;
|
|
347
|
+
}
|
|
348
|
+
if (++msgCount > MSG_RATE_LIMIT) {
|
|
349
|
+
return; // silently drop excess messages
|
|
350
|
+
}
|
|
332
351
|
handleWsMessage(msg, handlerCtx);
|
|
333
352
|
});
|
|
334
353
|
ws.on('close', () => {
|
|
@@ -385,6 +404,13 @@ server.listen(port, '0.0.0.0', () => {
|
|
|
385
404
|
// Sync cron schedules with config and start scheduler
|
|
386
405
|
syncSchedules(sessions);
|
|
387
406
|
engine.startCronScheduler();
|
|
407
|
+
// Initialize commit event handler and sync git hooks
|
|
408
|
+
commitEventState.handler = new CommitEventHandler();
|
|
409
|
+
if (authToken) {
|
|
410
|
+
const serverUrl = `http://localhost:${port}`;
|
|
411
|
+
ensureHookConfig(authToken, serverUrl);
|
|
412
|
+
syncCommitHooks();
|
|
413
|
+
}
|
|
388
414
|
console.log('[workflow] Workflow engine ready');
|
|
389
415
|
}
|
|
390
416
|
catch (err) {
|
|
@@ -396,6 +422,7 @@ server.listen(port, '0.0.0.0', () => {
|
|
|
396
422
|
process.on('SIGTERM', () => {
|
|
397
423
|
console.log('SIGTERM received, shutting down...');
|
|
398
424
|
shutdownWorkflowEngine();
|
|
425
|
+
commitEventState.handler?.shutdown();
|
|
399
426
|
webhookHandler.shutdown();
|
|
400
427
|
stepflowHandler.shutdown();
|
|
401
428
|
sessions.shutdown();
|
|
@@ -406,6 +433,7 @@ process.on('SIGTERM', () => {
|
|
|
406
433
|
process.on('SIGINT', () => {
|
|
407
434
|
console.log('SIGINT received, shutting down...');
|
|
408
435
|
shutdownWorkflowEngine();
|
|
436
|
+
commitEventState.handler?.shutdown();
|
|
409
437
|
webhookHandler.shutdown();
|
|
410
438
|
stepflowHandler.shutdown();
|
|
411
439
|
sessions.shutdown();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ws-server.js","sourceRoot":"","sources":["../ws-server.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ws-server.js","sourceRoot":"","sources":["../ws-server.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
---
|
|
2
|
+
kind: commit-review
|
|
3
|
+
name: Commit Review
|
|
4
|
+
sessionPrefix: commit-review
|
|
5
|
+
outputDir: .codekin/reports/commit-review
|
|
6
|
+
filenameSuffix: _commit-review.md
|
|
7
|
+
commitMessage: chore: commit review
|
|
8
|
+
---
|
|
9
|
+
You are performing an automated review of the most recent commit. Please do the following:
|
|
10
|
+
|
|
11
|
+
1. Run `git log -1 --format="%H %s"` to identify the latest commit
|
|
12
|
+
2. Run `git diff HEAD~1..HEAD` to see what changed
|
|
13
|
+
3. Review the changes, focusing on:
|
|
14
|
+
- Correctness and potential bugs
|
|
15
|
+
- Security issues (injection, leaked secrets, unsafe patterns)
|
|
16
|
+
- Performance concerns
|
|
17
|
+
- Breaking changes or unintended side effects
|
|
18
|
+
- Test coverage for the changed code
|
|
19
|
+
|
|
20
|
+
Provide a concise review with actionable findings. Group findings by severity (critical, warning, info). Include specific file paths and line numbers where relevant.
|
|
21
|
+
|
|
22
|
+
If the commit looks clean, say so briefly — no need to pad the report.
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
---
|
|
2
|
+
kind: docs-audit.weekly
|
|
3
|
+
name: Documentation Audit
|
|
4
|
+
sessionPrefix: docs-audit
|
|
5
|
+
outputDir: .codekin/reports/docs-audit
|
|
6
|
+
filenameSuffix: _docs-audit.md
|
|
7
|
+
commitMessage: chore: documentation audit report
|
|
8
|
+
---
|
|
9
|
+
You are performing an automated documentation audit. Your goal is to reduce documentation sprawl, eliminate outdated content, and identify files that should be consolidated — keeping the repo's docs lean, accurate, and easy to navigate.
|
|
10
|
+
|
|
11
|
+
## Part 1 — Inventory & Staleness
|
|
12
|
+
|
|
13
|
+
1. **Documentation Inventory**
|
|
14
|
+
- List every documentation file in the repo: root `.md` files, `docs/` directory, inline READMEs in subdirectories, and any `.txt` documentation files.
|
|
15
|
+
- For each file, report: path, line count, last modified date (from `git log -1`), and a one-line summary of its purpose.
|
|
16
|
+
|
|
17
|
+
2. **Staleness Detection**
|
|
18
|
+
- For each documentation file, compare its last-modified date against the code it documents.
|
|
19
|
+
- Flag files where the documented code has changed significantly (new features, removed APIs, renamed files) but the docs were not updated.
|
|
20
|
+
- Check for references to files, functions, CLI commands, config keys, or URLs that no longer exist.
|
|
21
|
+
- Report broken internal links (references to other docs or code paths that don't resolve).
|
|
22
|
+
|
|
23
|
+
3. **Accuracy Check**
|
|
24
|
+
- Verify that install/setup instructions still work against the current `package.json` scripts and project structure.
|
|
25
|
+
- Check that documented API endpoints, types, and interfaces match the actual codebase.
|
|
26
|
+
- Flag any code examples or configuration snippets that reference outdated syntax, removed options, or renamed variables.
|
|
27
|
+
|
|
28
|
+
## Part 2 — Redundancy & Consolidation
|
|
29
|
+
|
|
30
|
+
4. **Overlap Detection**
|
|
31
|
+
- Identify documentation files that cover the same or heavily overlapping topics.
|
|
32
|
+
- For each overlap, list the files involved, the shared topic, and which file has the more complete/current version.
|
|
33
|
+
- Recommend which files should be merged and which should be deleted after merging.
|
|
34
|
+
|
|
35
|
+
5. **Fragmentation Analysis**
|
|
36
|
+
- Flag cases where closely related information is split across multiple small files that would be easier to navigate as a single document.
|
|
37
|
+
- Identify spec/feature docs that describe functionality already shipped and stable — these may be candidates for folding into the main feature reference or API docs.
|
|
38
|
+
- Check for "plan" or "proposal" documents that describe work already completed — these are candidates for deletion or archival.
|
|
39
|
+
|
|
40
|
+
6. **Naming & Organization**
|
|
41
|
+
- Check that file names clearly indicate their content and audience (user guide vs. developer spec vs. ops runbook).
|
|
42
|
+
- Flag confusing or ambiguous file names.
|
|
43
|
+
- Assess whether the `docs/` directory structure is logical or if files should be reorganized.
|
|
44
|
+
|
|
45
|
+
## Part 3 — Recommendations
|
|
46
|
+
|
|
47
|
+
7. **Deletion Candidates**
|
|
48
|
+
- List files that are fully outdated, superseded by other docs, or describe completed proposals with no ongoing reference value.
|
|
49
|
+
- For each, explain why it's safe to delete.
|
|
50
|
+
|
|
51
|
+
8. **Consolidation Candidates**
|
|
52
|
+
- List groups of files that should be merged into a single document.
|
|
53
|
+
- For each group, recommend the target file name and which content to keep vs. drop.
|
|
54
|
+
|
|
55
|
+
9. **Update Candidates**
|
|
56
|
+
- List files that are still valuable but need content updates to match the current codebase.
|
|
57
|
+
- For each, note specific sections or claims that are stale.
|
|
58
|
+
|
|
59
|
+
---
|
|
60
|
+
|
|
61
|
+
Produce a structured Markdown report. Your entire response will be saved as the report file, so write valid Markdown only — no conversational preamble.
|
|
62
|
+
|
|
63
|
+
Report structure:
|
|
64
|
+
|
|
65
|
+
## Summary
|
|
66
|
+
(Overview: total doc files, files needing attention, key findings. Health rating: Well-maintained / Needs cleanup / Significant drift.)
|
|
67
|
+
|
|
68
|
+
## Documentation Inventory
|
|
69
|
+
(Table: path, lines, last modified, purpose, status [current | stale | outdated | redundant])
|
|
70
|
+
|
|
71
|
+
## Staleness Findings
|
|
72
|
+
(List of stale docs with specific outdated references, broken links, or inaccurate claims)
|
|
73
|
+
|
|
74
|
+
## Accuracy Issues
|
|
75
|
+
(List of incorrect instructions, outdated examples, or mismatched API references)
|
|
76
|
+
|
|
77
|
+
## Overlap & Redundancy
|
|
78
|
+
(Groups of overlapping files with merge recommendations)
|
|
79
|
+
|
|
80
|
+
## Fragmentation
|
|
81
|
+
(Cases where related docs should be combined, and completed specs that should be folded in or removed)
|
|
82
|
+
|
|
83
|
+
## Action Items
|
|
84
|
+
|
|
85
|
+
### Delete
|
|
86
|
+
(Table: file, reason it's safe to delete)
|
|
87
|
+
|
|
88
|
+
### Consolidate
|
|
89
|
+
(Table: source files, target file, what to keep/drop)
|
|
90
|
+
|
|
91
|
+
### Update
|
|
92
|
+
(Table: file, sections needing update, what changed in code)
|
|
93
|
+
|
|
94
|
+
## Recommendations
|
|
95
|
+
(Numbered list of 5–10 prioritised actions to reduce doc sprawl and improve accuracy)
|
|
96
|
+
|
|
97
|
+
Important: Do NOT modify any files. This is a read-only assessment.
|