Skip to content

Commit 5e37076

Browse files
committed
chore: bump version to 0.2.2
Fix critical workspace:* dependency issue and update changelog - Remove @leanspec/core from dependencies (bundled by tsup) - Add @leanspec/core to devDependencies for build - Mark tiktoken as external to avoid dynamic require issues - Add tiktoken to CLI dependencies - Update CHANGELOG with recent work: - Template engine for AGENTS.md (spec 073) - Intelligent search engine (spec 075) - Programmatic spec management (spec 059, Phase 1-2) - Programmatic spec relationships (spec 076) - Sub-spec template system (spec 078) - Archiving strategy (spec 077) - Update AGENTS.md publishing instructions with workspace:* checks
1 parent de2288b commit 5e37076

File tree

8 files changed

+58
-16
lines changed

8 files changed

+58
-16
lines changed

AGENTS.md

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -225,10 +225,20 @@ When working on the LeanSpec codebase itself, always use the local build (`node
225225
2. **Update CHANGELOG.md**: Add release notes with date and version
226226
3. **Build**: Run `pnpm build` to build all packages
227227
4. **Test**: Run `pnpm test:run` to ensure tests pass (web DB tests may fail - that's OK)
228-
5. **Commit**: `git add -A && git commit -m "chore: bump version to X.Y.Z"`
229-
6. **Publish**: `cd packages/cli && npm publish` (only publish the CLI package)
230-
7. **Tag**: `git tag vX.Y.Z && git push origin main --tags`
231-
8. **Verify**: `npm view lean-spec version` to confirm publication
228+
5. **Validate**: Run `node bin/lean-spec.js validate` and `cd docs-site && npm run build` to ensure everything works
229+
6. **Commit**: `git add -A && git commit -m "chore: bump version to X.Y.Z"`
230+
7. **Publish**: `cd packages/cli && npm publish` (only publish the CLI package)
231+
8. **Tag**: `git tag vX.Y.Z && git push origin main --tags`
232+
9. **Verify**:
233+
- `npm view lean-spec version` to confirm publication
234+
- `npm view lean-spec dependencies` to ensure no `workspace:*` dependencies leaked
235+
- Test installation: `npm install -g lean-spec@latest` in a clean environment
236+
237+
**Critical - Workspace Dependencies:**
238+
- The `@leanspec/core` package MUST NOT be in `packages/cli/package.json` dependencies
239+
- tsup config has `noExternal: ['@leanspec/core']` which bundles the core package
240+
- NEVER add `@leanspec/core` back to dependencies - it will cause `workspace:*` errors
241+
- If you see `workspace:*` in published dependencies, the package is broken and must be republished
232242

233243
**Important**: Do NOT publish `@leanspec/core` or `@leanspec/web` - they are internal packages. The `@leanspec` npm scope doesn't exist, and the core package is bundled into the CLI distribution.
234244

CHANGELOG.md

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,31 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77

88
## [Unreleased]
99

10+
## [0.2.2] - 2025-11-13
11+
12+
### Added
13+
- **Template Engine for AGENTS.md** (spec 073) - Dynamic template system for maintaining AGENTS.md with mechanical transformations
14+
- **Intelligent Search Engine** (spec 075) - Relevance-ranked search with TF-IDF scoring and content-based ranking
15+
- **Programmatic Spec Management** (spec 059, Phase 1-2) - `analyze`, `split`, `compact` commands for automated spec restructuring
16+
- **Programmatic Spec Relationships** (spec 076) - CLI and MCP tools for managing `depends_on` and `related` fields
17+
- **Sub-spec Template System** (spec 078) - Documentation for creating and managing multi-file spec structures
18+
- **Archiving Strategy** (spec 077) - Documentation for proper spec archival workflows
19+
20+
### Changed
21+
- Search commands now use intelligent ranking algorithm prioritizing title/frontmatter matches
22+
- MCP search tool upgraded with relevance scoring and better result filtering
23+
- AGENTS.md validation enforces template system consistency
24+
25+
### Fixed
26+
- **Critical npm publishing bug**: `workspace:*` dependency in published package causing installation failures
27+
- Root cause: pnpm workspace protocol leaked into published tarball
28+
- Fix required: Use pnpm's `--no-workspace` flag or proper bundling configuration
29+
30+
### In Progress
31+
- Spec 059 (Programmatic Management) - Phases 1-2 complete, remaining phases in progress
32+
- Spec 072 (AI Agent First-Use Workflow) - Planning stage
33+
- Spec 074 (Content at Creation) - Specification stage
34+
1035
## [0.2.1] - 2025-11-13
1136

1237
### Added

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "lean-spec-monorepo",
3-
"version": "0.2.1",
3+
"version": "0.2.2",
44
"private": true,
55
"type": "module",
66
"description": "Lightweight spec methodology for AI-powered development (monorepo root)",

packages/cli/package.json

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "lean-spec",
3-
"version": "0.2.1",
3+
"version": "0.2.2",
44
"description": "Lightweight spec methodology for AI-powered development",
55
"type": "module",
66
"bin": {
@@ -41,7 +41,6 @@
4141
],
4242
"dependencies": {
4343
"@inquirer/prompts": "^7.9.0",
44-
"@leanspec/core": "workspace:*",
4544
"@modelcontextprotocol/sdk": "^1.21.0",
4645
"chalk": "^5.3.0",
4746
"cli-spinners": "^3.3.0",
@@ -63,10 +62,12 @@
6362
"ora": "^9.0.0",
6463
"react": "^19.2.0",
6564
"strip-ansi": "^7.1.2",
65+
"tiktoken": "^1.0.22",
6666
"tokenx": "^1.2.1",
6767
"zod": "^3.25.76"
6868
},
6969
"devDependencies": {
70+
"@leanspec/core": "workspace:*",
7071
"@types/handlebars": "^4.1.0",
7172
"@types/js-yaml": "^4.0.9",
7273
"@types/marked-terminal": "^6.1.1",

packages/cli/tsup.config.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,5 +7,8 @@ export default defineConfig({
77
clean: true,
88
sourcemap: true,
99
treeshake: true,
10-
external: ['@leanspec/core'],
10+
// Bundle @leanspec/core into the distribution
11+
noExternal: ['@leanspec/core'],
12+
// Don't bundle tiktoken - it has native dependencies and dynamic requires
13+
external: ['tiktoken'],
1114
});

packages/core/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@leanspec/core",
3-
"version": "0.2.1",
3+
"version": "0.2.2",
44
"description": "Core spec parsing and validation library for LeanSpec",
55
"type": "module",
66
"main": "./dist/index.js",

packages/web/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@leanspec/web",
3-
"version": "0.2.1",
3+
"version": "0.2.2",
44
"description": "LeanSpec Web: Fullstack spec showcase platform",
55
"private": true,
66
"type": "module",

pnpm-lock.yaml

Lines changed: 9 additions & 6 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)