@fractary/core-cli 0.4.13 → 0.4.15

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 CHANGED
@@ -7,15 +7,15 @@ Command-line interface for Fractary Core SDK - work tracking, repository managem
7
7
 
8
8
  ## Overview
9
9
 
10
- The Fractary Core CLI provides command-line access to all core operations including work tracking, repository management, specification management, logging, file storage, and documentation. It's designed for automation, scripting, and CI/CD integration.
10
+ The Fractary Core CLI provides command-line access to all core operations including configuration management, work tracking, repository management, specification management, logging, file storage, and documentation. It is designed for automation, scripting, and CI/CD integration.
11
11
 
12
12
  ### Key Features
13
13
 
14
- - **6 Command Modules**: work, repo, spec, logs, file, docs
14
+ - **7 Command Modules**: config, work, repo, spec, logs, file, docs
15
15
  - **Multi-Platform Support**: GitHub, GitLab, Bitbucket, Jira, Linear
16
- - **JSON Output**: Machine-readable output for scripting
17
- - **Configuration Files**: YAML/JSON configuration support
18
- - **Environment Variables**: Flexible configuration options
16
+ - **JSON Output**: Machine-readable output for scripting (`--json` flag on all commands)
17
+ - **YAML Configuration**: Unified configuration at `.fractary/config.yaml`
18
+ - **Environment Management**: Switch between dev, staging, and production environments
19
19
 
20
20
  ## Installation
21
21
 
@@ -29,58 +29,99 @@ npx @fractary/core-cli [command]
29
29
 
30
30
  ## Usage
31
31
 
32
- The CLI provides six main command categories:
32
+ The CLI provides seven main command categories with dash-separated subcommand names:
33
33
 
34
34
  ```bash
35
- fractary-core <command> [subcommand] [options]
35
+ fractary-core <module> <command> [arguments] [options]
36
+ ```
37
+
38
+ ### Configuration
39
+
40
+ Manage Fractary Core configuration and environments:
41
+
42
+ ```bash
43
+ # Initialize configuration
44
+ fractary-core config configure --work-platform github --file-handler local
45
+
46
+ # Validate configuration
47
+ fractary-core config validate
48
+
49
+ # Show configuration (sensitive values redacted)
50
+ fractary-core config show
51
+
52
+ # Switch environment
53
+ fractary-core config env-switch prod
54
+
55
+ # List available environments
56
+ fractary-core config env-list
57
+
58
+ # Show current environment status
59
+ fractary-core config env-show
60
+
61
+ # Clear environment credentials
62
+ fractary-core config env-clear
36
63
  ```
37
64
 
38
65
  ### Work Tracking
39
66
 
40
- Manage work items, issues, and project tasks:
67
+ Manage work items, issues, comments, and labels:
41
68
 
42
69
  ```bash
43
70
  # Fetch an issue
44
- fractary-core work issue fetch 123
71
+ fractary-core work issue-fetch 123
45
72
 
46
73
  # Create a new issue
47
- fractary-core work issue create --title "Add feature" --body "Description"
74
+ fractary-core work issue-create --title "Add feature" --body "Description"
48
75
 
49
76
  # Search issues
50
- fractary-core work issue search --query "bug" --state open
77
+ fractary-core work issue-search --query "bug" --state open
51
78
 
52
- # Add comment
53
- fractary-core work comment create 123 --body "Fixed in PR #456"
79
+ # Add a comment
80
+ fractary-core work issue-comment 123 --body "Fixed in PR #456"
81
+
82
+ # List comments
83
+ fractary-core work issue-comment-list 123
54
84
 
55
85
  # Manage labels
56
- fractary-core work label add 123 --labels "bug,urgent"
86
+ fractary-core work label-add 123 --labels "bug,urgent"
87
+ fractary-core work label-remove 123 --labels "wontfix"
88
+ fractary-core work label-list
89
+
90
+ # Classify work type
91
+ fractary-core work issue-classify 123
57
92
 
58
- # Initialize work tracking
59
- fractary-core work init --platform github
93
+ # Configure work tracking
94
+ fractary-core work configure --platform github
60
95
  ```
61
96
 
62
97
  ### Repository Operations
63
98
 
64
- Manage Git repositories, branches, commits, and pull requests:
99
+ Manage Git repositories, branches, commits, pull requests, tags, and worktrees:
65
100
 
66
101
  ```bash
67
102
  # Create a branch
68
- fractary-core repo branch create feature/new-feature
103
+ fractary-core repo branch-create feature/new-feature --base main --checkout
69
104
 
70
105
  # Commit with conventional commits
71
106
  fractary-core repo commit --message "Add login" --type feat --scope auth
72
107
 
73
108
  # Create pull request
74
- fractary-core repo pr create --title "Add feature" --body "Description"
109
+ fractary-core repo pr-create --title "Add feature" --body "Description" --draft
110
+
111
+ # Merge pull request
112
+ fractary-core repo pr-merge 42 --strategy squash --delete-branch
75
113
 
76
114
  # Manage tags
77
- fractary-core repo tag create v1.0.0 --message "Release 1.0.0"
115
+ fractary-core repo tag-create v1.0.0 --message "Release 1.0.0"
116
+ fractary-core repo tag-push v1.0.0
78
117
 
79
118
  # Work with worktrees
80
- fractary-core repo worktree create feature-branch
119
+ fractary-core repo worktree-create feature-branch --base main
81
120
 
82
- # Check status
121
+ # Check status, push, and pull
83
122
  fractary-core repo status
123
+ fractary-core repo push --set-upstream
124
+ fractary-core repo pull --rebase
84
125
  ```
85
126
 
86
127
  ### Specification Management
@@ -89,104 +130,193 @@ Create and manage technical specifications:
89
130
 
90
131
  ```bash
91
132
  # Create specification
92
- fractary-core spec create "User Authentication" --template feature
133
+ fractary-core spec spec-create-file "User Authentication" --template feature
93
134
 
94
- # Validate specification
95
- fractary-core spec validate SPEC-20241216
135
+ # Get specification
136
+ fractary-core spec spec-get SPEC-00123
96
137
 
97
138
  # List specifications
98
- fractary-core spec list --status validated
139
+ fractary-core spec spec-list --status validated
99
140
 
100
- # Generate refinement questions
101
- fractary-core spec refine SPEC-20241216
141
+ # Validate specification structure
142
+ fractary-core spec spec-validate-check SPEC-00123
143
+
144
+ # Scan for refinement gaps
145
+ fractary-core spec spec-refine-scan SPEC-00123
146
+
147
+ # Archive specs for a completed issue
148
+ fractary-core spec spec-archive 123
149
+
150
+ # List available templates
151
+ fractary-core spec template-list
102
152
  ```
103
153
 
104
154
  ### Log Management
105
155
 
106
- Capture and manage operational logs:
156
+ Capture and manage operational logs with typed schemas:
107
157
 
