logicstamp-context 0.5.2 → 0.5.4
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/LLM_CONTEXT.md +3 -3
- package/README.md +32 -47
- package/dist/cli/commands/context/tokenEstimator.d.ts.map +1 -1
- package/dist/cli/commands/context/tokenEstimator.js +50 -14
- package/dist/cli/commands/context/tokenEstimator.js.map +1 -1
- package/dist/cli/commands/context/watchMode.d.ts.map +1 -1
- package/dist/cli/commands/context/watchMode.js +16 -36
- package/dist/cli/commands/context/watchMode.js.map +1 -1
- package/dist/cli/commands/context.d.ts +1 -1
- package/dist/cli/commands/context.js +4 -4
- package/dist/cli/commands/context.js.map +1 -1
- package/dist/cli/handlers/contextHandler.d.ts.map +1 -1
- package/dist/cli/handlers/contextHandler.js +7 -3
- package/dist/cli/handlers/contextHandler.js.map +1 -1
- package/dist/cli/index.d.ts +1 -1
- package/dist/cli/index.js +1 -1
- package/dist/cli/parser/helpText.js +2 -2
- package/dist/core/astParser/detectors.d.ts.map +1 -1
- package/dist/core/astParser/detectors.js +18 -4
- package/dist/core/astParser/detectors.js.map +1 -1
- package/dist/core/astParser.d.ts +1 -1
- package/dist/core/astParser.d.ts.map +1 -1
- package/dist/core/astParser.js +5 -3
- package/dist/core/astParser.js.map +1 -1
- package/dist/core/manifest.d.ts.map +1 -1
- package/dist/core/manifest.js +8 -1
- package/dist/core/manifest.js.map +1 -1
- package/dist/core/pack/collector.d.ts.map +1 -1
- package/dist/core/pack/collector.js +3 -2
- package/dist/core/pack/collector.js.map +1 -1
- package/dist/core/pack/loader.d.ts +37 -4
- package/dist/core/pack/loader.d.ts.map +1 -1
- package/dist/core/pack/loader.js +92 -32
- package/dist/core/pack/loader.js.map +1 -1
- package/dist/core/pack/resolver.d.ts.map +1 -1
- package/dist/core/pack/resolver.js +4 -3
- package/dist/core/pack/resolver.js.map +1 -1
- package/dist/core/pack.d.ts.map +1 -1
- package/dist/core/pack.js +20 -4
- package/dist/core/pack.js.map +1 -1
- package/dist/extractors/express/expressExtractor.d.ts.map +1 -1
- package/dist/extractors/express/expressExtractor.js +12 -5
- package/dist/extractors/express/expressExtractor.js.map +1 -1
- package/dist/extractors/react/hookParameterExtractor.js +4 -4
- package/dist/extractors/react/hookParameterExtractor.js.map +1 -1
- package/dist/extractors/react/propExtractor.d.ts.map +1 -1
- package/dist/extractors/react/propExtractor.js +33 -27
- package/dist/extractors/react/propExtractor.js.map +1 -1
- package/dist/extractors/styling/chakra.d.ts.map +1 -1
- package/dist/extractors/styling/chakra.js +2 -1
- package/dist/extractors/styling/chakra.js.map +1 -1
- package/dist/extractors/styling/motion.d.ts.map +1 -1
- package/dist/extractors/styling/motion.js +10 -6
- package/dist/extractors/styling/motion.js.map +1 -1
- package/dist/extractors/styling/shadcn.d.ts.map +1 -1
- package/dist/extractors/styling/shadcn.js +2 -4
- package/dist/extractors/styling/shadcn.js.map +1 -1
- package/dist/extractors/styling/styleExtractor.d.ts +1 -1
- package/dist/extractors/styling/styleExtractor.d.ts.map +1 -1
- package/dist/extractors/styling/styleExtractor.js +6 -5
- package/dist/extractors/styling/styleExtractor.js.map +1 -1
- package/dist/extractors/styling/tailwind.d.ts.map +1 -1
- package/dist/extractors/styling/tailwind.js +4 -12
- package/dist/extractors/styling/tailwind.js.map +1 -1
- package/dist/extractors/vue/componentExtractor.d.ts.map +1 -1
- package/dist/extractors/vue/componentExtractor.js +8 -1
- package/dist/extractors/vue/componentExtractor.js.map +1 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -1
- package/dist/index.js.map +1 -1
- package/dist/utils/cleanup.d.ts +40 -0
- package/dist/utils/cleanup.d.ts.map +1 -0
- package/dist/utils/cleanup.js +109 -0
- package/dist/utils/cleanup.js.map +1 -0
- package/dist/utils/config.d.ts.map +1 -1
- package/dist/utils/config.js +64 -80
- package/dist/utils/config.js.map +1 -1
- package/dist/utils/debug.d.ts +7 -0
- package/dist/utils/debug.d.ts.map +1 -1
- package/dist/utils/debug.js +16 -0
- package/dist/utils/debug.js.map +1 -1
- package/dist/utils/tokens.d.ts +6 -0
- package/dist/utils/tokens.d.ts.map +1 -1
- package/dist/utils/tokens.js +22 -0
- package/dist/utils/tokens.js.map +1 -1
- package/package.json +2 -2
- package/schema/logicstamp.context.schema.json +1 -3
package/LLM_CONTEXT.md
CHANGED
|
@@ -94,7 +94,7 @@ The `context_main.json` file serves as a directory index:
|
|
|
94
94
|
}
|
|
95
95
|
],
|
|
96
96
|
"meta": {
|
|
97
|
-
"source": "logicstamp-context@0.5.
|
|
97
|
+
"source": "logicstamp-context@0.5.3"
|
|
98
98
|
}
|
|
99
99
|
}
|
|
100
100
|
```
|
|
@@ -111,7 +111,7 @@ The `context_main.json` file serves as a directory index:
|
|
|
111
111
|
### Folder Context Files (`context.json`)
|
|
112
112
|
|
|
113
113
|
Each folder's `context.json` contains an array of LogicStamp bundles. Each bundle represents one entry point (component/module) plus its immediate dependency graph.
|
|
114
|
-
- **Design note**: LogicStamp Context uses per-root bundles (one bundle per entry point) rather than per-component files. This means each bundle contains the root component plus its complete dependency graph—all related components and their relationships in one self-contained unit. This design is optimized for AI
|
|
114
|
+
- **Design note**: LogicStamp Context uses per-root bundles (one bundle per entry point) rather than per-component files. This means each bundle contains the root component plus its complete dependency graph—all related components and their relationships in one self-contained unit. This design is optimized for AI workflows: when you need help with a specific page or feature, share that root bundle and the AI has complete context.
|
|
115
115
|
- Top-level fields: `position`, `type`, `schemaVersion`, `entryId`, `depth`, `createdAt`, `bundleHash`, `graph`, `meta`.
|
|
116
116
|
- `graph.nodes` holds UIF contracts describing functions, props, events, imports, and semantic/file hashes. Optional `codeHeader` stores contract headers or code snippets when requested.
|
|
117
117
|
- `graph.edges` lists dependency relationships between nodes (empty when analysis depth is 1).
|
|
@@ -180,7 +180,7 @@ When `meta.missing` is non-empty, it signals incomplete dependency resolution:
|
|
|
180
180
|
|
|
181
181
|
## Why Structured Data Is Better Than Raw Source
|
|
182
182
|
|
|
183
|
-
LogicStamp generates **structured context bundles** rather than raw source files. This approach provides significant advantages for AI
|
|
183
|
+
LogicStamp generates **structured context bundles** rather than raw source files. This approach provides significant advantages for AI workflows:
|
|
184
184
|
|
|
185
185
|
### Semantic Density
|
|
186
186
|
|
package/README.md
CHANGED
|
@@ -7,20 +7,21 @@
|
|
|
7
7
|
</picture>
|
|
8
8
|
</a>
|
|
9
9
|
|
|
10
|
-
###
|
|
10
|
+
### Structured context for AI coding assistants.
|
|
11
11
|
|
|
12
|
-
|
|
12
|
+
Make AI coding assistants understand your architecture, not just your code.<br/>
|
|
13
|
+
Extract deterministic component contracts from your TypeScript codebase.
|
|
13
14
|
|
|
14
|
-
<small><em>
|
|
15
|
+
<small><em>Supports: React · Next.js · Vue (TS/TSX) · Express · NestJS</em></small>
|
|
15
16
|
|
|
16
|
-
**
|
|
17
|
+
**Works with Claude, Cursor, Copilot Chat, and any MCP-compatible agent.**
|
|
17
18
|
|
|
18
19
|
<br/>
|
|
19
20
|
<a href="https://github.com/LogicStamp">
|
|
20
21
|
<img src="./assets/logicstamp-fox.svg" alt="LogicStamp Fox Mascot" width="100" style="min-width: 80px;">
|
|
21
22
|
</a>
|
|
22
23
|
|
|
23
|
-
[](https://www.npmjs.com/package/logicstamp-context)
|
|
24
25
|

|
|
25
26
|
[](LICENSE)
|
|
26
27
|

|
|
@@ -29,26 +30,17 @@
|
|
|
29
30
|
</div>
|
|
30
31
|
<br/>
|
|
31
32
|
|
|
32
|
-
|
|
33
|
-
<summary><strong>📌 TL;DR</strong></summary>
|
|
34
|
-
|
|
35
|
-
**What it does:** Uses AST parsing to extract deterministic component contracts from your TypeScript codebase.
|
|
36
|
-
|
|
37
|
-
**What you get:** Structured JSON bundles (props, hooks, dependencies, APIs) optimized for AI consumption.
|
|
38
|
-
|
|
39
|
-
**Why it matters:** Gives AI assistants explicit architectural context without reading implementations - prevents inferred prop names and missed dependencies by making contracts explicit.
|
|
40
|
-
|
|
41
|
-
</details>
|
|
33
|
+
**LogicStamp Context** is a static analyzer that extracts deterministic component contracts from TypeScript codebases - giving AI assistants structured architectural context instead of raw source code.
|
|
42
34
|
|
|
43
35
|
<details>
|
|
44
36
|
<summary><strong>📑 Table of Contents</strong></summary>
|
|
45
37
|
|
|
46
38
|
- [The Problem](#the-problem)
|
|
47
39
|
- [Quick Start](#quick-start)
|
|
48
|
-
- [Drift Detection](#drift-detection)
|
|
49
40
|
- [Why Structured Context?](#why-structured-context)
|
|
50
41
|
- [Features](#features)
|
|
51
42
|
- [Watch Mode](#watch-mode)
|
|
43
|
+
- [One-time Comparison](#one-time-comparison)
|
|
52
44
|
- [How it Works](#how-it-works)
|
|
53
45
|
- [MCP Server](#mcp-server)
|
|
54
46
|
- [Example Output](#example-output)
|
|
@@ -65,11 +57,13 @@
|
|
|
65
57
|
|
|
66
58
|
## The Problem
|
|
67
59
|
|
|
68
|
-
AI coding assistants
|
|
60
|
+
AI coding assistants read your source code, but they don't *understand* it structurally. They hallucinate props that don't exist, miss dependencies, and can't tell when a breaking change affects downstream components.
|
|
69
61
|
|
|
70
|
-
|
|
62
|
+
For example: your `Button` component accepts `variant` and `disabled` - but the AI suggests `isLoading` because it saw that pattern elsewhere. No structured contract means no source of truth.
|
|
71
63
|
|
|
72
|
-
**LogicStamp Context
|
|
64
|
+
**LogicStamp Context** is a static analyzer that extracts deterministic component contracts from TypeScript - giving AI assistants structured architectural context instead of raw source code.
|
|
65
|
+
|
|
66
|
+
These contracts:
|
|
73
67
|
- Stay in sync with your code (watch mode auto-regenerates)
|
|
74
68
|
- Expose what matters (props, hooks, dependencies) without implementation noise
|
|
75
69
|
- Work with any MCP-compatible AI assistant (Claude, Cursor, etc.)
|
|
@@ -110,21 +104,6 @@ stamp context
|
|
|
110
104
|
|
|
111
105
|
📋 **For detailed setup instructions, see the [Getting Started Guide](https://logicstamp.dev/docs/getting-started).**
|
|
112
106
|
|
|
113
|
-
## Drift Detection
|
|
114
|
-
|
|
115
|
-
Compare regenerated context against existing context files (useful for one-time checks and CI workflows):
|
|
116
|
-
|
|
117
|
-
```bash
|
|
118
|
-
stamp context compare # detect changes
|
|
119
|
-
stamp context compare --approve # update (like jest -u)
|
|
120
|
-
```
|
|
121
|
-
|
|
122
|
-
Shows added/removed components, changed props, hooks, dependencies.
|
|
123
|
-
|
|
124
|
-
> **💡 Tip:** If you're using [watch mode](#watch-mode), context files are automatically regenerated and changes are shown in real-time. Use `compare` for one-time checks or CI workflows.
|
|
125
|
-
|
|
126
|
-
> ⚠️ **Note:** Context files are gitignored by default. For CI-based drift detection, the `--baseline git:<ref>` option (e.g., `--baseline git:main`) is **not yet implemented**. Until automation is available, use the manual workflow: generate context from current code, checkout baseline branch, generate context from baseline, then compare. See the [roadmap](https://logicstamp.dev/roadmap) for planned automation.
|
|
127
|
-
|
|
128
107
|
## Why Structured Context?
|
|
129
108
|
|
|
130
109
|
| Without LogicStamp Context | With LogicStamp Context |
|
|
@@ -193,11 +172,8 @@ Pre-parsed. Categorized. Stable. The AI reads contracts, not implementations.
|
|
|
193
172
|
For development, run watch mode to keep context fresh as you code:
|
|
194
173
|
|
|
195
174
|
```bash
|
|
196
|
-
|
|
197
|
-
stamp context --watch
|
|
198
|
-
|
|
199
|
-
# Strict watch - also detect breaking changes in real-time
|
|
200
|
-
stamp context --watch --strict-watch
|
|
175
|
+
stamp context --watch # regenerate on changes
|
|
176
|
+
stamp context --watch --strict-watch # also detect breaking changes
|
|
201
177
|
```
|
|
202
178
|
|
|
203
179
|
Strict watch catches breaking changes that affect consumers:
|
|
@@ -209,22 +185,26 @@ Strict watch catches breaking changes that affect consumers:
|
|
|
209
185
|
| `breaking_change_function_removed` | Deleted exported `formatDate()` |
|
|
210
186
|
| `contract_removed` | Deleted entire component |
|
|
211
187
|
|
|
212
|
-
|
|
188
|
+
### One-time Comparison
|
|
213
189
|
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
190
|
+
Compare regenerated context against existing files:
|
|
191
|
+
|
|
192
|
+
```bash
|
|
193
|
+
stamp context compare # detect changes
|
|
194
|
+
stamp context compare --approve # update (like jest -u)
|
|
219
195
|
```
|
|
220
196
|
|
|
197
|
+
Useful for reviewing changes before committing or validating context is up-to-date.
|
|
198
|
+
|
|
199
|
+
> ⚠️ **Note:** Context files are gitignored by default. For CI-based drift detection, the `--baseline git:<ref>` option (e.g., `--baseline git:main`) is **not yet implemented**. Until automation is available, use the manual workflow: generate context from current code, checkout baseline branch, generate context from baseline, then compare. See the [roadmap](https://logicstamp.dev/roadmap) for planned automation.
|
|
200
|
+
|
|
221
201
|
## How it Works
|
|
222
202
|
|
|
223
203
|
1. **Scan** - Finds all `.ts` and `.tsx` files in your project
|
|
224
204
|
2. **Analyze** - Parses components and APIs using TypeScript AST (Abstract Syntax Tree) via `ts-morph`
|
|
225
205
|
3. **Extract** - Builds contracts with props, hooks, state, signatures
|
|
226
206
|
4. **Graph** - Creates dependency graph showing relationships
|
|
227
|
-
5. **Bundle** - Packages context optimized for AI
|
|
207
|
+
5. **Bundle** - Packages context optimized for AI workflows
|
|
228
208
|
6. **Organize** - Groups by folder, writes `context.json` files
|
|
229
209
|
7. **Index** - Creates `context_main.json` with metadata and statistics
|
|
230
210
|
|
|
@@ -336,6 +316,9 @@ LogicStamp Context protects sensitive data in generated context:
|
|
|
336
316
|
|
|
337
317
|
## Usage
|
|
338
318
|
|
|
319
|
+
<details>
|
|
320
|
+
<summary><strong>💻 CLI Usage Reference</strong></summary>
|
|
321
|
+
|
|
339
322
|
```bash
|
|
340
323
|
stamp --version # Show version
|
|
341
324
|
stamp --help # Show help
|
|
@@ -368,6 +351,8 @@ stamp context clean [path] # Remove generated files
|
|
|
368
351
|
| `--debug` | Show detailed hash info (watch mode) |
|
|
369
352
|
| `--log-file` | Write change logs to `.logicstamp/` (watch mode) |
|
|
370
353
|
|
|
354
|
+
</details>
|
|
355
|
+
|
|
371
356
|
📋 **See [docs/cli/commands.md](https://github.com/LogicStamp/logicstamp-context/blob/main/docs/cli/commands.md)** for complete reference.
|
|
372
357
|
|
|
373
358
|
## Framework Support
|
|
@@ -404,7 +389,7 @@ LogicStamp Context is in beta. Some edge cases are not fully supported.
|
|
|
404
389
|
## Requirements
|
|
405
390
|
|
|
406
391
|
- Node.js >= 18.18.0 (Node 20+ recommended)
|
|
407
|
-
- TypeScript codebase (React, Next.js, Vue, Express, or NestJS)
|
|
392
|
+
- TypeScript codebase (React, Next.js, Vue (TS/TSX), Express, or NestJS)
|
|
408
393
|
|
|
409
394
|
## Need Help?
|
|
410
395
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tokenEstimator.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/context/tokenEstimator.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"tokenEstimator.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/context/tokenEstimator.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AA8CjE,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,aAAa,EAAE;QACb,IAAI,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC;QACvC,MAAM,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC;QACzC,IAAI,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC;KACxC,CAAC;IACF,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,oBAAoB;IACnC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,qBAAqB,EAAE,MAAM,CAAC;IAC9B,gBAAgB,EAAE,MAAM,CAAC;IACzB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,aAAa,EAAE;QACb,IAAI,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC;QACvC,MAAM,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC;QACzC,WAAW,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC;QAC9C,IAAI,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC;KACxC,CAAC;CACH;AAED;;GAEG;AACH,wBAAsB,uBAAuB,CAC3C,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,MAAM,EACvB,WAAW,EAAE,MAAM,EACnB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,cAAc,CAAC,CAyCzB;AAED;;GAEG;AACH,wBAAsB,sBAAsB,CAC1C,KAAK,EAAE,MAAM,EAAE,EACf,QAAQ,EAAE,eAAe,EACzB,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,EACnB,aAAa,EAAE,MAAM,EACrB,eAAe,EAAE,MAAM,EACvB,OAAO,EAAE;IACP,WAAW,EAAE,MAAM,GAAG,QAAQ,GAAG,MAAM,CAAC;IACxC,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,CAAC;IAC9C,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAChB,YAAY,EAAE,OAAO,CAAC;IACtB,eAAe,EAAE,OAAO,CAAC;IACzB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,GACA,OAAO,CAAC,oBAAoB,CAAC,CAmO/B;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,UAAU,EAAE,oBAAoB,EAChC,KAAK,EAAE,MAAM,EAAE,EACf,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC,CAmEf"}
|
|
@@ -10,6 +10,31 @@ import { readFileWithText } from '../../../utils/fsx.js';
|
|
|
10
10
|
import { Project } from 'ts-morph';
|
|
11
11
|
import { formatBundles } from './bundleFormatter.js';
|
|
12
12
|
import { join, isAbsolute } from 'node:path';
|
|
13
|
+
/**
|
|
14
|
+
* Check if all bundle generations failed and handle appropriately
|
|
15
|
+
* @returns true if bundles exist, false if all failed (with warning logged)
|
|
16
|
+
*/
|
|
17
|
+
function checkBundleResults(results, context, quiet) {
|
|
18
|
+
const successful = results
|
|
19
|
+
.filter((r) => r.status === 'fulfilled')
|
|
20
|
+
.map(r => r.value);
|
|
21
|
+
if (successful.length === 0 && results.length > 0) {
|
|
22
|
+
const errors = results
|
|
23
|
+
.filter((r) => r.status === 'rejected')
|
|
24
|
+
.map(r => r.reason instanceof Error ? r.reason.message : String(r.reason));
|
|
25
|
+
if (!quiet) {
|
|
26
|
+
console.warn(`\n⚠️ All ${context} bundle generations failed:`);
|
|
27
|
+
errors.forEach(e => console.warn(` - ${e}`));
|
|
28
|
+
}
|
|
29
|
+
return { successful: [], allFailed: true };
|
|
30
|
+
}
|
|
31
|
+
// Log partial failures as warnings
|
|
32
|
+
const failedCount = results.length - successful.length;
|
|
33
|
+
if (failedCount > 0 && !quiet) {
|
|
34
|
+
console.warn(` ⚠️ ${failedCount}/${results.length} ${context} bundles failed to generate`);
|
|
35
|
+
}
|
|
36
|
+
return { successful, allFailed: false };
|
|
37
|
+
}
|
|
13
38
|
/**
|
|
14
39
|
* Calculate token estimates for current output
|
|
15
40
|
*/
|
|
@@ -60,16 +85,19 @@ export async function generateModeComparison(files, manifest, projectRoot, curre
|
|
|
60
85
|
const isHeaderMode = options.includeCode === 'header';
|
|
61
86
|
// Calculate actual source size tokens using tokenizers when available
|
|
62
87
|
// Read all source files and concatenate to get accurate token counts
|
|
88
|
+
// Cache file contents to avoid redundant file reads later
|
|
63
89
|
let actualSourceTokensGPT4;
|
|
64
90
|
let actualSourceTokensClaude;
|
|
91
|
+
const fileContentCache = new Map();
|
|
65
92
|
try {
|
|
66
|
-
// Read all source files and concatenate
|
|
93
|
+
// Read all source files, cache them, and concatenate
|
|
67
94
|
const sourceTexts = [];
|
|
68
95
|
for (const file of files) {
|
|
69
96
|
try {
|
|
70
97
|
// Resolve relative path to absolute for file operations
|
|
71
98
|
const absoluteFilePath = isAbsolute(file) ? file : join(projectRoot, file);
|
|
72
99
|
const { text } = await readFileWithText(absoluteFilePath);
|
|
100
|
+
fileContentCache.set(absoluteFilePath, text);
|
|
73
101
|
sourceTexts.push(text);
|
|
74
102
|
}
|
|
75
103
|
catch (error) {
|
|
@@ -105,7 +133,10 @@ export async function generateModeComparison(files, manifest, projectRoot, curre
|
|
|
105
133
|
// Resolve relative path to absolute for file operations
|
|
106
134
|
const absoluteFilePath = isAbsolute(file) ? file : join(projectRoot, file);
|
|
107
135
|
const ast = await extractFromFile(absoluteFilePath);
|
|
108
|
-
|
|
136
|
+
// Use cached file content instead of re-reading from disk
|
|
137
|
+
const text = fileContentCache.get(absoluteFilePath);
|
|
138
|
+
if (!text)
|
|
139
|
+
continue; // Skip if file wasn't cached (couldn't be read earlier)
|
|
109
140
|
// Use relative path for contract entryId (file is relative)
|
|
110
141
|
const result = buildContract(file, ast, {
|
|
111
142
|
preset: 'none',
|
|
@@ -123,7 +154,7 @@ export async function generateModeComparison(files, manifest, projectRoot, curre
|
|
|
123
154
|
}
|
|
124
155
|
// Generate bundles with no-style contracts
|
|
125
156
|
const noStyleContractsMap = new Map(noStyleContracts.map(c => [c.entryId, c]));
|
|
126
|
-
const
|
|
157
|
+
const noStyleBundleResults = await Promise.allSettled(manifest.graph.roots.map(rootId => pack(rootId, manifest, {
|
|
127
158
|
depth: options.depth,
|
|
128
159
|
includeCode: options.includeCode,
|
|
129
160
|
maxNodes: options.maxNodes,
|
|
@@ -133,10 +164,11 @@ export async function generateModeComparison(files, manifest, projectRoot, curre
|
|
|
133
164
|
strict: options.strict || false,
|
|
134
165
|
allowMissing: options.allowMissing !== false,
|
|
135
166
|
}, projectRoot)));
|
|
136
|
-
//
|
|
137
|
-
const successfulNoStyleBundles =
|
|
138
|
-
|
|
139
|
-
|
|
167
|
+
// Check for failures and extract successful bundles
|
|
168
|
+
const { successful: successfulNoStyleBundles, allFailed: noStyleAllFailed } = checkBundleResults(noStyleBundleResults, 'no-style', options.quiet);
|
|
169
|
+
if (noStyleAllFailed) {
|
|
170
|
+
throw new Error('Failed to generate any no-style bundles for token comparison');
|
|
171
|
+
}
|
|
140
172
|
// Format no-style bundles to get token count
|
|
141
173
|
const noStyleOutput = formatBundles(successfulNoStyleBundles, options.format);
|
|
142
174
|
headerNoStyleGPT4 = await estimateGPT4Tokens(noStyleOutput);
|
|
@@ -163,7 +195,10 @@ export async function generateModeComparison(files, manifest, projectRoot, curre
|
|
|
163
195
|
// Resolve relative path to absolute for file operations
|
|
164
196
|
const absoluteFilePath = isAbsolute(file) ? file : join(projectRoot, file);
|
|
165
197
|
const ast = await extractFromFile(absoluteFilePath);
|
|
166
|
-
|
|
198
|
+
// Use cached file content instead of re-reading from disk
|
|
199
|
+
const text = fileContentCache.get(absoluteFilePath);
|
|
200
|
+
if (!text)
|
|
201
|
+
continue; // Skip if file wasn't cached (couldn't be read earlier)
|
|
167
202
|
let styleMetadata;
|
|
168
203
|
try {
|
|
169
204
|
const sourceFile = styleProject.addSourceFileAtPath(absoluteFilePath);
|
|
@@ -189,7 +224,7 @@ export async function generateModeComparison(files, manifest, projectRoot, curre
|
|
|
189
224
|
}
|
|
190
225
|
// Generate bundles with style-enabled contracts
|
|
191
226
|
const styleContractsMap = new Map(styleContracts.map(c => [c.entryId, c]));
|
|
192
|
-
const
|
|
227
|
+
const styleBundleResults = await Promise.allSettled(manifest.graph.roots.map(rootId => pack(rootId, manifest, {
|
|
193
228
|
depth: options.depth,
|
|
194
229
|
includeCode: options.includeCode,
|
|
195
230
|
maxNodes: options.maxNodes,
|
|
@@ -199,10 +234,11 @@ export async function generateModeComparison(files, manifest, projectRoot, curre
|
|
|
199
234
|
strict: options.strict || false,
|
|
200
235
|
allowMissing: options.allowMissing !== false,
|
|
201
236
|
}, projectRoot)));
|
|
202
|
-
//
|
|
203
|
-
const successfulStyleBundles =
|
|
204
|
-
|
|
205
|
-
|
|
237
|
+
// Check for failures and extract successful bundles
|
|
238
|
+
const { successful: successfulStyleBundles, allFailed: styleAllFailed } = checkBundleResults(styleBundleResults, 'style', options.quiet);
|
|
239
|
+
if (styleAllFailed) {
|
|
240
|
+
throw new Error('Failed to generate any style bundles for token comparison');
|
|
241
|
+
}
|
|
206
242
|
// Format style bundles to get token count
|
|
207
243
|
const styleOutput = formatBundles(successfulStyleBundles, options.format);
|
|
208
244
|
headerWithStyleGPT4 = await estimateGPT4Tokens(styleOutput);
|
|
@@ -267,7 +303,7 @@ export async function displayModeComparison(comparison, files, elapsed) {
|
|
|
267
303
|
console.log('\n📊 Mode Comparison\n');
|
|
268
304
|
console.log(` Token estimation: GPT-4o (${gpt4Method}) | Claude (${claudeMethod})`);
|
|
269
305
|
console.log(` Files analyzed: ${totalFiles} total (${tsFiles} .ts, ${tsxFiles} .tsx)`);
|
|
270
|
-
console.log(` Scope: TypeScript
|
|
306
|
+
console.log(` Scope: TypeScript source files only (test files excluded)`);
|
|
271
307
|
if (!tokenizerStatus.gpt4 || !tokenizerStatus.claude) {
|
|
272
308
|
const missing = [];
|
|
273
309
|
if (!tokenizerStatus.gpt4) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tokenEstimator.js","sourceRoot":"","sources":["../../../../src/cli/commands/context/tokenEstimator.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tokenEstimator.js","sourceRoot":"","sources":["../../../../src/cli/commands/context/tokenEstimator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"watchMode.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/context/watchMode.ts"],"names":[],"mappings":"AAAA;;GAEG;
|
|
1
|
+
{"version":3,"file":"watchMode.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/context/watchMode.ts"],"names":[],"mappings":"AAAA;;GAEG;AAyBH,OAAO,EAQL,KAAK,UAAU,EAChB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAkB,KAAK,cAAc,EAAE,MAAM,eAAe,CAAC;AAmIpE;;GAEG;AACH,wBAAsB,cAAc,CAAC,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,EAAE,YAAY,GAAE,UAAU,GAAG,IAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAuexI"}
|
|
@@ -9,6 +9,7 @@ import { readStampignore, filterIgnoredFiles } from '../../../utils/stampignore.
|
|
|
9
9
|
import { buildDependencyGraph } from '../../../core/manifest.js';
|
|
10
10
|
import { normalizeEntryId } from '../../../utils/fsx.js';
|
|
11
11
|
import { writeWatchStatus, deleteWatchStatus, appendWatchLog, writeStrictWatchStatus, deleteStrictWatchStatus, } from '../../../utils/config.js';
|
|
12
|
+
import { registerCleanup, gracefulShutdown } from '../../../utils/cleanup.js';
|
|
12
13
|
import { getChanges, showChanges } from './watchDiff.js';
|
|
13
14
|
import { buildContractsFromFiles, writeContextFiles, writeMainIndex, groupBundlesByFolder, displayPath, initializeWatchCache, incrementalRebuild, } from './index.js';
|
|
14
15
|
import { contextCommand } from '../context.js';
|
|
@@ -507,10 +508,10 @@ export async function startWatchMode(options, projectRoot, initialCache = null)
|
|
|
507
508
|
trackAndRegenerate(path, 'unlink');
|
|
508
509
|
});
|
|
509
510
|
// Handle watcher errors
|
|
510
|
-
watcher.on('error', (error) => {
|
|
511
|
+
watcher.on('error', async (error) => {
|
|
511
512
|
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
512
513
|
console.error(`❌ Watch error: ${errorMessage}`);
|
|
513
|
-
|
|
514
|
+
await gracefulShutdown(1);
|
|
514
515
|
});
|
|
515
516
|
// Handle watcher ready (only show once)
|
|
516
517
|
let readyShown = false;
|
|
@@ -520,8 +521,10 @@ export async function startWatchMode(options, projectRoot, initialCache = null)
|
|
|
520
521
|
console.log(`✅ Watch mode active. Waiting for file changes...\n`);
|
|
521
522
|
}
|
|
522
523
|
});
|
|
523
|
-
//
|
|
524
|
-
|
|
524
|
+
// Register cleanup handler with the central cleanup registry
|
|
525
|
+
// This ensures cleanup runs on any exit (SIGINT, SIGTERM, errors, etc.)
|
|
526
|
+
registerCleanup('watch-mode', async () => {
|
|
527
|
+
// Close the file watcher
|
|
525
528
|
await watcher.close();
|
|
526
529
|
// Clean up watch status file
|
|
527
530
|
try {
|
|
@@ -530,9 +533,9 @@ export async function startWatchMode(options, projectRoot, initialCache = null)
|
|
|
530
533
|
catch {
|
|
531
534
|
// Ignore errors during cleanup
|
|
532
535
|
}
|
|
536
|
+
// Show final summary and clean up strict watch status
|
|
533
537
|
if (!options.quiet) {
|
|
534
538
|
console.log(`\n👋 Watch mode stopped`);
|
|
535
|
-
// Show final strict watch summary
|
|
536
539
|
if (options.strictWatch && strictWatchStatus && strictWatchStatus.cumulativeViolations > 0) {
|
|
537
540
|
console.log(`\n📋 Strict Watch Session Summary:`);
|
|
538
541
|
console.log(` Regenerations: ${strictWatchStatus.regenerationCount}`);
|
|
@@ -543,47 +546,24 @@ export async function startWatchMode(options, projectRoot, initialCache = null)
|
|
|
543
546
|
}
|
|
544
547
|
else if (options.strictWatch) {
|
|
545
548
|
console.log(`\n✅ Strict Watch: No violations detected during session`);
|
|
546
|
-
// Clean up the violations file if no violations
|
|
547
|
-
try {
|
|
548
|
-
await deleteStrictWatchStatus(projectRoot);
|
|
549
|
-
}
|
|
550
|
-
catch {
|
|
551
|
-
// Ignore
|
|
552
|
-
}
|
|
553
549
|
}
|
|
554
550
|
}
|
|
555
|
-
//
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
});
|
|
559
|
-
// Also clean up on other termination signals
|
|
560
|
-
const cleanup = async () => {
|
|
561
|
-
try {
|
|
562
|
-
await watcher.close();
|
|
563
|
-
await deleteWatchStatus(projectRoot);
|
|
564
|
-
if (!options.strictWatch || !strictWatchStatus || strictWatchStatus.cumulativeViolations === 0) {
|
|
551
|
+
// Clean up strict watch status file if no violations
|
|
552
|
+
if (!options.strictWatch || !strictWatchStatus || strictWatchStatus.cumulativeViolations === 0) {
|
|
553
|
+
try {
|
|
565
554
|
await deleteStrictWatchStatus(projectRoot);
|
|
566
555
|
}
|
|
556
|
+
catch {
|
|
557
|
+
// Ignore errors during cleanup
|
|
558
|
+
}
|
|
567
559
|
}
|
|
568
|
-
|
|
569
|
-
// Ignore errors during cleanup
|
|
570
|
-
}
|
|
571
|
-
};
|
|
572
|
-
process.on('SIGTERM', cleanup);
|
|
573
|
-
process.on('SIGHUP', cleanup);
|
|
560
|
+
}, 1); // Priority 1 - run early since other cleanup might depend on watch being stopped
|
|
574
561
|
// Keep process alive indefinitely
|
|
575
562
|
await new Promise(() => { }); // Never resolves, keeps process running
|
|
576
563
|
}
|
|
577
564
|
catch (error) {
|
|
578
|
-
// Clean up watch status file on error
|
|
579
|
-
try {
|
|
580
|
-
await deleteWatchStatus(projectRoot);
|
|
581
|
-
}
|
|
582
|
-
catch {
|
|
583
|
-
// Ignore errors during cleanup
|
|
584
|
-
}
|
|
585
565
|
console.error(`❌ Failed to start watch mode: ${error.message}`);
|
|
586
|
-
|
|
566
|
+
await gracefulShutdown(1);
|
|
587
567
|
}
|
|
588
568
|
}
|
|
589
569
|
//# sourceMappingURL=watchMode.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"watchMode.js","sourceRoot":"","sources":["../../../../src/cli/commands/context/watchMode.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"watchMode.js","sourceRoot":"","sources":["../../../../src/cli/commands/context/watchMode.ts"],"names":[],"mappings":"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"}
|