@rengler33/prov 0.1.5 → 0.1.7
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 +72 -9
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +73 -1
- package/dist/cli.js.map +1 -1
- package/dist/commands/agent.test.js +7 -7
- package/dist/commands/agent.test.js.map +1 -1
- package/dist/commands/constraint.js +6 -6
- package/dist/commands/constraint.js.map +1 -1
- package/dist/commands/constraint.test.js +38 -38
- package/dist/commands/constraint.test.js.map +1 -1
- package/dist/commands/create.d.ts +83 -0
- package/dist/commands/create.d.ts.map +1 -0
- package/dist/commands/create.js +550 -0
- package/dist/commands/create.js.map +1 -0
- package/dist/commands/create.test.d.ts +9 -0
- package/dist/commands/create.test.d.ts.map +1 -0
- package/dist/commands/create.test.js +384 -0
- package/dist/commands/create.test.js.map +1 -0
- package/dist/commands/integration.test.js +26 -26
- package/dist/commands/integration.test.js.map +1 -1
- package/dist/commands/mcp.test.js +8 -8
- package/dist/commands/mcp.test.js.map +1 -1
- package/dist/commands/plan.d.ts.map +1 -1
- package/dist/commands/plan.js +118 -8
- package/dist/commands/plan.js.map +1 -1
- package/dist/commands/plan.test.js +43 -43
- package/dist/commands/plan.test.js.map +1 -1
- package/dist/commands/spec.d.ts +65 -1
- package/dist/commands/spec.d.ts.map +1 -1
- package/dist/commands/spec.js +399 -7
- package/dist/commands/spec.js.map +1 -1
- package/dist/commands/spec.test.js +33 -33
- package/dist/commands/spec.test.js.map +1 -1
- package/dist/commands/trace.test.js +17 -17
- package/dist/commands/trace.test.js.map +1 -1
- package/dist/hash.d.ts.map +1 -1
- package/dist/hash.js +3 -1
- package/dist/hash.js.map +1 -1
- package/dist/hash.test.js +9 -6
- package/dist/hash.test.js.map +1 -1
- package/dist/staleness.d.ts +6 -0
- package/dist/staleness.d.ts.map +1 -1
- package/dist/staleness.js +19 -0
- package/dist/staleness.js.map +1 -1
- package/dist/status.d.ts +58 -0
- package/dist/status.d.ts.map +1 -0
- package/dist/status.js +82 -0
- package/dist/status.js.map +1 -0
- package/dist/status.test.d.ts +2 -0
- package/dist/status.test.d.ts.map +1 -0
- package/dist/status.test.js +136 -0
- package/dist/status.test.js.map +1 -0
- package/dist/storage.d.ts +29 -0
- package/dist/storage.d.ts.map +1 -1
- package/dist/storage.js +50 -9
- package/dist/storage.js.map +1 -1
- package/dist/watcher.js +3 -3
- package/dist/watcher.js.map +1 -1
- package/dist/watcher.test.js +54 -54
- package/dist/watcher.test.js.map +1 -1
- package/package.json +3 -3
package/dist/commands/spec.js
CHANGED
|
@@ -12,10 +12,11 @@
|
|
|
12
12
|
*/
|
|
13
13
|
import { existsSync, readFileSync, readdirSync, statSync } from 'node:fs';
|
|
14
14
|
import { join, resolve, relative, extname } from 'node:path';
|
|
15
|
-
import { isInitialized, loadGraph, saveGraph } from '../storage.js';
|
|
15
|
+
import { isInitialized, loadGraph, saveGraph, getSpecsDir } from '../storage.js';
|
|
16
16
|
import { addSpecToGraph } from '../graph.js';
|
|
17
17
|
import { parseYaml, computeHash } from '../hash.js';
|
|
18
18
|
import { output, error, success, warn, resolveFormat } from '../output.js';
|
|
19
|
+
import { writeFileSync } from 'node:fs';
|
|
19
20
|
// ============================================================================
|
|
20
21
|
// Validation Helpers
|
|
21
22
|
// ============================================================================
|
|
@@ -154,10 +155,10 @@ function validateSpec(raw, _filePath) {
|
|
|
154
155
|
// File Discovery
|
|
155
156
|
// ============================================================================
|
|
156
157
|
/**
|
|
157
|
-
* Find all spec files in the
|
|
158
|
+
* Find all spec files in the prov/specs directory.
|
|
158
159
|
*/
|
|
159
160
|
function findSpecFiles(projectRoot) {
|
|
160
|
-
const specDir =
|
|
161
|
+
const specDir = getSpecsDir(projectRoot);
|
|
161
162
|
const files = [];
|
|
162
163
|
if (!existsSync(specDir)) {
|
|
163
164
|
return files;
|
|
@@ -173,8 +174,8 @@ function findSpecFiles(projectRoot) {
|
|
|
173
174
|
else {
|
|
174
175
|
const ext = extname(entry).toLowerCase();
|
|
175
176
|
if (ext === '.yaml' || ext === '.yml') {
|
|
176
|
-
// Only include files with .spec. in the name or in
|
|
177
|
-
if (entry.includes('.spec.') || dir.includes('/
|
|
177
|
+
// Only include files with .spec. in the name or in specs directory
|
|
178
|
+
if (entry.includes('.spec.') || dir.includes('/specs')) {
|
|
178
179
|
files.push(fullPath);
|
|
179
180
|
}
|
|
180
181
|
}
|
|
@@ -293,7 +294,7 @@ export function runSpecAdd(globalOpts, file, _options) {
|
|
|
293
294
|
if (existingNode !== undefined) {
|
|
294
295
|
const existingSpec = existingNode.data;
|
|
295
296
|
if (existingNode.hash === hash) {
|
|
296
|
-
// Same content, no update needed
|
|
297
|
+
// Same content (including status), no update needed
|
|
297
298
|
const result = {
|
|
298
299
|
success: true,
|
|
299
300
|
specId: spec.id,
|
|
@@ -490,7 +491,7 @@ export function runSpecValidate(globalOpts, _options) {
|
|
|
490
491
|
output(result, { format: 'yaml' });
|
|
491
492
|
}
|
|
492
493
|
else {
|
|
493
|
-
warn('No spec files found in
|
|
494
|
+
warn('No spec files found in prov/specs/ directory');
|
|
494
495
|
}
|
|
495
496
|
return;
|
|
496
497
|
}
|
|
@@ -632,4 +633,395 @@ export function runSpecValidate(globalOpts, _options) {
|
|
|
632
633
|
process.exit(1);
|
|
633
634
|
}
|
|
634
635
|
}
|
|
636
|
+
// ============================================================================
|
|
637
|
+
// spec show Command
|
|
638
|
+
// ============================================================================
|
|
639
|
+
/**
|
|
640
|
+
* Resolve a spec ID from a partial or full identifier.
|
|
641
|
+
* Returns matching specs and their files.
|
|
642
|
+
*/
|
|
643
|
+
function resolveSpecId(projectRoot, idOrPartial) {
|
|
644
|
+
const specFiles = findSpecFiles(projectRoot);
|
|
645
|
+
const matches = [];
|
|
646
|
+
for (const filePath of specFiles) {
|
|
647
|
+
const { spec } = loadSpecFile(filePath);
|
|
648
|
+
if (spec === undefined)
|
|
649
|
+
continue;
|
|
650
|
+
// Exact match
|
|
651
|
+
if (spec.id === idOrPartial) {
|
|
652
|
+
return { matches: [{ specId: spec.id, file: filePath, spec }], exact: true };
|
|
653
|
+
}
|
|
654
|
+
// Partial match: check if the name part matches
|
|
655
|
+
// spec:name:v1 -> name
|
|
656
|
+
const namePart = spec.id.replace(/^spec:/, '').replace(/:v\d+$/, '');
|
|
657
|
+
if (namePart === idOrPartial || spec.id.includes(idOrPartial)) {
|
|
658
|
+
matches.push({ specId: spec.id, file: filePath, spec });
|
|
659
|
+
}
|
|
660
|
+
}
|
|
661
|
+
return { matches, exact: false };
|
|
662
|
+
}
|
|
663
|
+
/**
|
|
664
|
+
* Execute the spec show command.
|
|
665
|
+
*
|
|
666
|
+
* @see req:spec-status-update:show-command
|
|
667
|
+
*/
|
|
668
|
+
export function runSpecShow(globalOpts, id, _options) {
|
|
669
|
+
const projectRoot = globalOpts.dir ?? process.cwd();
|
|
670
|
+
const fmt = resolveFormat({ format: globalOpts.format });
|
|
671
|
+
// Check if prov is initialized
|
|
672
|
+
if (!isInitialized(projectRoot)) {
|
|
673
|
+
const result = {
|
|
674
|
+
success: false,
|
|
675
|
+
error: 'prov is not initialized. Run "prov init" first.',
|
|
676
|
+
};
|
|
677
|
+
if (fmt === 'json') {
|
|
678
|
+
output(result, { format: 'json' });
|
|
679
|
+
}
|
|
680
|
+
else if (fmt === 'yaml') {
|
|
681
|
+
output(result, { format: 'yaml' });
|
|
682
|
+
}
|
|
683
|
+
else {
|
|
684
|
+
error(result.error);
|
|
685
|
+
}
|
|
686
|
+
process.exit(1);
|
|
687
|
+
}
|
|
688
|
+
// Resolve spec ID
|
|
689
|
+
const { matches, exact } = resolveSpecId(projectRoot, id);
|
|
690
|
+
if (matches.length === 0) {
|
|
691
|
+
const result = {
|
|
692
|
+
success: false,
|
|
693
|
+
error: `No spec found matching "${id}"`,
|
|
694
|
+
};
|
|
695
|
+
if (fmt === 'json') {
|
|
696
|
+
output(result, { format: 'json' });
|
|
697
|
+
}
|
|
698
|
+
else if (fmt === 'yaml') {
|
|
699
|
+
output(result, { format: 'yaml' });
|
|
700
|
+
}
|
|
701
|
+
else {
|
|
702
|
+
error(result.error);
|
|
703
|
+
}
|
|
704
|
+
process.exit(1);
|
|
705
|
+
}
|
|
706
|
+
if (matches.length > 1 && !exact) {
|
|
707
|
+
const result = {
|
|
708
|
+
success: false,
|
|
709
|
+
error: `Multiple specs match "${id}". Please specify one of:`,
|
|
710
|
+
matches: matches.map((m) => m.specId),
|
|
711
|
+
};
|
|
712
|
+
if (fmt === 'json') {
|
|
713
|
+
output(result, { format: 'json' });
|
|
714
|
+
}
|
|
715
|
+
else if (fmt === 'yaml') {
|
|
716
|
+
output(result, { format: 'yaml' });
|
|
717
|
+
}
|
|
718
|
+
else {
|
|
719
|
+
error(result.error);
|
|
720
|
+
for (const m of matches) {
|
|
721
|
+
process.stdout.write(` - ${m.specId}\n`);
|
|
722
|
+
}
|
|
723
|
+
}
|
|
724
|
+
process.exit(1);
|
|
725
|
+
}
|
|
726
|
+
const match = matches[0];
|
|
727
|
+
const spec = match.spec;
|
|
728
|
+
const hash = computeHash(spec);
|
|
729
|
+
const relPath = relative(projectRoot, match.file);
|
|
730
|
+
const result = {
|
|
731
|
+
success: true,
|
|
732
|
+
spec: {
|
|
733
|
+
id: spec.id,
|
|
734
|
+
version: spec.version,
|
|
735
|
+
title: spec.title,
|
|
736
|
+
status: spec.status,
|
|
737
|
+
intent: spec.intent,
|
|
738
|
+
hash,
|
|
739
|
+
file: relPath,
|
|
740
|
+
requirements: spec.requirements.map((r) => ({
|
|
741
|
+
id: r.id,
|
|
742
|
+
description: r.description,
|
|
743
|
+
acceptance: [...r.acceptance],
|
|
744
|
+
...(r.dependencies !== undefined && r.dependencies.length > 0
|
|
745
|
+
? { dependencies: [...r.dependencies] }
|
|
746
|
+
: {}),
|
|
747
|
+
})),
|
|
748
|
+
},
|
|
749
|
+
};
|
|
750
|
+
if (fmt === 'json') {
|
|
751
|
+
output(result, { format: 'json' });
|
|
752
|
+
}
|
|
753
|
+
else if (fmt === 'yaml') {
|
|
754
|
+
output(result, { format: 'yaml' });
|
|
755
|
+
}
|
|
756
|
+
else {
|
|
757
|
+
// Human-readable output
|
|
758
|
+
process.stdout.write(`\n${spec.title}\n`);
|
|
759
|
+
process.stdout.write(`${'─'.repeat(spec.title.length)}\n\n`);
|
|
760
|
+
process.stdout.write(`ID: ${spec.id}\n`);
|
|
761
|
+
process.stdout.write(`Version: ${spec.version}\n`);
|
|
762
|
+
process.stdout.write(`Status: ${spec.status}\n`);
|
|
763
|
+
process.stdout.write(`Hash: ${hash}\n`);
|
|
764
|
+
process.stdout.write(`File: ${relPath}\n`);
|
|
765
|
+
process.stdout.write(`\nIntent:\n ${spec.intent.replace(/\n/g, '\n ')}\n`);
|
|
766
|
+
process.stdout.write(`\nRequirements (${spec.requirements.length}):\n`);
|
|
767
|
+
for (const req of spec.requirements) {
|
|
768
|
+
process.stdout.write(`\n ${req.id}\n`);
|
|
769
|
+
process.stdout.write(` ${req.description}\n`);
|
|
770
|
+
if (req.acceptance.length > 0) {
|
|
771
|
+
process.stdout.write(` Acceptance criteria:\n`);
|
|
772
|
+
for (const ac of req.acceptance) {
|
|
773
|
+
const text = typeof ac === 'string' ? ac : ac.description;
|
|
774
|
+
process.stdout.write(` - ${text}\n`);
|
|
775
|
+
}
|
|
776
|
+
}
|
|
777
|
+
}
|
|
778
|
+
process.stdout.write('\n');
|
|
779
|
+
}
|
|
780
|
+
}
|
|
781
|
+
// ============================================================================
|
|
782
|
+
// spec update Command
|
|
783
|
+
// ============================================================================
|
|
784
|
+
/**
|
|
785
|
+
* Execute the spec update command.
|
|
786
|
+
*
|
|
787
|
+
* @see req:spec-status-update:update-status
|
|
788
|
+
*/
|
|
789
|
+
export function runSpecUpdate(globalOpts, id, options) {
|
|
790
|
+
const projectRoot = globalOpts.dir ?? process.cwd();
|
|
791
|
+
const fmt = resolveFormat({ format: globalOpts.format });
|
|
792
|
+
// Check if prov is initialized
|
|
793
|
+
if (!isInitialized(projectRoot)) {
|
|
794
|
+
const result = {
|
|
795
|
+
success: false,
|
|
796
|
+
error: 'prov is not initialized. Run "prov init" first.',
|
|
797
|
+
};
|
|
798
|
+
if (fmt === 'json') {
|
|
799
|
+
output(result, { format: 'json' });
|
|
800
|
+
}
|
|
801
|
+
else if (fmt === 'yaml') {
|
|
802
|
+
output(result, { format: 'yaml' });
|
|
803
|
+
}
|
|
804
|
+
else {
|
|
805
|
+
error(result.error);
|
|
806
|
+
}
|
|
807
|
+
process.exit(1);
|
|
808
|
+
}
|
|
809
|
+
// Must have something to update
|
|
810
|
+
if (options.status === undefined) {
|
|
811
|
+
const result = {
|
|
812
|
+
success: false,
|
|
813
|
+
error: 'Nothing to update. Use --status to change the spec status.',
|
|
814
|
+
};
|
|
815
|
+
if (fmt === 'json') {
|
|
816
|
+
output(result, { format: 'json' });
|
|
817
|
+
}
|
|
818
|
+
else if (fmt === 'yaml') {
|
|
819
|
+
output(result, { format: 'yaml' });
|
|
820
|
+
}
|
|
821
|
+
else {
|
|
822
|
+
error(result.error);
|
|
823
|
+
}
|
|
824
|
+
process.exit(1);
|
|
825
|
+
}
|
|
826
|
+
// Validate status value
|
|
827
|
+
if (options.status !== undefined && !isValidStatus(options.status)) {
|
|
828
|
+
const result = {
|
|
829
|
+
success: false,
|
|
830
|
+
error: `Invalid status: ${options.status} (expected draft|active|deprecated|archived)`,
|
|
831
|
+
};
|
|
832
|
+
if (fmt === 'json') {
|
|
833
|
+
output(result, { format: 'json' });
|
|
834
|
+
}
|
|
835
|
+
else if (fmt === 'yaml') {
|
|
836
|
+
output(result, { format: 'yaml' });
|
|
837
|
+
}
|
|
838
|
+
else {
|
|
839
|
+
error(result.error);
|
|
840
|
+
}
|
|
841
|
+
process.exit(1);
|
|
842
|
+
}
|
|
843
|
+
// Resolve spec ID
|
|
844
|
+
const { matches, exact } = resolveSpecId(projectRoot, id);
|
|
845
|
+
if (matches.length === 0) {
|
|
846
|
+
const result = {
|
|
847
|
+
success: false,
|
|
848
|
+
error: `No spec found matching "${id}"`,
|
|
849
|
+
};
|
|
850
|
+
if (fmt === 'json') {
|
|
851
|
+
output(result, { format: 'json' });
|
|
852
|
+
}
|
|
853
|
+
else if (fmt === 'yaml') {
|
|
854
|
+
output(result, { format: 'yaml' });
|
|
855
|
+
}
|
|
856
|
+
else {
|
|
857
|
+
error(result.error);
|
|
858
|
+
}
|
|
859
|
+
process.exit(1);
|
|
860
|
+
}
|
|
861
|
+
if (matches.length > 1 && !exact) {
|
|
862
|
+
const result = {
|
|
863
|
+
success: false,
|
|
864
|
+
error: `Multiple specs match "${id}". Please specify one of:`,
|
|
865
|
+
matches: matches.map((m) => m.specId),
|
|
866
|
+
};
|
|
867
|
+
if (fmt === 'json') {
|
|
868
|
+
output(result, { format: 'json' });
|
|
869
|
+
}
|
|
870
|
+
else if (fmt === 'yaml') {
|
|
871
|
+
output(result, { format: 'yaml' });
|
|
872
|
+
}
|
|
873
|
+
else {
|
|
874
|
+
error(result.error);
|
|
875
|
+
for (const m of matches) {
|
|
876
|
+
process.stdout.write(` - ${m.specId}\n`);
|
|
877
|
+
}
|
|
878
|
+
}
|
|
879
|
+
process.exit(1);
|
|
880
|
+
}
|
|
881
|
+
const match = matches[0];
|
|
882
|
+
const spec = match.spec;
|
|
883
|
+
const oldStatus = spec.status;
|
|
884
|
+
const newStatus = options.status;
|
|
885
|
+
// Check if actually changing
|
|
886
|
+
if (oldStatus === newStatus) {
|
|
887
|
+
const result = {
|
|
888
|
+
success: true,
|
|
889
|
+
specId: spec.id,
|
|
890
|
+
changes: [],
|
|
891
|
+
};
|
|
892
|
+
if (fmt === 'json') {
|
|
893
|
+
output({ ...result, message: 'No changes needed' }, { format: 'json' });
|
|
894
|
+
}
|
|
895
|
+
else if (fmt === 'yaml') {
|
|
896
|
+
output({ ...result, message: 'No changes needed' }, { format: 'yaml' });
|
|
897
|
+
}
|
|
898
|
+
else {
|
|
899
|
+
success(`Spec ${spec.id} already has status "${newStatus}"`);
|
|
900
|
+
}
|
|
901
|
+
return;
|
|
902
|
+
}
|
|
903
|
+
// Warn about unusual transitions
|
|
904
|
+
if (oldStatus === 'active' && newStatus === 'draft' && options.force !== true) {
|
|
905
|
+
warn(`Transitioning from active to draft is uncommon. Use --force to proceed.`);
|
|
906
|
+
if (fmt !== 'json' && fmt !== 'yaml') {
|
|
907
|
+
process.exit(1);
|
|
908
|
+
}
|
|
909
|
+
}
|
|
910
|
+
// Read the original file content
|
|
911
|
+
const fileContent = readFileSync(match.file, 'utf8');
|
|
912
|
+
// Update the status in the YAML file
|
|
913
|
+
// We use a regex to preserve formatting as much as possible
|
|
914
|
+
const statusRegex = /^status:\s*\S+/m;
|
|
915
|
+
let newContent;
|
|
916
|
+
if (statusRegex.test(fileContent)) {
|
|
917
|
+
newContent = fileContent.replace(statusRegex, `status: ${newStatus}`);
|
|
918
|
+
}
|
|
919
|
+
else {
|
|
920
|
+
// Add status after the version line if it doesn't exist
|
|
921
|
+
const versionRegex = /^(version:\s*\S+)/m;
|
|
922
|
+
newContent = fileContent.replace(versionRegex, `$1\nstatus: ${newStatus}`);
|
|
923
|
+
}
|
|
924
|
+
// Write updated file
|
|
925
|
+
writeFileSync(match.file, newContent, 'utf8');
|
|
926
|
+
// Reload and recompute hash
|
|
927
|
+
const { spec: updatedSpec, errors } = loadSpecFile(match.file);
|
|
928
|
+
if (errors.length > 0 || updatedSpec === undefined) {
|
|
929
|
+
// Rollback
|
|
930
|
+
writeFileSync(match.file, fileContent, 'utf8');
|
|
931
|
+
const result = {
|
|
932
|
+
success: false,
|
|
933
|
+
error: `Failed to update spec: ${errors.join(', ')}`,
|
|
934
|
+
};
|
|
935
|
+
if (fmt === 'json') {
|
|
936
|
+
output(result, { format: 'json' });
|
|
937
|
+
}
|
|
938
|
+
else if (fmt === 'yaml') {
|
|
939
|
+
output(result, { format: 'yaml' });
|
|
940
|
+
}
|
|
941
|
+
else {
|
|
942
|
+
error(result.error);
|
|
943
|
+
}
|
|
944
|
+
process.exit(1);
|
|
945
|
+
}
|
|
946
|
+
const newHash = computeHash(updatedSpec);
|
|
947
|
+
// Update the graph
|
|
948
|
+
const loadResult = loadGraph(projectRoot);
|
|
949
|
+
if (!loadResult.success || loadResult.data === undefined) {
|
|
950
|
+
const result = {
|
|
951
|
+
success: false,
|
|
952
|
+
error: loadResult.error ?? 'Failed to load graph',
|
|
953
|
+
};
|
|
954
|
+
if (fmt === 'json') {
|
|
955
|
+
output(result, { format: 'json' });
|
|
956
|
+
}
|
|
957
|
+
else if (fmt === 'yaml') {
|
|
958
|
+
output(result, { format: 'yaml' });
|
|
959
|
+
}
|
|
960
|
+
else {
|
|
961
|
+
error(result.error);
|
|
962
|
+
}
|
|
963
|
+
process.exit(1);
|
|
964
|
+
}
|
|
965
|
+
const graph = loadResult.data;
|
|
966
|
+
// Find dependent plans that will become stale
|
|
967
|
+
const staledPlans = [];
|
|
968
|
+
const edges = graph.getAllEdges();
|
|
969
|
+
for (const edge of edges) {
|
|
970
|
+
if (edge.from === spec.id && edge.type === 'derives_from') {
|
|
971
|
+
// This is a plan that derives from this spec
|
|
972
|
+
staledPlans.push(edge.to);
|
|
973
|
+
}
|
|
974
|
+
}
|
|
975
|
+
// Remove old spec and requirements, add updated
|
|
976
|
+
const existingNode = graph.getNode(spec.id);
|
|
977
|
+
if (existingNode !== undefined) {
|
|
978
|
+
const existingSpec = existingNode.data;
|
|
979
|
+
for (const req of existingSpec.requirements) {
|
|
980
|
+
graph.removeNode(req.id);
|
|
981
|
+
}
|
|
982
|
+
graph.removeNode(spec.id);
|
|
983
|
+
}
|
|
984
|
+
// Re-add with new data
|
|
985
|
+
addSpecToGraph(graph, { ...updatedSpec, hash: newHash });
|
|
986
|
+
// Save graph
|
|
987
|
+
const saveResult = saveGraph(graph, projectRoot);
|
|
988
|
+
if (!saveResult.success) {
|
|
989
|
+
const result = {
|
|
990
|
+
success: false,
|
|
991
|
+
error: saveResult.error ?? 'Failed to save graph',
|
|
992
|
+
};
|
|
993
|
+
if (fmt === 'json') {
|
|
994
|
+
output(result, { format: 'json' });
|
|
995
|
+
}
|
|
996
|
+
else if (fmt === 'yaml') {
|
|
997
|
+
output(result, { format: 'yaml' });
|
|
998
|
+
}
|
|
999
|
+
else {
|
|
1000
|
+
error(result.error);
|
|
1001
|
+
}
|
|
1002
|
+
process.exit(1);
|
|
1003
|
+
}
|
|
1004
|
+
const changes = [
|
|
1005
|
+
{ field: 'status', before: oldStatus, after: newStatus },
|
|
1006
|
+
];
|
|
1007
|
+
const result = {
|
|
1008
|
+
success: true,
|
|
1009
|
+
specId: spec.id,
|
|
1010
|
+
changes,
|
|
1011
|
+
newHash,
|
|
1012
|
+
staledPlans: staledPlans.length > 0 ? staledPlans : undefined,
|
|
1013
|
+
};
|
|
1014
|
+
if (fmt === 'json') {
|
|
1015
|
+
output(result, { format: 'json' });
|
|
1016
|
+
}
|
|
1017
|
+
else if (fmt === 'yaml') {
|
|
1018
|
+
output(result, { format: 'yaml' });
|
|
1019
|
+
}
|
|
1020
|
+
else {
|
|
1021
|
+
success(`Updated ${spec.id}: status ${oldStatus} → ${newStatus}`);
|
|
1022
|
+
if (staledPlans.length > 0) {
|
|
1023
|
+
warn(`${staledPlans.length} plan(s) may now be stale due to hash change`);
|
|
1024
|
+
}
|
|
1025
|
+
}
|
|
1026
|
+
}
|
|
635
1027
|
//# sourceMappingURL=spec.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spec.js","sourceRoot":"","sources":["../../src/commands/spec.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"spec.js","sourceRoot":"","sources":["../../src/commands/spec.ts"],"names":[],"mappings":"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"}
|