108
158
  ```bash
159
+ # List available log types
160
+ fractary-core logs types
161
+
162
+ # Get log type definition
163
+ fractary-core logs type-info session
164
+
165
+ # Validate a log file against its type schema
166
+ fractary-core logs validate ./logs/session-2024-01-15.md
167
+
109
168
  # Start session capture
110
169
  fractary-core logs capture 123 --model claude-3.5-sonnet
111
170
 
171
+ # Stop session capture
172
+ fractary-core logs stop
173
+
112
174
  # Write log entry
113
175
  fractary-core logs write --type build --title "Build" --content "Success"
114
176
 
177
+ # Read a log entry
178
+ fractary-core logs read log-abc123
179
+
115
180
  # Search logs
116
181
  fractary-core logs search --query "error" --type session
117
182
 
183
+ # List logs
184
+ fractary-core logs list --type build --limit 20
185
+
118
186
  # Archive old logs
119
- fractary-core logs archive --max-age 90
187
+ fractary-core logs archive --max-age 90 --compress
188
+
189
+ # Delete a log
190
+ fractary-core logs delete log-abc123
120
191
  ```
121
192
 
122
193
  ### File Storage
123
194
 
124
- Manage file storage operations:
195
+ Manage file storage operations with multi-source support:
125
196
 
126
197
  ```bash
127
- # Write file
198
+ # Upload a local file
199
+ fractary-core file upload ./data.json --remote-path "backups/data.json"
200
+
201
+ # Download a file
202
+ fractary-core file download "backups/data.json" --local-path ./data.json
203
+
204
+ # Write content directly
128
205
  fractary-core file write data.json --content '{"key":"value"}'
129
206
 
130
- # Read file
207
+ # Read file content
131
208
  fractary-core file read data.json
132
209
 
133
210
  # List files
134
211
  fractary-core file list --prefix "data/"
135
212
 
136
- # Copy file
213
+ # Check if file exists
214
+ fractary-core file exists data.json
215
+
216
+ # Copy and move files
137
217
  fractary-core file copy source.txt destination.txt
218
+ fractary-core file move old-path.txt new-path.txt
219
+
220
+ # Get a URL for a file
221
+ fractary-core file get-url report.pdf --expires-in 3600
222
+
223
+ # Show file plugin configuration
224
+ fractary-core file show-config
225
+
226
+ # Test storage connection
227
+ fractary-core file test-connection --source my-s3-bucket
138
228
  ```
139
229
 
140
230
  ### Documentation Management
141
231
 
142
- Create and manage documentation:
232
+ Create and manage typed documentation:
143
233
 
144
234
  ```bash
145
235
  # Create document
146
- fractary-core docs create guide-001 \
236
+ fractary-core docs doc-create guide-001 \
147
237
  --title "User Guide" \
148
238
  --content "..." \
149
239
  --format markdown \
240
+ --doc-type api \
150
241
  --tags "guide,user"
151
242
 
243
+ # Get a document
244
+ fractary-core docs doc-get guide-001
245
+
152
246
  # Search documents
153
- fractary-core docs search --text "authentication" --tags "api"
247
+ fractary-core docs doc-search --text "authentication" --tags "api" --doc-type adr
154
248
 
155
249
  # List documents
156
- fractary-core docs list --category "guides"
250
+ fractary-core docs doc-list --category "guides"
251
+
252
+ # Update a document
253
+ fractary-core docs doc-update guide-001 --content "..." --title "Updated Guide"
254
+
255
+ # Delete a document
256
+ fractary-core docs doc-delete guide-001
257
+
258
+ # Archive a document
259
+ fractary-core docs doc-archive guide-001
260
+
261
+ # Scan for gaps and refinement areas
262
+ fractary-core docs doc-refine-scan guide-001
263
+
264
+ # Validate implementation fulfillment
265
+ fractary-core docs doc-validate-fulfillment spec-001
266
+
267
+ # List available document types
268
+ fractary-core docs type-list
269
+
270
+ # Get document type details
271
+ fractary-core docs type-info adr --template
157
272
  ```
158
273
 
159
274
  ## Configuration
160
275
 
161
- The CLI uses configuration files stored in `.fractary/core/config.json`:
162
-
163
- ```json
164
- {
165
- "work": {
166
- "platform": "github",
167
- "repository": {
168
- "owner": "fractary",
169
- "name": "core"
170
- }
171
- },
172
- "repo": {
173
- "platform": "github"
174
- }
175
- }
276
+ The CLI uses a unified YAML configuration file at `.fractary/config.yaml`:
277
+
278
+ ```yaml
279
+ version: "2.0"
280
+
281
+ work:
282
+ active_handler: github
283
+ handlers:
284
+ github:
285
+ owner: fractary
286
+ repo: core
287
+ token: ${GITHUB_TOKEN}
288
+
289
+ repo:
290
+ active_handler: github
291
+ handlers:
292
+ github:
293
+ owner: fractary
294
+ repo: core
295
+ token: ${GITHUB_TOKEN}
296
+ merge:
297
+ strategy: squash # options: squash, merge, rebase
298
+
299
+ file:
300
+ active_handler: local
301
+ handlers:
302
+ local:
303
+ base_path: .fractary/files
176
304
  ```
177
305
 
178
- Initialize configuration for each plugin:
306
+ Initialize configuration:
179
307
 
180
308
  ```bash
181
- fractary-core work init --platform github
309
+ fractary-core config configure --work-platform github --file-handler local
182
310
  ```
183
311
 
312
+ Environment variables are referenced using `${VAR_NAME}` syntax in the config file and resolved at runtime from `.env` files. Manage environments with `config env-*` commands.
313
+
184
314
  ## JSON Output
185
315
 
186
- All commands support `--json` flag for machine-readable output:
316
+ All commands support the `--json` flag for machine-readable output:
187
317
 
188
318
  ```bash
189
- fractary-core work issue fetch 123 --json
319
+ fractary-core work issue-fetch 123 --json
190
320
  ```
191
321
 
192
322
  Output format:
@@ -202,6 +332,18 @@ Output format:
202
332
  }
203
333
  ```
204
334
 
335
+ Error output format:
336
+
337
+ ```json
338
+ {
339
+ "status": "error",
340
+ "error": {
341
+ "code": "NOT_FOUND",
342
+ "message": "Issue not found: 999"
343
+ }
344
+ }
345
+ ```
346
+
205
347
  ## Programmatic Usage
206
348
 
207
349
  Import and use CLI components programmatically:
@@ -223,87 +365,122 @@ program.parse();
223
365
 
224
366
  ## Command Reference
225
367
 
368
+ ### Config Commands
369
+
370
+ | Command | Description |
371
+ |---------|-------------|
372
+ | `config configure` | Initialize or update `.fractary/config.yaml` |
373
+ | `config validate` | Validate `.fractary/config.yaml` |
374
+ | `config show` | Display configuration (sensitive values redacted) |
375
+ | `config env-switch <name>` | Switch to a different environment |
376
+ | `config env-list` | List available environments |
377
+ | `config env-show` | Show current environment status |
378
+ | `config env-clear` | Clear environment credentials |
379
+
226
380
  ### Work Commands
227
381
 
