tim-hooks 0.1.0-beta.0 → 0.1.0-beta.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/dist/cadence-runner.d.ts +2 -2
- package/dist/cadence-runner.d.ts.map +1 -1
- package/dist/cadence-runner.js +5 -13
- package/dist/cadence-runner.js.map +1 -1
- package/dist/checkpoint.d.ts.map +1 -1
- package/dist/checkpoint.js +18 -30
- package/dist/checkpoint.js.map +1 -1
- package/dist/constants.d.ts +9 -0
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +10 -1
- package/dist/constants.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +12 -4
- package/dist/index.js.map +1 -1
- package/dist/marker.d.ts +20 -75
- package/dist/marker.d.ts.map +1 -1
- package/dist/marker.js +30 -136
- package/dist/marker.js.map +1 -1
- package/dist/phantom-recovery.d.ts.map +1 -1
- package/dist/phantom-recovery.js +1 -8
- package/dist/phantom-recovery.js.map +1 -1
- package/dist/project-binding-health.d.ts +33 -0
- package/dist/project-binding-health.d.ts.map +1 -0
- package/dist/project-binding-health.js +149 -0
- package/dist/project-binding-health.js.map +1 -0
- package/dist/project-creation.d.ts +0 -1
- package/dist/project-creation.d.ts.map +1 -1
- package/dist/project-creation.js +28 -10
- package/dist/project-creation.js.map +1 -1
- package/dist/session-hooks.d.ts +3 -1
- package/dist/session-hooks.d.ts.map +1 -1
- package/dist/session-hooks.js +16 -6
- package/dist/session-hooks.js.map +1 -1
- package/package.json +3 -3
- package/scripts/tim-session-start.sh +0 -17
package/dist/marker.js
CHANGED
|
@@ -33,9 +33,10 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
33
33
|
};
|
|
34
34
|
})();
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.CWD_ONLY_MARKER_DISCOVERY_POLICY = exports.DEFAULT_MARKER_DISCOVERY_POLICY = exports.LOCK_TTL_MS = exports.ExclusiveMarkerConflictError = exports.INBOX_LABEL = exports.MARKER_VERSION = exports.CANONICAL_PROJECT_FILENAME = exports.MARKER_LOCK = exports.MARKER_FILENAME = void 0;
|
|
36
|
+
exports.CWD_ONLY_MARKER_DISCOVERY_POLICY = exports.DEFAULT_MARKER_DISCOVERY_POLICY = exports.LOCK_TTL_MS = exports.ExclusiveMarkerConflictError = exports.INBOX_LABEL = exports.MARKER_VERSION = exports.CANONICAL_PROJECT_FILENAME = exports.MARKER_LOCK = exports.SUMMARIZER_LOCK = exports.MARKER_FILENAME = void 0;
|
|
37
37
|
exports.markerPath = markerPath;
|
|
38
38
|
exports.canonicalProjectPath = canonicalProjectPath;
|
|
39
|
+
exports.summarizerLockPath = summarizerLockPath;
|
|
39
40
|
exports.validateProjectLabel = validateProjectLabel;
|
|
40
41
|
exports.readMarker = readMarker;
|
|
41
42
|
exports.validateMarkerAgainstStore = validateMarkerAgainstStore;
|
|
@@ -43,10 +44,8 @@ exports.isUnsafeMarkerDir = isUnsafeMarkerDir;
|
|
|
43
44
|
exports.writeMarkerAtomic = writeMarkerAtomic;
|
|
44
45
|
exports.writeMarkerExclusive = writeMarkerExclusive;
|
|
45
46
|
exports.writeMarker = writeMarker;
|
|
46
|
-
exports.rotateMarkerSession = rotateMarkerSession;
|
|
47
47
|
exports.syncNearestProjectMarker = syncNearestProjectMarker;
|
|
48
48
|
exports.detectProject = detectProject;
|
|
49
|
-
exports.reconcileMarker = reconcileMarker;
|
|
50
49
|
exports.acquireLock = acquireLock;
|
|
51
50
|
exports.isSessionLocked = isSessionLocked;
|
|
52
51
|
exports.releaseLock = releaseLock;
|
|
@@ -60,14 +59,14 @@ const os = __importStar(require("os"));
|
|
|
60
59
|
const path = __importStar(require("path"));
|
|
61
60
|
const crypto = __importStar(require("node:crypto"));
|
|
62
61
|
const constants_js_1 = require("./constants.js");
|
|
63
|
-
const tim_store_1 = require("tim-store");
|
|
64
62
|
exports.MARKER_FILENAME = '.tim-project';
|
|
65
|
-
|
|
63
|
+
var constants_js_2 = require("./constants.js");
|
|
64
|
+
Object.defineProperty(exports, "SUMMARIZER_LOCK", { enumerable: true, get: function () { return constants_js_2.SUMMARIZER_LOCK; } });
|
|
65
|
+
Object.defineProperty(exports, "MARKER_LOCK", { enumerable: true, get: function () { return constants_js_2.MARKER_LOCK; } });
|
|
66
66
|
/**
|
|
67
67
|
* Committed default project label for repos that gitignore `.tim-project`.
|
|
68
|
-
* Contains only the stable `project` field
|
|
69
|
-
*
|
|
70
|
-
* by creating `.tim-project` in the repo root (it wins over tim.json).
|
|
68
|
+
* Contains only the stable `project` field. Override per-machine by creating
|
|
69
|
+
* `.tim-project` in the repo root (it wins over tim.json).
|
|
71
70
|
*/
|
|
72
71
|
exports.CANONICAL_PROJECT_FILENAME = 'tim.json';
|
|
73
72
|
/**
|
|
@@ -75,13 +74,16 @@ exports.CANONICAL_PROJECT_FILENAME = 'tim.json';
|
|
|
75
74
|
* readers detect older files by the missing/unknown `version` field and
|
|
76
75
|
* normalize to the current shape.
|
|
77
76
|
*/
|
|
78
|
-
exports.MARKER_VERSION =
|
|
77
|
+
exports.MARKER_VERSION = 3;
|
|
79
78
|
function markerPath(cwd) {
|
|
80
79
|
return path.join(cwd, exports.MARKER_FILENAME);
|
|
81
80
|
}
|
|
82
81
|
function canonicalProjectPath(cwd) {
|
|
83
82
|
return path.join(cwd, exports.CANONICAL_PROJECT_FILENAME);
|
|
84
83
|
}
|
|
84
|
+
function summarizerLockPath(cwd) {
|
|
85
|
+
return path.join(cwd, constants_js_1.TIM_META_DIR, constants_js_1.SUMMARIZER_LOCK);
|
|
86
|
+
}
|
|
85
87
|
/** Valid project labels: P/L/E/N + 4 digits (P0062, L0042, …). */
|
|
86
88
|
const PROJECT_LABEL_PATTERN = /^[PLEN]\d{4}$/;
|
|
87
89
|
/**
|
|
@@ -106,14 +108,8 @@ exports.INBOX_LABEL = 'P0000';
|
|
|
106
108
|
*
|
|
107
109
|
* - Missing file → null
|
|
108
110
|
* - Corrupt JSON → null
|
|
109
|
-
* - v1 file
|
|
110
|
-
*
|
|
111
|
-
* is NOT rewritten here — the next `writeMarker` call upgrades it.
|
|
112
|
-
* - v2 file → returned as-is.
|
|
113
|
-
*
|
|
114
|
-
* Callers always see a v2-conformant `ProjectMarker` regardless of what's
|
|
115
|
-
* on disk. This is the only safe way to evolve the schema without forcing
|
|
116
|
-
* a one-shot migration.
|
|
111
|
+
* - v1/v2 file → `{ version: 3, project }` (runtime fields ignored)
|
|
112
|
+
* - v3 file → returned as-is
|
|
117
113
|
*
|
|
118
114
|
* When no `.tim-project` exists, falls back to `tim.json` (committed
|
|
119
115
|
* canonical default). A real `.tim-project` always wins — even when
|
|
@@ -134,8 +130,7 @@ function readMarker(cwd) {
|
|
|
134
130
|
return readCanonicalProject(cwd);
|
|
135
131
|
}
|
|
136
132
|
/**
|
|
137
|
-
* Read the committed default project from tim.json.
|
|
138
|
-
* neutral defaults — session start overwrites them into `.tim-project`.
|
|
133
|
+
* Read the committed default project from tim.json.
|
|
139
134
|
*/
|
|
140
135
|
function readCanonicalProject(cwd) {
|
|
141
136
|
const p = canonicalProjectPath(cwd);
|
|
@@ -159,24 +154,11 @@ function readCanonicalProject(cwd) {
|
|
|
159
154
|
return {
|
|
160
155
|
version: exports.MARKER_VERSION,
|
|
161
156
|
project: obj.project,
|
|
162
|
-
session: '',
|
|
163
|
-
exchanges: 0,
|
|
164
|
-
batch_size: 5,
|
|
165
|
-
batches_summarized: 0,
|
|
166
157
|
};
|
|
167
158
|
}
|
|
168
159
|
/**
|
|
169
|
-
* Coerce an unknown JSON value into a
|
|
170
|
-
*
|
|
171
|
-
* project/session, wrong types, or malformed project label).
|
|
172
|
-
*
|
|
173
|
-
* NOTE: This is the pure-FS reader. The DB-existence check
|
|
174
|
-
* (project label must resolve to a real entry in the TIM DB) lives
|
|
175
|
-
* in `validateMarkerAgainstStore` — called from the two write-side
|
|
176
|
-
* paths (runSessionStart, syncNearestProjectMarker) before they
|
|
177
|
-
* persist anything. We deliberately keep the disk reader free of
|
|
178
|
-
* DB dependencies so hooks under a tight timeout can still parse
|
|
179
|
-
* the marker without paying for an SQLite roundtrip.
|
|
160
|
+
* Coerce an unknown JSON value into a v3 ProjectMarker. Returns null if the
|
|
161
|
+
* value isn't a usable marker (missing project, wrong type, or malformed label).
|
|
180
162
|
*/
|
|
181
163
|
function normalizeMarker(raw) {
|
|
182
164
|
if (!raw || typeof raw !== 'object')
|
|
@@ -189,43 +171,14 @@ function normalizeMarker(raw) {
|
|
|
189
171
|
`expected ^[PLEN]\\d{4}$ (P0062, L0042, …). Ignoring marker.`);
|
|
190
172
|
return null;
|
|
191
173
|
}
|
|
192
|
-
if (typeof obj.session !== 'string')
|
|
193
|
-
return null;
|
|
194
|
-
if (typeof obj.exchanges !== 'number' || !Number.isFinite(obj.exchanges))
|
|
195
|
-
return null;
|
|
196
|
-
if (typeof obj.batch_size !== 'number' || !Number.isFinite(obj.batch_size))
|
|
197
|
-
return null;
|
|
198
|
-
if (typeof obj.batches_summarized !== 'number' || !Number.isFinite(obj.batches_summarized)) {
|
|
199
|
-
return null;
|
|
200
|
-
}
|
|
201
174
|
return {
|
|
202
175
|
version: exports.MARKER_VERSION,
|
|
203
176
|
project: obj.project,
|
|
204
|
-
session: obj.session,
|
|
205
|
-
exchanges: obj.exchanges,
|
|
206
|
-
batch_size: obj.batch_size,
|
|
207
|
-
batches_summarized: obj.batches_summarized,
|
|
208
177
|
};
|
|
209
178
|
}
|
|
210
179
|
/**
|
|
211
180
|
* Defense-in-depth check: a project label that matches the
|
|
212
|
-
* pattern but is semantically bogus (e.g. `P9999`
|
|
213
|
-
* was never issued by TIM, often the residue of a hand-edit or a
|
|
214
|
-
* botched commit) must NOT be persisted into `.tim-project`. The
|
|
215
|
-
* original P9999 bug bound the statusline to a non-existent
|
|
216
|
-
* project because the file was trusted blindly.
|
|
217
|
-
*
|
|
218
|
-
* Resolution: pattern-match (already enforced by normalizeMarker)
|
|
219
|
-
* AND the project must exist as a `kind=project` entry in the DB.
|
|
220
|
-
* The Inbox (P0000) is exempt — it's a system project that
|
|
221
|
-
* tim-store creates on first use via `ensureInboxProject`.
|
|
222
|
-
*
|
|
223
|
-
* Returns the marker on success, null on rejection. On DB error
|
|
224
|
-
* (store unavailable, DB locked, etc.) we FAIL OPEN: a corrupted
|
|
225
|
-
* DB is not a license to corrupt the marker, but a transient
|
|
226
|
-
* read failure shouldn't brick the session-start hook. The
|
|
227
|
-
* pattern check in normalizeMarker still ran, so we never accept
|
|
228
|
-
* malformed labels — we just skip the existence confirmation.
|
|
181
|
+
* pattern but is semantically bogus (e.g. `P9999`) must NOT be persisted.
|
|
229
182
|
*/
|
|
230
183
|
async function validateMarkerAgainstStore(marker, store) {
|
|
231
184
|
if (marker.project === exports.INBOX_LABEL)
|
|
@@ -247,12 +200,7 @@ async function validateMarkerAgainstStore(marker, store) {
|
|
|
247
200
|
return null;
|
|
248
201
|
}
|
|
249
202
|
/**
|
|
250
|
-
* Shared/system directories where a `.tim-project` must never live
|
|
251
|
-
* process can have them as cwd, so a marker there leaks into unrelated
|
|
252
|
-
* sessions via walk-up (observed: a cron with cwd=/tmp wrote /tmp/.tim-project
|
|
253
|
-
* and every process under /tmp inherited it). v1 unsafe set — deliberately
|
|
254
|
-
* minimal and explicit: os.tmpdir() itself and the filesystem root.
|
|
255
|
-
* Subdirectories of tmpdir (mkdtemp scratch dirs) are private and stay legal.
|
|
203
|
+
* Shared/system directories where a `.tim-project` must never live.
|
|
256
204
|
*/
|
|
257
205
|
function isUnsafeMarkerDir(dir) {
|
|
258
206
|
let resolved = path.resolve(dir);
|
|
@@ -290,7 +238,7 @@ function writeMarkerExclusive(cwd, marker) {
|
|
|
290
238
|
}
|
|
291
239
|
const filePath = markerPath(cwd);
|
|
292
240
|
const tmp = `${filePath}.tmp.${process.pid}.${crypto.randomUUID()}`;
|
|
293
|
-
const complete = {
|
|
241
|
+
const complete = { version: exports.MARKER_VERSION, project: marker.project };
|
|
294
242
|
let ownsTemp = false;
|
|
295
243
|
try {
|
|
296
244
|
fs.writeFileSync(tmp, JSON.stringify(complete, null, 2), { flag: 'wx' });
|
|
@@ -317,9 +265,7 @@ function writeMarkerExclusive(cwd, marker) {
|
|
|
317
265
|
}
|
|
318
266
|
}
|
|
319
267
|
}
|
|
320
|
-
/** Write a project marker file. Always emits the current schema
|
|
321
|
-
* the on-disk file becomes v2 on first write, regardless of the caller's
|
|
322
|
-
* input. This is the auto-upgrade path for v1 files. */
|
|
268
|
+
/** Write a project marker file. Always emits the current v3 schema. */
|
|
323
269
|
function writeMarker(cwd, marker) {
|
|
324
270
|
if (isUnsafeMarkerDir(cwd)) {
|
|
325
271
|
console.warn(`[tim-hooks] writeMarker: refusing to write ${exports.MARKER_FILENAME} in shared directory ` +
|
|
@@ -332,36 +278,11 @@ function writeMarker(cwd, marker) {
|
|
|
332
278
|
return;
|
|
333
279
|
}
|
|
334
280
|
const p = markerPath(cwd);
|
|
335
|
-
const upgraded = {
|
|
281
|
+
const upgraded = { version: exports.MARKER_VERSION, project: marker.project };
|
|
336
282
|
writeMarkerAtomic(p, JSON.stringify(upgraded, null, 2));
|
|
337
283
|
}
|
|
338
|
-
/**
|
|
339
|
-
* Rotate the session id in cwd's `.tim-project` when the harness supplies a new one.
|
|
340
|
-
* Used by tim-session-start.sh — must not interpolate paths into JS source.
|
|
341
|
-
*/
|
|
342
|
-
function rotateMarkerSession(cwd, sessionId) {
|
|
343
|
-
if (isUnsafeMarkerDir(cwd)) {
|
|
344
|
-
console.warn(`[tim-hooks] rotateMarkerSession: refusing to touch ${exports.MARKER_FILENAME} in shared ` +
|
|
345
|
-
`directory "${cwd}" (tmpdir / filesystem root). Running markerless.`);
|
|
346
|
-
return;
|
|
347
|
-
}
|
|
348
|
-
const p = markerPath(cwd);
|
|
349
|
-
if (!fs.existsSync(p))
|
|
350
|
-
return;
|
|
351
|
-
try {
|
|
352
|
-
const raw = JSON.parse(fs.readFileSync(p, 'utf8'));
|
|
353
|
-
if (raw.session === sessionId)
|
|
354
|
-
return;
|
|
355
|
-
raw.session = sessionId;
|
|
356
|
-
writeMarkerAtomic(p, JSON.stringify(raw, null, 2));
|
|
357
|
-
}
|
|
358
|
-
catch {
|
|
359
|
-
/* corrupt marker — leave untouched */
|
|
360
|
-
}
|
|
361
|
-
}
|
|
362
284
|
/**
|
|
363
285
|
* Update the nearest `.tim-project` (walk-up from cwd) after tim_load_project.
|
|
364
|
-
* Statusline and hooks read this marker — must match the loaded project label.
|
|
365
286
|
*/
|
|
366
287
|
function syncNearestProjectMarker(startCwd, projectLabel, options) {
|
|
367
288
|
if (!validateProjectLabel(projectLabel)) {
|
|
@@ -375,39 +296,20 @@ function syncNearestProjectMarker(startCwd, projectLabel, options) {
|
|
|
375
296
|
});
|
|
376
297
|
if (!located)
|
|
377
298
|
return false;
|
|
378
|
-
|
|
379
|
-
const { version: _v, ...rest } = located.marker;
|
|
380
|
-
writeMarker(located.dir, {
|
|
381
|
-
...rest,
|
|
382
|
-
project: projectLabel,
|
|
383
|
-
...(sessionId ? { session: sessionId } : {}),
|
|
384
|
-
});
|
|
299
|
+
writeMarker(located.dir, { project: projectLabel });
|
|
385
300
|
return true;
|
|
386
301
|
}
|
|
387
302
|
/** Project detection — cwd-only marker (no walk-up). */
|
|
388
303
|
function detectProject(cwd) {
|
|
389
304
|
return discoverMarker(cwd, exports.CWD_ONLY_MARKER_DISCOVERY_POLICY)?.marker ?? null;
|
|
390
305
|
}
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
const marker = readMarker(cwd);
|
|
394
|
-
if (!marker)
|
|
395
|
-
throw new Error(`No ${exports.MARKER_FILENAME} in ${cwd}`);
|
|
396
|
-
const { exchangeCount, batchesSummarized } = await (0, tim_store_1.deriveCounters)(store, marker.session);
|
|
397
|
-
const reconciled = {
|
|
398
|
-
...marker,
|
|
399
|
-
exchanges: exchangeCount,
|
|
400
|
-
batches_summarized: batchesSummarized,
|
|
401
|
-
};
|
|
402
|
-
writeMarker(cwd, reconciled);
|
|
403
|
-
// Read back to return the canonical v2 shape (writeMarker upgraded the file).
|
|
404
|
-
return readMarker(cwd) ?? reconciled;
|
|
405
|
-
}
|
|
406
|
-
var constants_js_2 = require("./constants.js");
|
|
407
|
-
Object.defineProperty(exports, "LOCK_TTL_MS", { enumerable: true, get: function () { return constants_js_2.LOCK_TTL_MS; } });
|
|
306
|
+
var constants_js_3 = require("./constants.js");
|
|
307
|
+
Object.defineProperty(exports, "LOCK_TTL_MS", { enumerable: true, get: function () { return constants_js_3.LOCK_TTL_MS; } });
|
|
408
308
|
function acquireLock(cwd) {
|
|
409
|
-
const
|
|
309
|
+
const lockDir = path.join(cwd, constants_js_1.TIM_META_DIR);
|
|
310
|
+
const lock = summarizerLockPath(cwd);
|
|
410
311
|
try {
|
|
312
|
+
fs.mkdirSync(lockDir, { recursive: true });
|
|
411
313
|
fs.writeFileSync(lock, JSON.stringify({ pid: process.pid, ts: Date.now() }), { flag: 'wx' });
|
|
412
314
|
return true;
|
|
413
315
|
}
|
|
@@ -427,7 +329,7 @@ function acquireLock(cwd) {
|
|
|
427
329
|
}
|
|
428
330
|
/** True when an active (non-stale) summarizer/session lock is held. */
|
|
429
331
|
function isSessionLocked(cwd) {
|
|
430
|
-
const lock =
|
|
332
|
+
const lock = summarizerLockPath(cwd);
|
|
431
333
|
if (!fs.existsSync(lock))
|
|
432
334
|
return false;
|
|
433
335
|
try {
|
|
@@ -440,7 +342,7 @@ function isSessionLocked(cwd) {
|
|
|
440
342
|
}
|
|
441
343
|
function releaseLock(cwd) {
|
|
442
344
|
try {
|
|
443
|
-
fs.rmSync(
|
|
345
|
+
fs.rmSync(summarizerLockPath(cwd), { force: true });
|
|
444
346
|
}
|
|
445
347
|
catch {
|
|
446
348
|
/* ignore */
|
|
@@ -481,8 +383,6 @@ function pickMarkerLocation(candidates) {
|
|
|
481
383
|
return candidates.reduce((best, cur) => path.resolve(cur.dir).length > path.resolve(best.dir).length ? cur : best);
|
|
482
384
|
}
|
|
483
385
|
function scanDirForMarker(dir) {
|
|
484
|
-
// Markers in shared directories (tmpdir, /) are never trusted — treat the
|
|
485
|
-
// dir as marker-free and keep walking, same as any dir without a marker.
|
|
486
386
|
if (isUnsafeMarkerDir(dir))
|
|
487
387
|
return null;
|
|
488
388
|
if (fs.existsSync(markerPath(dir))) {
|
|
@@ -498,9 +398,6 @@ function scanDirForMarker(dir) {
|
|
|
498
398
|
}
|
|
499
399
|
/**
|
|
500
400
|
* Find a project marker from `startCwd` — the single discovery implementation.
|
|
501
|
-
*
|
|
502
|
-
* Policy defaults (when fields omitted): walkUp=true, allowHome=true.
|
|
503
|
-
* Pass `CWD_ONLY_MARKER_DISCOVERY_POLICY` for harness cwd binding.
|
|
504
401
|
*/
|
|
505
402
|
function discoverMarker(startCwd, policy = exports.DEFAULT_MARKER_DISCOVERY_POLICY) {
|
|
506
403
|
const walkUp = policy.walkUp ?? true;
|
|
@@ -543,7 +440,6 @@ function discoverMarker(startCwd, policy = exports.DEFAULT_MARKER_DISCOVERY_POLI
|
|
|
543
440
|
}
|
|
544
441
|
/**
|
|
545
442
|
* Back-compat wrapper: when `options` is omitted, cwd-only (historical default).
|
|
546
|
-
* Prefer `discoverMarker` with an explicit policy for new code.
|
|
547
443
|
*/
|
|
548
444
|
function findMarker(startCwd, options) {
|
|
549
445
|
if (!options) {
|
|
@@ -556,9 +452,7 @@ function findMarker(startCwd, options) {
|
|
|
556
452
|
});
|
|
557
453
|
}
|
|
558
454
|
/**
|
|
559
|
-
* Shared, harness-agnostic directive text. Every start hook
|
|
560
|
-
* Claude Code, Cursor) emits exactly this so wording stays DRY. The TIM
|
|
561
|
-
* marker is authoritative for project binding this turn (see plan §end-state).
|
|
455
|
+
* Shared, harness-agnostic directive text. Every start hook emits exactly this.
|
|
562
456
|
*/
|
|
563
457
|
function buildLoadDirective(projectLabel, markerDir, bindingLabel) {
|
|
564
458
|
const display = bindingLabel?.trim() || projectLabel;
|
package/dist/marker.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"marker.js","sourceRoot":"","sources":["../src/marker.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"marker.js","sourceRoot":"","sources":["../src/marker.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"phantom-recovery.d.ts","sourceRoot":"","sources":["../src/phantom-recovery.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAIL,KAAK,aAAa,EACnB,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"phantom-recovery.d.ts","sourceRoot":"","sources":["../src/phantom-recovery.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAIL,KAAK,aAAa,EACnB,MAAM,aAAa,CAAC;AAyBrB;;;GAGG;AACH,wBAAsB,2BAA2B,CAC/C,KAAK,EAAE,QAAQ,EACf,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CA8BxB;AAED,iEAAiE;AACjE,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAE/D;AAED,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAE/D;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAE5D;AAED,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,aAAa,EACrB,cAAc,EAAE,MAAM,GACrB,aAAa,CAEf"}
|
package/dist/phantom-recovery.js
CHANGED
|
@@ -55,14 +55,7 @@ function readTimJsonProjectLabel(dir) {
|
|
|
55
55
|
}
|
|
56
56
|
}
|
|
57
57
|
async function labelIfValidProject(store, label) {
|
|
58
|
-
const validated = await (0, marker_js_1.validateMarkerAgainstStore)({
|
|
59
|
-
version: 2,
|
|
60
|
-
project: label,
|
|
61
|
-
session: '',
|
|
62
|
-
exchanges: 0,
|
|
63
|
-
batch_size: 5,
|
|
64
|
-
batches_summarized: 0,
|
|
65
|
-
}, store);
|
|
58
|
+
const validated = await (0, marker_js_1.validateMarkerAgainstStore)({ version: 3, project: label }, store);
|
|
66
59
|
return validated?.project ?? null;
|
|
67
60
|
}
|
|
68
61
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"phantom-recovery.js","sourceRoot":"","sources":["../src/phantom-recovery.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"phantom-recovery.js","sourceRoot":"","sources":["../src/phantom-recovery.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { TimStore } from 'tim-store';
|
|
2
|
+
import { type ProjectCreationDeps } from './project-creation.js';
|
|
3
|
+
export type ProjectBindingStatus = 'bound' | 'unbound' | 'label-mismatch' | 'path-missing' | 'no-path';
|
|
4
|
+
export interface ProjectBindingFinding {
|
|
5
|
+
label: string;
|
|
6
|
+
path?: string;
|
|
7
|
+
status: ProjectBindingStatus;
|
|
8
|
+
markerLabel?: string;
|
|
9
|
+
}
|
|
10
|
+
export interface StalePathFinding {
|
|
11
|
+
label: string;
|
|
12
|
+
path: string;
|
|
13
|
+
device: string;
|
|
14
|
+
lastSeenAt?: string;
|
|
15
|
+
}
|
|
16
|
+
export interface BindingReport {
|
|
17
|
+
projects: ProjectBindingFinding[];
|
|
18
|
+
stalePaths: StalePathFinding[];
|
|
19
|
+
}
|
|
20
|
+
export interface BindOutcome {
|
|
21
|
+
label: string;
|
|
22
|
+
outcome: 'bound' | 'already-bound' | 'failed';
|
|
23
|
+
detail?: string;
|
|
24
|
+
}
|
|
25
|
+
export declare function bindingDeviceId(): string;
|
|
26
|
+
/** Classify a project's on-disk binding from store metadata.path. */
|
|
27
|
+
export declare function classifyProjectPathBinding(label: string, projectPath: string | undefined): Pick<ProjectBindingFinding, 'status' | 'markerLabel'>;
|
|
28
|
+
export declare function collectBindingReport(store: TimStore): Promise<BindingReport>;
|
|
29
|
+
export declare function formatBindingFindingLine(finding: ProjectBindingFinding): string;
|
|
30
|
+
export declare function formatStalePathLine(finding: StalePathFinding): string;
|
|
31
|
+
export declare function formatBindOutcomeLine(outcome: BindOutcome): string;
|
|
32
|
+
export declare function bindUnboundBindings(store: TimStore, findings: ProjectBindingFinding[], deps?: Partial<ProjectCreationDeps>): Promise<BindOutcome[]>;
|
|
33
|
+
//# sourceMappingURL=project-binding-health.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-binding-health.d.ts","sourceRoot":"","sources":["../src/project-binding-health.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,QAAQ,EAIT,MAAM,WAAW,CAAC;AAEnB,OAAO,EAEL,KAAK,mBAAmB,EACzB,MAAM,uBAAuB,CAAC;AAE/B,MAAM,MAAM,oBAAoB,GAC5B,OAAO,GACP,SAAS,GACT,gBAAgB,GAChB,cAAc,GACd,SAAS,CAAC;AAEd,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,oBAAoB,CAAC;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,qBAAqB,EAAE,CAAC;IAClC,UAAU,EAAE,gBAAgB,EAAE,CAAC;CAChC;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,OAAO,GAAG,eAAe,GAAG,QAAQ,CAAC;IAC9C,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,eAAe,IAAI,MAAM,CAExC;AAED,qEAAqE;AACrE,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,MAAM,GAAG,SAAS,GAC9B,IAAI,CAAC,qBAAqB,EAAE,QAAQ,GAAG,aAAa,CAAC,CAkBvD;AAED,wBAAsB,oBAAoB,CAAC,KAAK,EAAE,QAAQ,GAAG,OAAO,CAAC,aAAa,CAAC,CAuClF;AAED,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,qBAAqB,GAAG,MAAM,CAU/E;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,gBAAgB,GAAG,MAAM,CAGrE;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,WAAW,GAAG,MAAM,CAKlE;AAED,wBAAsB,mBAAmB,CACvC,KAAK,EAAE,QAAQ,EACf,QAAQ,EAAE,qBAAqB,EAAE,EACjC,IAAI,GAAE,OAAO,CAAC,mBAAmB,CAAM,GACtC,OAAO,CAAC,WAAW,EAAE,CAAC,CAuBxB"}
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.bindingDeviceId = bindingDeviceId;
|
|
37
|
+
exports.classifyProjectPathBinding = classifyProjectPathBinding;
|
|
38
|
+
exports.collectBindingReport = collectBindingReport;
|
|
39
|
+
exports.formatBindingFindingLine = formatBindingFindingLine;
|
|
40
|
+
exports.formatStalePathLine = formatStalePathLine;
|
|
41
|
+
exports.formatBindOutcomeLine = formatBindOutcomeLine;
|
|
42
|
+
exports.bindUnboundBindings = bindUnboundBindings;
|
|
43
|
+
const fs = __importStar(require("node:fs"));
|
|
44
|
+
const os = __importStar(require("node:os"));
|
|
45
|
+
const path = __importStar(require("node:path"));
|
|
46
|
+
const tim_store_1 = require("tim-store");
|
|
47
|
+
const marker_js_1 = require("./marker.js");
|
|
48
|
+
const project_creation_js_1 = require("./project-creation.js");
|
|
49
|
+
function bindingDeviceId() {
|
|
50
|
+
return os.hostname();
|
|
51
|
+
}
|
|
52
|
+
/** Classify a project's on-disk binding from store metadata.path. */
|
|
53
|
+
function classifyProjectPathBinding(label, projectPath) {
|
|
54
|
+
if (typeof projectPath !== 'string' || projectPath.trim().length === 0) {
|
|
55
|
+
return { status: 'no-path' };
|
|
56
|
+
}
|
|
57
|
+
const resolved = path.resolve(projectPath);
|
|
58
|
+
if (!fs.existsSync(resolved)) {
|
|
59
|
+
return { status: 'path-missing' };
|
|
60
|
+
}
|
|
61
|
+
const marker = (0, marker_js_1.readMarker)(resolved);
|
|
62
|
+
if (!marker) {
|
|
63
|
+
return { status: 'unbound' };
|
|
64
|
+
}
|
|
65
|
+
if (marker.project === label) {
|
|
66
|
+
return { status: 'bound' };
|
|
67
|
+
}
|
|
68
|
+
return { status: 'label-mismatch', markerLabel: marker.project };
|
|
69
|
+
}
|
|
70
|
+
async function collectBindingReport(store) {
|
|
71
|
+
const projects = [];
|
|
72
|
+
const stalePaths = [];
|
|
73
|
+
const device = bindingDeviceId();
|
|
74
|
+
const now = Date.now();
|
|
75
|
+
for (const row of await store.listProjects()) {
|
|
76
|
+
const entry = await store.read(row.id);
|
|
77
|
+
if (!entry || entry.metadata.kind !== 'project')
|
|
78
|
+
continue;
|
|
79
|
+
const projectPath = typeof entry.metadata.path === 'string' ? entry.metadata.path : undefined;
|
|
80
|
+
const classification = classifyProjectPathBinding(row.label, projectPath);
|
|
81
|
+
projects.push({
|
|
82
|
+
label: row.label,
|
|
83
|
+
path: projectPath,
|
|
84
|
+
...classification,
|
|
85
|
+
});
|
|
86
|
+
for (const pathRow of await (0, tim_store_1.listProjectPathRows)(store, row.label)) {
|
|
87
|
+
if (pathRow.metadata.device !== device)
|
|
88
|
+
continue;
|
|
89
|
+
if (!(0, tim_store_1.isStalePathRow)(pathRow, now, tim_store_1.DEFAULT_STALE_PATH_MAX_AGE_DAYS))
|
|
90
|
+
continue;
|
|
91
|
+
const inventoryPath = typeof pathRow.metadata.path === 'string' ? pathRow.metadata.path : '';
|
|
92
|
+
stalePaths.push({
|
|
93
|
+
label: row.label,
|
|
94
|
+
path: inventoryPath,
|
|
95
|
+
device,
|
|
96
|
+
lastSeenAt: typeof pathRow.metadata.last_seen_at === 'string'
|
|
97
|
+
? pathRow.metadata.last_seen_at
|
|
98
|
+
: undefined,
|
|
99
|
+
});
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
projects.sort((a, b) => a.label.localeCompare(b.label));
|
|
103
|
+
stalePaths.sort((a, b) => a.label.localeCompare(b.label) || a.path.localeCompare(b.path));
|
|
104
|
+
return { projects, stalePaths };
|
|
105
|
+
}
|
|
106
|
+
function formatBindingFindingLine(finding) {
|
|
107
|
+
switch (finding.status) {
|
|
108
|
+
case 'no-path':
|
|
109
|
+
return ` ${finding.label} no-path`;
|
|
110
|
+
case 'path-missing':
|
|
111
|
+
return ` ${finding.label} ${finding.path} path-missing`;
|
|
112
|
+
case 'label-mismatch':
|
|
113
|
+
return ` ${finding.label} ${finding.path} label-mismatch (marker ${finding.markerLabel})`;
|
|
114
|
+
}
|
|
115
|
+
return ` ${finding.label} ${finding.path} ${finding.status}`;
|
|
116
|
+
}
|
|
117
|
+
function formatStalePathLine(finding) {
|
|
118
|
+
const seen = finding.lastSeenAt ?? 'unknown';
|
|
119
|
+
return ` stale ${finding.label} ${finding.path} (${finding.device}, last seen ${seen})`;
|
|
120
|
+
}
|
|
121
|
+
function formatBindOutcomeLine(outcome) {
|
|
122
|
+
if (outcome.outcome === 'failed') {
|
|
123
|
+
return ` ${outcome.label}: failed (${outcome.detail ?? 'unknown error'})`;
|
|
124
|
+
}
|
|
125
|
+
return ` ${outcome.label}: ${outcome.outcome}`;
|
|
126
|
+
}
|
|
127
|
+
async function bindUnboundBindings(store, findings, deps = {}) {
|
|
128
|
+
const outcomes = [];
|
|
129
|
+
for (const finding of findings) {
|
|
130
|
+
if (finding.status !== 'unbound' || !finding.path)
|
|
131
|
+
continue;
|
|
132
|
+
try {
|
|
133
|
+
const result = await (0, project_creation_js_1.recoverProjectBinding)(store, { label: finding.label, path: finding.path }, deps);
|
|
134
|
+
outcomes.push({
|
|
135
|
+
label: finding.label,
|
|
136
|
+
outcome: result.alreadyBound ? 'already-bound' : 'bound',
|
|
137
|
+
});
|
|
138
|
+
}
|
|
139
|
+
catch (error) {
|
|
140
|
+
outcomes.push({
|
|
141
|
+
label: finding.label,
|
|
142
|
+
outcome: 'failed',
|
|
143
|
+
detail: error instanceof Error ? error.message : String(error),
|
|
144
|
+
});
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
return outcomes;
|
|
148
|
+
}
|
|
149
|
+
//# sourceMappingURL=project-binding-health.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-binding-health.js","sourceRoot":"","sources":["../src/project-binding-health.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA+CA,0CAEC;AAGD,gEAqBC;AAED,oDAuCC;AAED,4DAUC;AAED,kDAGC;AAED,sDAKC;AAED,kDA2BC;AAvKD,4CAA8B;AAC9B,4CAA8B;AAC9B,gDAAkC;AAClC,yCAKmB;AACnB,2CAAyC;AACzC,+DAG+B;AAkC/B,SAAgB,eAAe;IAC7B,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC;AACvB,CAAC;AAED,qEAAqE;AACrE,SAAgB,0BAA0B,CACxC,KAAa,EACb,WAA+B;IAE/B,IAAI,OAAO,WAAW,KAAK,QAAQ,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;IAC/B,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAC3C,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7B,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC;IACpC,CAAC;IAED,MAAM,MAAM,GAAG,IAAA,sBAAU,EAAC,QAAQ,CAAC,CAAC;IACpC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;IAC/B,CAAC;IACD,IAAI,MAAM,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;QAC7B,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;IAC7B,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC;AACnE,CAAC;AAEM,KAAK,UAAU,oBAAoB,CAAC,KAAe;IACxD,MAAM,QAAQ,GAA4B,EAAE,CAAC;IAC7C,MAAM,UAAU,GAAuB,EAAE,CAAC;IAC1C,MAAM,MAAM,GAAG,eAAe,EAAE,CAAC;IACjC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAEvB,KAAK,MAAM,GAAG,IAAI,MAAM,KAAK,CAAC,YAAY,EAAE,EAAE,CAAC;QAC7C,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACvC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,KAAK,SAAS;YAAE,SAAS;QAE1D,MAAM,WAAW,GACf,OAAO,KAAK,CAAC,QAAQ,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;QAC5E,MAAM,cAAc,GAAG,0BAA0B,CAAC,GAAG,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QAC1E,QAAQ,CAAC,IAAI,CAAC;YACZ,KAAK,EAAE,GAAG,CAAC,KAAK;YAChB,IAAI,EAAE,WAAW;YACjB,GAAG,cAAc;SAClB,CAAC,CAAC;QAEH,KAAK,MAAM,OAAO,IAAI,MAAM,IAAA,+BAAmB,EAAC,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YAClE,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,KAAK,MAAM;gBAAE,SAAS;YACjD,IAAI,CAAC,IAAA,0BAAc,EAAC,OAAO,EAAE,GAAG,EAAE,2CAA+B,CAAC;gBAAE,SAAS;YAC7E,MAAM,aAAa,GACjB,OAAO,OAAO,CAAC,QAAQ,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;YACzE,UAAU,CAAC,IAAI,CAAC;gBACd,KAAK,EAAE,GAAG,CAAC,KAAK;gBAChB,IAAI,EAAE,aAAa;gBACnB,MAAM;gBACN,UAAU,EACR,OAAO,OAAO,CAAC,QAAQ,CAAC,YAAY,KAAK,QAAQ;oBAC/C,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY;oBAC/B,CAAC,CAAC,SAAS;aAChB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;IACxD,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAC1F,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC;AAClC,CAAC;AAED,SAAgB,wBAAwB,CAAC,OAA8B;IACrE,QAAQ,OAAO,CAAC,MAAM,EAAE,CAAC;QACvB,KAAK,SAAS;YACZ,OAAO,KAAK,OAAO,CAAC,KAAK,UAAU,CAAC;QACtC,KAAK,cAAc;YACjB,OAAO,KAAK,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,IAAI,eAAe,CAAC;QAC3D,KAAK,gBAAgB;YACnB,OAAO,KAAK,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,IAAI,2BAA2B,OAAO,CAAC,WAAW,GAAG,CAAC;IAC/F,CAAC;IACD,OAAO,KAAK,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;AAChE,CAAC;AAED,SAAgB,mBAAmB,CAAC,OAAyB;IAC3D,MAAM,IAAI,GAAG,OAAO,CAAC,UAAU,IAAI,SAAS,CAAC;IAC7C,OAAO,WAAW,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,CAAC,MAAM,eAAe,IAAI,GAAG,CAAC;AAC3F,CAAC;AAED,SAAgB,qBAAqB,CAAC,OAAoB;IACxD,IAAI,OAAO,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;QACjC,OAAO,KAAK,OAAO,CAAC,KAAK,aAAa,OAAO,CAAC,MAAM,IAAI,eAAe,GAAG,CAAC;IAC7E,CAAC;IACD,OAAO,KAAK,OAAO,CAAC,KAAK,KAAK,OAAO,CAAC,OAAO,EAAE,CAAC;AAClD,CAAC;AAEM,KAAK,UAAU,mBAAmB,CACvC,KAAe,EACf,QAAiC,EACjC,OAAqC,EAAE;IAEvC,MAAM,QAAQ,GAAkB,EAAE,CAAC;IACnC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,OAAO,CAAC,IAAI;YAAE,SAAS;QAC5D,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAA,2CAAqB,EACxC,KAAK,EACL,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,EAC5C,IAAI,CACL,CAAC;YACF,QAAQ,CAAC,IAAI,CAAC;gBACZ,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,OAAO,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,OAAO;aACzD,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,QAAQ,CAAC,IAAI,CAAC;gBACZ,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,OAAO,EAAE,QAAQ;gBACjB,MAAM,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aAC/D,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project-creation.d.ts","sourceRoot":"","sources":["../src/project-creation.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,QAAQ,
|
|
1
|
+
{"version":3,"file":"project-creation.d.ts","sourceRoot":"","sources":["../src/project-creation.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAwB,MAAM,WAAW,CAAC;AAC3D,OAAO,EAIL,oBAAoB,EACrB,MAAM,aAAa,CAAC;AAErB,eAAO,MAAM,UAAU,iKAAiK,CAAC;AAEzL,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,+BAAgC,SAAQ,KAAK;IAC5D,IAAI,EAAE,aAAa,CAAC;CACrB;AAED,MAAM,WAAW,0BAA2B,SAAQ,KAAK;IACvD,IAAI,EAAE,OAAO,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,MAAM,qBAAqB,GAC7B,+BAA+B,GAC/B,0BAA0B,CAAC;AAE/B,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,MAAM,MAAM,CAAC;IACxB,cAAc,EAAE,OAAO,oBAAoB,CAAC;IAC5C,SAAS,EAAE,OAAO,yBAAyB,CAAC;CAC7C;AAED,MAAM,WAAW,yBAAyB;IACxC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,2BAA2B;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,OAAO,CAAC;CACvB;AAED,qBAAa,kCAAmC,SAAQ,KAAK;aAGzC,YAAY,EAAE,MAAM;aACpB,WAAW,EAAE,MAAM;gBAFnC,OAAO,EAAE,MAAM,EACC,YAAY,EAAE,MAAM,EACpB,WAAW,EAAE,MAAM;CAKtC;AAQD,wBAAgB,YAAY,CAAC,IAAI,EAAE,mBAAmB,GAAG,OAAO,GAAG,aAAa,CAY/E;AAED,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAkB5D;AAED,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CASjE;AAkHD,wBAAsB,wBAAwB,CAC5C,KAAK,EAAE,QAAQ,EACf,IAAI,EAAE,mBAAmB,EACzB,IAAI,GAAE,OAAO,CAAC,mBAAmB,CAAM,GACtC,OAAO,CAAC,qBAAqB,CAAC,CA+EhC;AAED,wBAAsB,qBAAqB,CACzC,KAAK,EAAE,QAAQ,EACf,IAAI,EAAE,yBAAyB,EAC/B,IAAI,GAAE,OAAO,CAAC,mBAAmB,CAAM,GACtC,OAAO,CAAC,2BAA2B,CAAC,CAkDtC"}
|