228
- - `work issue fetch <number>` - Fetch issue details
229
- - `work issue create` - Create new issue
230
- - `work issue update <number>` - Update issue
231
- - `work issue close <number>` - Close issue
232
- - `work issue reopen <number>` - Reopen issue
233
- - `work issue assign <number>` - Assign/unassign issue
234
- - `work issue classify <number>` - Classify work type
235
- - `work issue search` - Search issues
236
- - `work comment create <number>` - Add comment
237
- - `work comment list <number>` - List comments
238
- - `work label add <number>` - Add labels
239
- - `work label remove <number>` - Remove labels
240
- - `work label list` - List all labels
241
- - `work milestone create` - Create milestone
242
- - `work milestone list` - List milestones
243
- - `work milestone set <number>` - Set milestone
244
- - `work init` - Initialize work tracking
382
+ | Command | Description |
383
+ |---------|-------------|
384
+ | `work issue-fetch <number>` | Fetch a work item by ID |
385
+ | `work issue-create` | Create a new work item |
386
+ | `work issue-update <number>` | Update a work item |
387
+ | `work issue-close <number>` | Close a work item |
388
+ | `work issue-reopen <number>` | Reopen a closed work item |
389
+ | `work issue-assign <number>` | Assign or unassign a work item |
390
+ | `work issue-classify <number>` | Classify work item type (feature, bug, chore, patch) |
391
+ | `work issue-search` | Search work items |
392
+ | `work issue-comment <number>` | Add a comment to a work item |
393
+ | `work issue-comment-list <number>` | List comments on a work item |
394
+ | `work label-add <number>` | Add labels to a work item |
395
+ | `work label-remove <number>` | Remove labels from a work item |
396
+ | `work label-list` | List all available labels |
397
+ | `work configure` | Configure work tracking settings |
245
398
 
246
399
  ### Repo Commands
247
400
 
248
- - `repo branch create <name>` - Create branch
249
- - `repo branch delete <name>` - Delete branch
250
- - `repo branch list` - List branches
251
- - `repo commit` - Create commit
252
- - `repo pr create` - Create pull request
253
- - `repo pr list` - List pull requests
254
- - `repo pr merge <number>` - Merge pull request
255
- - `repo pr review <number>` - Review pull request
256
- - `repo tag create <name>` - Create tag
257
- - `repo tag push <name>` - Push tag
258
- - `repo tag list` - List tags
259
- - `repo worktree create <branch>` - Create worktree
260
- - `repo worktree list` - List worktrees
261
- - `repo worktree remove <path>` - Remove worktree
262
- - `repo worktree cleanup` - Clean up worktrees
263
- - `repo status` - Show status
264
- - `repo push` - Push to remote
265
- - `repo pull` - Pull from remote
401
+ | Command | Description |
402
+ |---------|-------------|
403
+ | `repo branch-create <name>` | Create a new branch |
404
+ | `repo branch-delete <name>` | Delete a branch |
405
+ | `repo branch-list` | List branches |
406
+ | `repo commit` | Create a commit with conventional commit format |
407
+ | `repo pr-create` | Create a new pull request |
408
+ | `repo pr-list` | List pull requests |
409
+ | `repo pr-merge <number>` | Merge a pull request |
410
+ | `repo pr-review <number>` | Review a pull request |
411
+ | `repo tag-create <name>` | Create a new tag |
412
+ | `repo tag-push <name>` | Push tag(s) to remote |
413
+ | `repo tag-list` | List tags |
414
+ | `repo worktree-create <branch>` | Create a new worktree |
415
+ | `repo worktree-list` | List worktrees |
416
+ | `repo worktree-remove <path>` | Remove a worktree |
417
+ | `repo worktree-cleanup` | Clean up stale worktrees |
418
+ | `repo status` | Show repository status |
419
+ | `repo push` | Push commits to remote |
420
+ | `repo pull` | Pull changes from remote |
266
421
 
267
422
  ### Spec Commands
268
423
 
269
- - `spec create <title>` - Create specification
270
- - `spec get <id>` - Get specification
271
- - `spec list` - List specifications
272
- - `spec update <id>` - Update specification
273
- - `spec validate <id>` - Validate specification
274
- - `spec refine <id>` - Generate refinement questions
275
- - `spec delete <id>` - Delete specification
276
- - `spec templates` - List templates
424
+ | Command | Description |
425
+ |---------|-------------|
426
+ | `spec spec-create-file <title>` | Create a new specification file |
427
+ | `spec spec-get <id>` | Get a specification by ID or path |
428
+ | `spec spec-list` | List specifications |
429
+ | `spec spec-update <id>` | Update a specification |
430
+ | `spec spec-delete <id>` | Delete a specification |
431
+ | `spec spec-validate-check <id>` | Run structural validation checks |
432
+ | `spec spec-refine-scan <id>` | Scan for structural gaps and refinement areas |
433
+ | `spec spec-archive <issue_number>` | Archive specifications for a completed issue |
434
+ | `spec template-list` | List available specification templates |
277
435
 
278
436
  ### Logs Commands
279
437
 
280
- - `logs capture <issue>` - Start session capture
281
- - `logs stop` - Stop capture
282
- - `logs write` - Write log entry
283
- - `logs read <id>` - Read log entry
284
- - `logs search` - Search logs
285
- - `logs list` - List logs
286
- - `logs archive` - Archive logs
287
- - `logs delete <id>` - Delete log
438
+ | Command | Description |
439
+ |---------|-------------|
440
+ | `logs types` | List available log types |
441
+ | `logs type-info <type>` | Get log type definition |
442
+ | `logs validate <file>` | Validate a log file against its type schema |
443
+ | `logs capture <issue_number>` | Start session capture |
444
+ | `logs stop` | Stop session capture |
445
+ | `logs write` | Write a log entry |
446
+ | `logs read <id>` | Read a log entry |
447
+ | `logs search` | Search logs |
448
+ | `logs list` | List logs |
449
+ | `logs archive` | Archive old logs |
450
+ | `logs delete <id>` | Delete a log entry |
288
451
 
289
452
  ### File Commands
290
453
 
291
- - `file write <path>` - Write file
292
- - `file read <path>` - Read file
293
- - `file exists <path>` - Check existence
294
- - `file list` - List files
295
- - `file delete <path>` - Delete file
296
- - `file copy <source> <dest>` - Copy file
297
- - `file move <source> <dest>` - Move file
454
+ | Command | Description |
455
+ |---------|-------------|
456
+ | `file upload <local-path>` | Upload a local file to storage |
457
+ | `file download <remote-path>` | Download a file from storage to local path |
458
+ | `file write <path>` | Write content to a storage path |
459
+ | `file read <path>` | Read content from a storage path |
460
+ | `file list` | List files in storage |
461
+ | `file delete <path>` | Delete a file from storage |
462
+ | `file exists <path>` | Check if a file exists in storage |
463
+ | `file copy <src> <dest>` | Copy a file within storage |
464
+ | `file move <src> <dest>` | Move a file within storage |
465
+ | `file get-url <path>` | Get a URL for a file in storage |
466
+ | `file show-config` | Show file plugin configuration |
467
+ | `file test-connection` | Test storage connection |
298
468
 
299
469
  ### Docs Commands
300
470
 
301
- - `docs create <id>` - Create document
302
- - `docs get <id>` - Get document
303
- - `docs list` - List documents
304
- - `docs update <id>` - Update document
305
- - `docs delete <id>` - Delete document
306
- - `docs search` - Search documents
471
+ | Command | Description |
472
+ |---------|-------------|
473
+ | `docs doc-create <id>` | Create a new document |
474
+ | `docs doc-get <id>` | Get a document |
475
+ | `docs doc-list` | List documents |
476
+ | `docs doc-update <id>` | Update a document |
477
+ | `docs doc-delete <id>` | Delete a document |
478
+ | `docs doc-search` | Search documents |
479
+ | `docs doc-archive <id>` | Archive a document |
480
+ | `docs doc-refine-scan <id>` | Scan for gaps and generate refinement questions |
481
+ | `docs doc-validate-fulfillment <id>` | Validate implementation fulfillment |
482
+ | `docs type-list` | List available document types |
483
+ | `docs type-info <type>` | Get detailed info about a document type |
307
484
 
308
485
  ## Platform Support
309
486
 
@@ -8,4 +8,7 @@ export declare function createDocListCommand(): Command;
8
8
  export declare function createDocUpdateCommand(): Command;
9
9
  export declare function createDocDeleteCommand(): Command;
10
10
  export declare function createDocSearchCommand(): Command;
11
+ export declare function createDocArchiveCommand(): Command;
12
+ export declare function createDocRefineScanCommand(): Command;
13
+ export declare function createDocValidateFulfillmentCommand(): Command;
11
14
  //# sourceMappingURL=doc.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"doc.d.ts","sourceRoot":"","sources":["../../../src/commands/docs/doc.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKpC,wBAAgB,sBAAsB,IAAI,OAAO,CAqEhD;AAED,wBAAgB,mBAAmB,IAAI,OAAO,CA8C7C;AAED,wBAAgB,oBAAoB,IAAI,OAAO,CA8C9C;AAED,wBAAgB,sBAAsB,IAAI,OAAO,CAiDhD;AAED,wBAAgB,sBAAsB,IAAI,OAAO,CAqChD;AAED,wBAAgB,sBAAsB,IAAI,OAAO,CAgDhD"}
1
+ {"version":3,"file":"doc.d.ts","sourceRoot":"","sources":["../../../src/commands/docs/doc.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKpC,wBAAgB,sBAAsB,IAAI,OAAO,CAqEhD;AAED,wBAAgB,mBAAmB,IAAI,OAAO,CA8C7C;AAED,wBAAgB,oBAAoB,IAAI,OAAO,CA8C9C;AAED,wBAAgB,sBAAsB,IAAI,OAAO,CAiDhD;AAED,wBAAgB,sBAAsB,IAAI,OAAO,CAqChD;AAED,wBAAgB,sBAAsB,IAAI,OAAO,CAgDhD;AAED,wBAAgB,uBAAuB,IAAI,OAAO,CA6FjD;AAED,wBAAgB,0BAA0B,IAAI,OAAO,CAkIpD;AAED,wBAAgB,mCAAmC,IAAI,OAAO,CA+G7D"}
@@ -2,6 +2,39 @@
2
2
  /**
3
3
  * Document operations for documentation management
4
4
  */
5
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ var desc = Object.getOwnPropertyDescriptor(m, k);
8
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
9
+ desc = { enumerable: true, get: function() { return m[k]; } };
10
+ }
11
+ Object.defineProperty(o, k2, desc);
12
+ }) : (function(o, m, k, k2) {
13
+ if (k2 === undefined) k2 = k;
14
+ o[k2] = m[k];
15
+ }));
16
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
17
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
18
+ }) : function(o, v) {
19
+ o["default"] = v;
20
+ });
21
+ var __importStar = (this && this.__importStar) || (function () {
22
+ var ownKeys = function(o) {
23
+ ownKeys = Object.getOwnPropertyNames || function (o) {
24
+ var ar = [];
25
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
26
+ return ar;
27
+ };
28
+ return ownKeys(o);
29
+ };
30
+ return function (mod) {
31
+ if (mod && mod.__esModule) return mod;
32
+ var result = {};
33
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
34
+ __setModuleDefault(result, mod);
35
+ return result;
36
+ };
37
+ })();
5
38
  var __importDefault = (this && this.__importDefault) || function (mod) {
6
39
  return (mod && mod.__esModule) ? mod : { "default": mod };
7
40
  };
@@ -12,6 +45,9 @@ exports.createDocListCommand = createDocListCommand;
12
45
  exports.createDocUpdateCommand = createDocUpdateCommand;
13
46
  exports.createDocDeleteCommand = createDocDeleteCommand;
14
47
  exports.createDocSearchCommand = createDocSearchCommand;
48
+ exports.createDocArchiveCommand = createDocArchiveCommand;
49
+ exports.createDocRefineScanCommand = createDocRefineScanCommand;
50
+ exports.createDocValidateFulfillmentCommand = createDocValidateFulfillmentCommand;
15
51
  const commander_1 = require("commander");
16
52
  const chalk_1 = __importDefault(require("chalk"));
17
53
  const factory_1 = require("../../sdk/factory");
@@ -296,4 +332,325 @@ function createDocSearchCommand() {
296
332
  }
297
333
  });
298
334
  }
335
+ function createDocArchiveCommand() {
336
+ return new commander_1.Command('doc-archive')
337
+ .description('Archive a document using its type\'s configured archive source')
338
+ .argument('<id>', 'Document ID')
339
+ .option('--source <name>', 'Override archive source (default: from type config)')
340
+ .option('--json', 'Output as JSON')
341
+ .action(async (id, options) => {
342
+ try {
343
+ const docsManager = await (0, factory_1.getDocsManager)();
344
+ const doc = await docsManager.getDoc(id);
345
+ if (!doc) {
346
+ if (options.json) {
347
+ console.error(JSON.stringify({ status: 'error', error: { code: 'DOC_NOT_FOUND', message: `Document not found: ${id}` } }, null, 2));
348
+ }
349
+ else {
350
+ console.error(chalk_1.default.red(`Document not found: ${id}`));
351
+ }
352
+ process.exit(3);
353
+ }
354
+ // Load type config for archive settings
355
+ const registry = await (0, factory_1.getDocTypeRegistry)();
356
+ const docType = doc.metadata.docType ? registry.getType(doc.metadata.docType) : null;
357
+ const archiveConfig = docType?.archive;
358
+ if (!archiveConfig?.enabled && !options.source) {
359
+ const msg = `Document type '${doc.metadata.docType || 'unknown'}' does not have archival enabled. Use --source to specify an archive source.`;
360
+ if (options.json) {
361
+ console.error(JSON.stringify({ status: 'error', error: { code: 'ARCHIVE_NOT_ENABLED', message: msg } }, null, 2));
362
+ }
363
+ else {
364
+ console.error(chalk_1.default.red(msg));
365
+ }
366
+ process.exit(1);
367
+ }
368
+ const sourceName = options.source || archiveConfig.source;
369
+ const verifyChecksum = archiveConfig?.verifyChecksum ?? true;
370
+ const deleteOriginal = archiveConfig?.deleteOriginal ?? false;
371
+ // Get file manager for the archive source
372
+ const fileManager = await (0, factory_1.getFileManagerForSource)(sourceName);
373
+ // Read source content
374
+ const content = doc.content;
375
+ const archivePath = `archive/${doc.metadata.docType || 'docs'}/${new Date().getFullYear()}/${id}.md`;
376
+ // Compute checksum
377
+ const crypto = await Promise.resolve().then(() => __importStar(require('crypto')));
378
+ const checksum = crypto.createHash('sha256').update(content).digest('hex');
379
+ // Write to archive
380
+ await fileManager.write(archivePath, content);
381
+ // Verify if configured
382
+ if (verifyChecksum) {
383
+ const archived = await fileManager.read(archivePath);
384
+ if (!archived) {
385
+ throw new Error('Archive verification failed: file not readable after write');
386
+ }
387
+ const archivedChecksum = crypto.createHash('sha256').update(archived).digest('hex');
388
+ if (checksum !== archivedChecksum) {
389
+ throw new Error(`Archive checksum mismatch: expected ${checksum}, got ${archivedChecksum}`);
390
+ }
391
+ }
392
+ // Delete original if configured
393
+ if (deleteOriginal) {
394
+ await docsManager.deleteDoc(id);
395
+ }
396
+ const result = {
397
+ success: true,
398
+ sourcePath: doc.path || id,
399
+ archivePath,
400
+ checksum,
401
+ originalDeleted: deleteOriginal,
402
+ };
403
+ if (options.json) {
404
+ console.log(JSON.stringify({ status: 'success', data: result }, null, 2));
405
+ }
406
+ else {
407
+ console.log(chalk_1.default.green(`✓ Archived document: ${id}`));
408
+ console.log(chalk_1.default.gray(` Archive path: ${archivePath}`));
409
+ console.log(chalk_1.default.gray(` Checksum: ${checksum}`));
410
+ console.log(chalk_1.default.gray(` Source: ${sourceName}`));
411
+ if (deleteOriginal) {
412
+ console.log(chalk_1.default.gray(` Original deleted: yes`));
413
+ }
414
+ }
415
+ }
416
+ catch (error) {
417
+ (0, errors_1.handleError)(error, options);
418
+ }
419
+ });
420
+ }
421
+ function createDocRefineScanCommand() {
422
+ return new commander_1.Command('doc-refine-scan')
423
+ .description('Scan a document for gaps and generate refinement questions')
424
+ .argument('<id>', 'Document ID')
425
+ .option('--json', 'Output as JSON')
426
+ .action(async (id, options) => {
427
+ try {
428
+ const docsManager = await (0, factory_1.getDocsManager)();
429
+ const doc = await docsManager.getDoc(id);
430
+ if (!doc) {
431
+ if (options.json) {
432
+ console.error(JSON.stringify({ status: 'error', error: { code: 'DOC_NOT_FOUND', message: `Document not found: ${id}` } }, null, 2));
433
+ }
434
+ else {
435
+ console.error(chalk_1.default.red(`Document not found: ${id}`));
436
+ }
437
+ process.exit(3);
438
+ }
439
+ // Load type for structure info
440
+ const registry = await (0, factory_1.getDocTypeRegistry)();
441
+ const docType = doc.metadata.docType ? registry.getType(doc.metadata.docType) : null;
442
+ const questions = [];
443
+ const categories = new Set();
444
+ let qIndex = 0;
445
+ // Check for missing required sections
446
+ if (docType?.structure?.requiredSections) {
447
+ for (const section of docType.structure.requiredSections) {
448
+ const sectionRegex = new RegExp(`^##\\s+${section.replace(/[.*+?^${}()|[\]\\]/g, '\\$&')}`, 'm');
449
+ if (!sectionRegex.test(doc.content)) {
450
+ qIndex++;
451
+ categories.add('missing_section');
452
+ questions.push({
453
+ id: `Q${qIndex}`,
454
+ question: `Required section "${section}" is missing. What content should it contain?`,
455
+ category: 'missing_section',
456
+ priority: 'high',
457
+ section,
458
+ });
459
+ }
460
+ }
461
+ }
462
+ // Check for placeholder/vague content
463
+ const vagueMarkers = ['TBD', 'TODO', 'FIXME', 'as needed', 'to be determined', '<!-- '];
464
+ const lines = doc.content.split('\n');
465
+ let currentSection = '';
466
+ for (const line of lines) {
467
+ if (line.startsWith('## ')) {
468
+ currentSection = line.replace('## ', '').trim();
469
+ }
470
+ for (const marker of vagueMarkers) {
471
+ if (line.includes(marker)) {
472
+ qIndex++;
473
+ categories.add('vague_content');
474
+ questions.push({
475
+ id: `Q${qIndex}`,
476
+ question: `Section "${currentSection}" contains placeholder text ("${marker}"). What specific content should replace it?`,
477
+ category: 'vague_content',
478
+ priority: 'medium',
479
+ section: currentSection,
480
+ });
481
+ break;
482
+ }
483
+ }
484
+ }
485
+ // Check for empty sections
486
+ const sectionRegex = /^## (.+)$/gm;
487
+ let match;
488
+ const sectionPositions = [];
489
+ while ((match = sectionRegex.exec(doc.content)) !== null) {
490
+ sectionPositions.push({ name: match[1].trim(), start: match.index + match[0].length });
491
+ }
492
+ for (let i = 0; i < sectionPositions.length; i++) {
493
+ const start = sectionPositions[i].start;
494
+ const end = i + 1 < sectionPositions.length ? sectionPositions[i + 1].start - sectionPositions[i + 1].name.length - 3 : doc.content.length;
495
+ const sectionContent = doc.content.slice(start, end).trim();
496
+ if (sectionContent.length < 10) {
497
+ qIndex++;
498
+ categories.add('empty_section');
499
+ questions.push({
500
+ id: `Q${qIndex}`,
501
+ question: `Section "${sectionPositions[i].name}" appears to be empty or very brief. What details should be added?`,
502
+ category: 'empty_section',
503
+ priority: 'high',
504
+ section: sectionPositions[i].name,
505
+ });
506
+ }
507
+ }
508
+ // Check for unchecked acceptance criteria
509
+ const uncheckedCount = (doc.content.match(/- \[ \]/g) || []).length;
510
+ const checkedCount = (doc.content.match(/- \[x\]/gi) || []).length;
511
+ if (uncheckedCount > 0 && checkedCount === 0) {
512
+ qIndex++;
513
+ categories.add('acceptance_criteria');
514
+ questions.push({
515
+ id: `Q${qIndex}`,
516
+ question: `All ${uncheckedCount} acceptance criteria are unchecked. Have any been completed?`,
517
+ category: 'acceptance_criteria',
518
+ priority: 'low',
519
+ });
520
+ }
521
+ const result = {
522
+ questionsGenerated: questions.length,
523
+ categories: Array.from(categories),
524
+ questions,
525
+ };
526
+ if (options.json) {
527
+ console.log(JSON.stringify({ status: 'success', data: result }, null, 2));
528
+ }
529
+ else {
530
+ if (questions.length === 0) {
531
+ console.log(chalk_1.default.green('No gaps found - document looks complete'));
532
+ }
533
+ else {
534
+ console.log(chalk_1.default.yellow(`Found ${questions.length} potential gap(s):\n`));
535
+ for (const q of questions) {
536
+ const priorityColor = q.priority === 'high' ? chalk_1.default.red : q.priority === 'medium' ? chalk_1.default.yellow : chalk_1.default.gray;
537
+ console.log(` ${q.id} [${priorityColor(q.priority)}] ${q.question}`);
538
+ }
539
+ }
540
+ }
541
+ }
542
+ catch (error) {
543
+ (0, errors_1.handleError)(error, options);
544
+ }
545
+ });
546
+ }
547
+ function createDocValidateFulfillmentCommand() {
548
+ return new commander_1.Command('doc-validate-fulfillment')
549
+ .description('Validate whether implementation fulfills the document\'s requirements')
550
+ .argument('<id>', 'Document ID')
551
+ .option('--json', 'Output as JSON')
552
+ .action(async (id, options) => {
553
+ try {
554
+ const docsManager = await (0, factory_1.getDocsManager)();
555
+ const doc = await docsManager.getDoc(id);
556
+ if (!doc) {
557
+ if (options.json) {
558
+ console.error(JSON.stringify({ status: 'error', error: { code: 'DOC_NOT_FOUND', message: `Document not found: ${id}` } }, null, 2));
559
+ }
560
+ else {
561
+ console.error(chalk_1.default.red(`Document not found: ${id}`));
562
+ }
563
+ process.exit(3);
564
+ }
565
+ // Load type for fulfillment config
566
+ const registry = await (0, factory_1.getDocTypeRegistry)();
567
+ const docType = doc.metadata.docType ? registry.getType(doc.metadata.docType) : null;
568
+ const fulfillmentConfig = docType?.fulfillment;
569
+ if (!fulfillmentConfig?.enabled) {
570
+ const msg = `Document type '${doc.metadata.docType || 'unknown'}' does not have fulfillment validation enabled.`;
571
+ if (options.json) {
572
+ console.error(JSON.stringify({ status: 'error', error: { code: 'FULFILLMENT_NOT_ENABLED', message: msg } }, null, 2));
573
+ }
574
+ else {
575
+ console.error(chalk_1.default.red(msg));
576
+ }
577
+ process.exit(1);
578
+ }
579
+ const checks = {};
580
+ let totalChecks = 0;
581
+ let passedChecks = 0;
582
+ // Check acceptance criteria
583
+ if (fulfillmentConfig.checkAcceptanceCriteria) {
584
+ totalChecks++;
585
+ const unchecked = (doc.content.match(/- \[ \]/g) || []).length;
586
+ const checked = (doc.content.match(/- \[x\]/gi) || []).length;
587
+ const total = unchecked + checked;
588
+ if (total === 0) {
589
+ checks['acceptance_criteria'] = { status: 'warn', detail: 'No acceptance criteria checkboxes found' };
590
+ }
591
+ else if (unchecked === 0) {
592
+ checks['acceptance_criteria'] = { status: 'pass', detail: `All ${total} criteria met` };
593
+ passedChecks++;
594
+ }
595
+ else {
596
+ checks['acceptance_criteria'] = { status: 'fail', detail: `${checked}/${total} criteria met (${unchecked} remaining)` };
597
+ }
598
+ }
599
+ // Check files modified (presence of Files to Modify section with content)
600
+ if (fulfillmentConfig.checkFilesModified) {
601
+ totalChecks++;
602
+ const filesSection = /## Files to Modify\s*\n([\s\S]*?)(?=\n## |\n$)/i.exec(doc.content);
603
+ if (filesSection && filesSection[1].trim().length > 10) {
604
+ checks['files_modified'] = { status: 'pass', detail: 'Files to Modify section has content' };
605
+ passedChecks++;
606
+ }
607
+ else {
608
+ checks['files_modified'] = { status: 'warn', detail: 'Files to Modify section is missing or empty' };
609
+ }
610
+ }
611
+ // Check tests added (presence of testing section with content)
612
+ if (fulfillmentConfig.checkTestsAdded) {
613
+ totalChecks++;
614
+ const testSection = /## (?:Testing|Testing Strategy|Tests)\s*\n([\s\S]*?)(?=\n## |\n$)/i.exec(doc.content);
615
+ if (testSection && testSection[1].trim().length > 10) {
616
+ checks['tests_added'] = { status: 'pass', detail: 'Testing section has content' };
617
+ passedChecks++;
618
+ }
619
+ else {
620
+ checks['tests_added'] = { status: 'warn', detail: 'Testing section is missing or empty' };
621
+ }
622
+ }
623
+ // Check docs updated
624
+ if (fulfillmentConfig.checkDocsUpdated) {
625
+ totalChecks++;
626
+ const updatedAt = doc.metadata.updatedAt;
627
+ if (updatedAt) {
628
+ checks['docs_updated'] = { status: 'pass', detail: `Document last updated: ${updatedAt}` };
629
+ passedChecks++;
630
+ }
631
+ else {
632
+ checks['docs_updated'] = { status: 'warn', detail: 'No updatedAt timestamp found' };
633
+ }
634
+ }
635
+ const score = totalChecks > 0 ? Math.round((passedChecks / totalChecks) * 100) : 0;
636
+ const status = score >= 100 ? 'pass' : score >= 50 ? 'partial' : 'fail';
637
+ const result = { status, score, checks };
638
+ if (options.json) {
639
+ console.log(JSON.stringify({ status: 'success', data: result }, null, 2));
640
+ }
641
+ else {
642
+ const statusColor = status === 'pass' ? chalk_1.default.green : status === 'partial' ? chalk_1.default.yellow : chalk_1.default.red;
643
+ console.log(statusColor(`Fulfillment: ${status.toUpperCase()} (${score}%)\n`));
644
+ for (const [name, check] of Object.entries(checks)) {
645
+ const checkColor = check.status === 'pass' ? chalk_1.default.green : check.status === 'warn' ? chalk_1.default.yellow : chalk_1.default.red;
646
+ const icon = check.status === 'pass' ? '✓' : check.status === 'warn' ? '!' : '✗';
647
+ console.log(` ${checkColor(icon)} ${name}: ${check.detail}`);
648
+ }
649
+ }
650
+ }
651
+ catch (error) {
652
+ (0, errors_1.handleError)(error, options);
653
+ }
654
+ });
655
+ }
299
656
  //# sourceMappingURL=doc.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"doc.js","sourceRoot":"","sources":["../../../src/commands/docs/doc.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;AAOH,wDAqEC;AAED,kDA8CC;AAED,oDA8CC;AAED,wDAiDC;AAED,wDAqCC;AAED,wDAgDC;AAtTD,yCAAoC;AACpC,kDAA0B;AAC1B,+CAAuE;AACvE,+CAAiD;AAEjD,SAAgB,sBAAsB;IACpC,OAAO,IAAI,mBAAO,CAAC,YAAY,CAAC;SAC7B,WAAW,CAAC,uBAAuB,CAAC;SACpC,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;SAC/B,cAAc,CAAC,iBAAiB,EAAE,gBAAgB,CAAC;SACnD,cAAc,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;SACtD,MAAM,CAAC,mBAAmB,EAAE,6CAA6C,EAAE,UAAU,CAAC;SACtF,MAAM,CAAC,mBAAmB,EAAE,8CAA8C,CAAC;SAC3E,MAAM,CAAC,eAAe,EAAE,sBAAsB,CAAC;SAC/C,MAAM,CAAC,uBAAuB,EAAE,mBAAmB,CAAC;SACpD,MAAM,CAAC,sBAAsB,EAAE,sBAAsB,CAAC;SACtD,MAAM,CAAC,mBAAmB,EAAE,iBAAiB,CAAC;SAC9C,MAAM,CAAC,QAAQ,EAAE,gBAAgB,CAAC;SAClC,MAAM,CAAC,KAAK,EAAE,EAAU,EAAE,OAAO,EAAE,EAAE;QACpC,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,MAAM,IAAA,wBAAc,GAAE,CAAC;YAE3C,MAAM,QAAQ,GAAQ;gBACpB,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,WAAW,EAAE,OAAO,CAAC,WAAW;gBAChC,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;aAC5D,CAAC;YAEF,4BAA4B;YAC5B,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;gBACpB,QAAQ,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;gBAEnC,sCAAsC;gBACtC,MAAM,QAAQ,GAAG,MAAM,IAAA,4BAAkB,GAAE,CAAC;gBAC5C,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;gBAClD,IAAI,OAAO,EAAE,CAAC;oBACZ,wCAAwC;oBACxC,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC;wBAC/C,QAAQ,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC;oBAC3C,CAAC;oBACD,6BAA6B;oBAC7B,IAAI,OAAO,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;wBACjC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC;4BACxE,IAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE,CAAC;gCAChC,QAAQ,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;4BACxB,CAAC;wBACH,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;YAED,qCAAqC;YACrC,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBACnB,QAAQ,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;YACnC,CAAC;YAED,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,SAAS,CAAC,EAAE,EAAE,OAAO,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;YAEvF,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;gBACjB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YACzE,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,uBAAuB,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;gBAC1D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,YAAY,GAAG,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBAC1D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;gBACnD,IAAI,GAAG,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;oBACzB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,WAAW,GAAG,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;gBAC7D,CAAC;gBACD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,WAAW,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;YACjD,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAA,oBAAW,EAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC;AAED,SAAgB,mBAAmB;IACjC,OAAO,IAAI,mBAAO,CAAC,SAAS,CAAC;SAC1B,WAAW,CAAC,gBAAgB,CAAC;SAC7B,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;SAC/B,MAAM,CAAC,QAAQ,EAAE,gBAAgB,CAAC;SAClC,MAAM,CAAC,KAAK,EAAE,EAAU,EAAE,OAAO,EAAE,EAAE;QACpC,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,MAAM,IAAA,wBAAc,GAAE,CAAC;YAC3C,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAEzC,IAAI,CAAC,GAAG,EAAE,CAAC;gBACT,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;oBACjB,OAAO,CAAC,KAAK,CACX,IAAI,CAAC,SAAS,CACZ;wBACE,MAAM,EAAE,OAAO;wBACf,KAAK,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,uBAAuB,EAAE,EAAE,EAAE;qBACvE,EACD,IAAI,EACJ,CAAC,CACF,CACF,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,uBAAuB,EAAE,EAAE,CAAC,CAAC,CAAC;gBACxD,CAAC;gBACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YAED,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;gBACjB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YACzE,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC5C,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,OAAO,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;gBACzC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,WAAW,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;gBACjD,IAAI,GAAG,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;oBAC1B,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;gBAChE,CAAC;gBACD,IAAI,GAAG,CAAC,QAAQ,CAAC,IAAI,IAAI,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACtD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;gBACnE,CAAC;gBACD,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC;YAClC,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAA,oBAAW,EAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC;AAED,SAAgB,oBAAoB;IAClC,OAAO,IAAI,mBAAO,CAAC,UAAU,CAAC;SAC3B,WAAW,CAAC,gBAAgB,CAAC;SAC7B,MAAM,CAAC,uBAAuB,EAAE,oBAAoB,CAAC;SACrD,MAAM,CAAC,eAAe,EAAE,kCAAkC,CAAC;SAC3D,MAAM,CAAC,mBAAmB,EAAE,kBAAkB,CAAC;SAC/C,MAAM,CAAC,QAAQ,EAAE,gBAAgB,CAAC;SAClC,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;QACxB,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,MAAM,IAAA,wBAAc,GAAE,CAAC;YAC3C,IAAI,IAAI,GAAG,MAAM,WAAW,CAAC,QAAQ,EAAE,CAAC;YAExC,gBAAgB;YAChB,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;gBACrB,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;YAC/E,CAAC;YAED,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;gBACjB,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;gBACxE,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAQ,EAAE,EAAE,CAC9B,UAAU,CAAC,IAAI,CAAC,CAAC,GAAW,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CACnE,CAAC;YACJ,CAAC;YAED,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBACnB,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;YAClE,CAAC;YAED,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;gBACjB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YAC1E,CAAC;iBAAM,CAAC;gBACN,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACtB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC,CAAC;gBAClD,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,OAAO,CAAC,CAAC,GAAQ,EAAE,EAAE;wBACxB,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,QAAQ,CAAC,KAAK,KAAK,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;wBAChE,IAAI,GAAG,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;4BAC1B,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,eAAe,GAAG,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;wBAClE,CAAC;oBACH,CAAC,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAA,oBAAW,EAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC;AAED,SAAgB,sBAAsB;IACpC,OAAO,IAAI,mBAAO,CAAC,YAAY,CAAC;SAC7B,WAAW,CAAC,mBAAmB,CAAC;SAChC,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;SAC/B,cAAc,CAAC,kBAAkB,EAAE,aAAa,CAAC;SACjD,MAAM,CAAC,iBAAiB,EAAE,WAAW,CAAC;SACtC,MAAM,CAAC,eAAe,EAAE,4BAA4B,CAAC;SACrD,MAAM,CAAC,uBAAuB,EAAE,cAAc,CAAC;SAC/C,MAAM,CAAC,sBAAsB,EAAE,iBAAiB,CAAC;SACjD,MAAM,CAAC,QAAQ,EAAE,gBAAgB,CAAC;SAClC,MAAM,CAAC,KAAK,EAAE,EAAU,EAAE,OAAO,EAAE,EAAE;QACpC,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,MAAM,IAAA,wBAAc,GAAE,CAAC;YAE3C,MAAM,QAAQ,GAAQ,EAAE,CAAC;YACzB,IAAI,OAAO,CAAC,KAAK;gBAAE,QAAQ,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;YAClD,IAAI,OAAO,CAAC,WAAW;gBAAE,QAAQ,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;YACpE,IAAI,OAAO,CAAC,QAAQ;gBAAE,QAAQ,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;YAC3D,IAAI,OAAO,CAAC,IAAI;gBAAE,QAAQ,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YAEvF,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,SAAS,CAAC,EAAE,EAAE,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YAEvE,IAAI,CAAC,GAAG,EAAE,CAAC;gBACT,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;oBACjB,OAAO,CAAC,KAAK,CACX,IAAI,CAAC,SAAS,CACZ;wBACE,MAAM,EAAE,OAAO;wBACf,KAAK,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,uBAAuB,EAAE,EAAE,EAAE;qBACvE,EACD,IAAI,EACJ,CAAC,CACF,CACF,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,uBAAuB,EAAE,EAAE,CAAC,CAAC,CAAC;gBACxD,CAAC;gBACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YAED,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;gBACjB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YACzE,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,uBAAuB,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;YAC5D,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAA,oBAAW,EAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC;AAED,SAAgB,sBAAsB;IACpC,OAAO,IAAI,mBAAO,CAAC,YAAY,CAAC;SAC7B,WAAW,CAAC,mBAAmB,CAAC;SAChC,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;SAC/B,MAAM,CAAC,QAAQ,EAAE,gBAAgB,CAAC;SAClC,MAAM,CAAC,KAAK,EAAE,EAAU,EAAE,OAAO,EAAE,EAAE;QACpC,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,MAAM,IAAA,wBAAc,GAAE,CAAC;YAC3C,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;YAEhD,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;oBACjB,OAAO,CAAC,KAAK,CACX,IAAI,CAAC,SAAS,CACZ;wBACE,MAAM,EAAE,OAAO;wBACf,KAAK,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,uBAAuB,EAAE,EAAE,EAAE;qBACvE,EACD,IAAI,EACJ,CAAC,CACF,CACF,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,uBAAuB,EAAE,EAAE,CAAC,CAAC,CAAC;gBACxD,CAAC;gBACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YAED,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;gBACjB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YAC5E,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,uBAAuB,EAAE,EAAE,CAAC,CAAC,CAAC;YACxD,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAA,oBAAW,EAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC;AAED,SAAgB,sBAAsB;IACpC,OAAO,IAAI,mBAAO,CAAC,YAAY,CAAC;SAC7B,WAAW,CAAC,kBAAkB,CAAC;SAC/B,MAAM,CAAC,gBAAgB,EAAE,kCAAkC,CAAC;SAC5D,MAAM,CAAC,eAAe,EAAE,kCAAkC,CAAC;SAC3D,MAAM,CAAC,mBAAmB,EAAE,kBAAkB,CAAC;SAC/C,MAAM,CAAC,uBAAuB,EAAE,oBAAoB,CAAC;SACrD,MAAM,CAAC,mBAAmB,EAAE,yBAAyB,CAAC;SACtD,MAAM,CAAC,aAAa,EAAE,eAAe,EAAE,IAAI,CAAC;SAC5C,MAAM,CAAC,QAAQ,EAAE,gBAAgB,CAAC;SAClC,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;QACxB,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,MAAM,IAAA,wBAAc,GAAE,CAAC;YAE3C,MAAM,KAAK,GAAQ;gBACjB,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBAC3D,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS;aAC/D,CAAC;YAEF,IAAI,IAAI,GAAG,MAAM,WAAW,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;YAE/C,yCAAyC;YACzC,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;gBACrB,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;YAC/E,CAAC;YAED,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;gBACjB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YAC1E,CAAC;iBAAM,CAAC;gBACN,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACtB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC,CAAC;gBAClD,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,OAAO,CAAC,CAAC,GAAQ,EAAE,EAAE;wBACxB,MAAM,SAAS,GAAG,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,QAAQ,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC3E,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,QAAQ,CAAC,KAAK,GAAG,SAAS,KAAK,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;wBAC5E,IAAI,GAAG,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;4BAC7B,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;wBAC3D,CAAC;oBACH,CAAC,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAA,oBAAW,EAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC"}
1
+ {"version":3,"file":"doc.js","sourceRoot":"","sources":["../../../src/commands/docs/doc.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/docs/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,OAAO,CAgB3C"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/docs/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,OAAO,CAqB3C"}
@@ -23,6 +23,10 @@ function createDocsCommand() {
23
23
  docs.addCommand((0, doc_1.createDocUpdateCommand)());
24
24
  docs.addCommand((0, doc_1.createDocDeleteCommand)());
25
25
  docs.addCommand((0, doc_1.createDocSearchCommand)());
26
+ // Archive, refinement, and fulfillment operations
27
+ docs.addCommand((0, doc_1.createDocArchiveCommand)());
28
+ docs.addCommand((0, doc_1.createDocRefineScanCommand)());
29
+ docs.addCommand((0, doc_1.createDocValidateFulfillmentCommand)());
26
30
  // Type operations (flat with dashes)
27
31
  docs.addCommand((0, type_1.createTypeListCommand)());
28
32
  docs.addCommand((0, type_1.createTypeInfoCommand)());
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/docs/index.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AASH,8CAgBC;AAvBD,yCAAoC;AACpC,+BAAkK;AAClK,iCAAsE;AAEtE;;GAEG;AACH,SAAgB,iBAAiB;IAC/B,MAAM,IAAI,GAAG,IAAI,mBAAO,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,0BAA0B,CAAC,CAAC;IAEzE,yCAAyC;IACzC,IAAI,CAAC,UAAU,CAAC,IAAA,4BAAsB,GAAE,CAAC,CAAC;IAC1C,IAAI,CAAC,UAAU,CAAC,IAAA,yBAAmB,GAAE,CAAC,CAAC;IACvC,IAAI,CAAC,UAAU,CAAC,IAAA,0BAAoB,GAAE,CAAC,CAAC;IACxC,IAAI,CAAC,UAAU,CAAC,IAAA,4BAAsB,GAAE,CAAC,CAAC;IAC1C,IAAI,CAAC,UAAU,CAAC,IAAA,4BAAsB,GAAE,CAAC,CAAC;IAC1C,IAAI,CAAC,UAAU,CAAC,IAAA,4BAAsB,GAAE,CAAC,CAAC;IAE1C,qCAAqC;IACrC,IAAI,CAAC,UAAU,CAAC,IAAA,4BAAqB,GAAE,CAAC,CAAC;IACzC,IAAI,CAAC,UAAU,CAAC,IAAA,4BAAqB,GAAE,CAAC,CAAC;IAEzC,OAAO,IAAI,CAAC;AACd,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/docs/index.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AASH,8CAqBC;AA5BD,yCAAoC;AACpC,+BAA4P;AAC5P,iCAAsE;AAEtE;;GAEG;AACH,SAAgB,iBAAiB;IAC/B,MAAM,IAAI,GAAG,IAAI,mBAAO,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,0BAA0B,CAAC,CAAC;IAEzE,yCAAyC;IACzC,IAAI,CAAC,UAAU,CAAC,IAAA,4BAAsB,GAAE,CAAC,CAAC;IAC1C,IAAI,CAAC,UAAU,CAAC,IAAA,yBAAmB,GAAE,CAAC,CAAC;IACvC,IAAI,CAAC,UAAU,CAAC,IAAA,0BAAoB,GAAE,CAAC,CAAC;IACxC,IAAI,CAAC,UAAU,CAAC,IAAA,4BAAsB,GAAE,CAAC,CAAC;IAC1C,IAAI,CAAC,UAAU,CAAC,IAAA,4BAAsB,GAAE,CAAC,CAAC;IAC1C,IAAI,CAAC,UAAU,CAAC,IAAA,4BAAsB,GAAE,CAAC,CAAC;IAE1C,kDAAkD;IAClD,IAAI,CAAC,UAAU,CAAC,IAAA,6BAAuB,GAAE,CAAC,CAAC;IAC3C,IAAI,CAAC,UAAU,CAAC,IAAA,gCAA0B,GAAE,CAAC,CAAC;IAC9C,IAAI,CAAC,UAAU,CAAC,IAAA,yCAAmC,GAAE,CAAC,CAAC;IAEvD,qCAAqC;IACrC,IAAI,CAAC,UAAU,CAAC,IAAA,4BAAqB,GAAE,CAAC,CAAC;IACzC,IAAI,CAAC,UAAU,CAAC,IAAA,4BAAqB,GAAE,CAAC,CAAC;IAEzC,OAAO,IAAI,CAAC;AACd,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fractary/core-cli",
3
- "version": "0.4.13",
3
+ "version": "0.4.15",
4
4
  "description": "CLI for Fractary Core SDK - work tracking, repository management, specifications, logging, file storage, and documentation",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -44,7 +44,7 @@
44
44
  "author": "Fractary Team",
45
45
  "license": "MIT",
46
46
  "dependencies": {
47
- "@fractary/core": "^0.7.8",
47
+ "@fractary/core": "^0.7.9",
48
48
  "chalk": "^5.3.0",
49
49
  "cli-table3": "^0.6.5",
50
50
  "commander": "^11.1.0",