@clawplays/ospec-cli 0.3.7 → 0.3.9

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.
Files changed (166) hide show
  1. package/README.md +9 -1
  2. package/SKILL.md +1 -1
  3. package/assets/git-hooks/post-merge +4 -2
  4. package/assets/git-hooks/pre-commit +4 -2
  5. package/dist/advanced/BatchOperations.d.ts +1 -2
  6. package/dist/advanced/BatchOperations.js +1 -2
  7. package/dist/advanced/CachingLayer.d.ts +1 -2
  8. package/dist/advanced/CachingLayer.js +1 -2
  9. package/dist/advanced/FeatureUpdater.d.ts +1 -2
  10. package/dist/advanced/FeatureUpdater.js +1 -2
  11. package/dist/advanced/PerformanceMonitor.d.ts +1 -2
  12. package/dist/advanced/PerformanceMonitor.js +1 -2
  13. package/dist/advanced/StatePersistence.d.ts +1 -2
  14. package/dist/advanced/StatePersistence.js +1 -2
  15. package/dist/advanced/index.d.ts +1 -2
  16. package/dist/advanced/index.js +1 -2
  17. package/dist/cli/commands/config.d.ts +1 -2
  18. package/dist/cli/commands/config.js +1 -2
  19. package/dist/cli/commands/feature.d.ts +1 -2
  20. package/dist/cli/commands/feature.js +1 -2
  21. package/dist/cli/commands/index.d.ts +1 -2
  22. package/dist/cli/commands/index.js +1 -2
  23. package/dist/cli/commands/project.d.ts +1 -2
  24. package/dist/cli/commands/project.js +1 -2
  25. package/dist/cli/commands/validate.d.ts +1 -2
  26. package/dist/cli/commands/validate.js +1 -2
  27. package/dist/cli/index.d.ts +1 -2
  28. package/dist/cli/index.js +1 -2
  29. package/dist/cli.d.ts +1 -2
  30. package/dist/cli.js +1 -2
  31. package/dist/commands/ArchiveCommand.d.ts +1 -2
  32. package/dist/commands/ArchiveCommand.js +1 -1
  33. package/dist/commands/BaseCommand.d.ts +1 -2
  34. package/dist/commands/BaseCommand.js +1 -2
  35. package/dist/commands/BatchCommand.d.ts +1 -2
  36. package/dist/commands/BatchCommand.js +1 -2
  37. package/dist/commands/ChangesCommand.js +0 -1
  38. package/dist/commands/DocsCommand.d.ts +1 -2
  39. package/dist/commands/DocsCommand.js +0 -1
  40. package/dist/commands/IndexCommand.d.ts +1 -2
  41. package/dist/commands/IndexCommand.js +1 -2
  42. package/dist/commands/InitCommand.d.ts +1 -2
  43. package/dist/commands/InitCommand.js +0 -1
  44. package/dist/commands/NewCommand.d.ts +0 -1
  45. package/dist/commands/NewCommand.js +19 -12
  46. package/dist/commands/PluginsCommand.d.ts +0 -1
  47. package/dist/commands/PluginsCommand.js +0 -1
  48. package/dist/commands/ProgressCommand.d.ts +1 -2
  49. package/dist/commands/ProgressCommand.js +1 -2
  50. package/dist/commands/QueueCommand.d.ts +0 -1
  51. package/dist/commands/QueueCommand.js +0 -1
  52. package/dist/commands/RunCommand.d.ts +0 -1
  53. package/dist/commands/RunCommand.js +0 -1
  54. package/dist/commands/SkillCommand.d.ts +0 -1
  55. package/dist/commands/SkillCommand.js +1 -2
  56. package/dist/commands/SkillsCommand.d.ts +1 -2
  57. package/dist/commands/SkillsCommand.js +1 -2
  58. package/dist/commands/StatusCommand.d.ts +1 -2
  59. package/dist/commands/StatusCommand.js +0 -1
  60. package/dist/commands/UpdateCommand.d.ts +0 -1
  61. package/dist/commands/UpdateCommand.js +37 -2
  62. package/dist/commands/VerifyCommand.d.ts +1 -2
  63. package/dist/commands/VerifyCommand.js +4 -41
  64. package/dist/commands/WorkflowCommand.d.ts +0 -1
  65. package/dist/commands/WorkflowCommand.js +0 -1
  66. package/dist/commands/index.d.ts +0 -1
  67. package/dist/commands/index.js +0 -1
  68. package/dist/core/constants.d.ts +1 -2
  69. package/dist/core/constants.js +1 -2
  70. package/dist/core/errors.d.ts +1 -2
  71. package/dist/core/errors.js +1 -2
  72. package/dist/core/index.d.ts +1 -2
  73. package/dist/core/index.js +1 -2
  74. package/dist/core/types.d.ts +0 -1
  75. package/dist/core/types.js +1 -2
  76. package/dist/index.d.ts +1 -2
  77. package/dist/index.js +1 -2
  78. package/dist/presets/ProjectPresets.d.ts +0 -1
  79. package/dist/presets/ProjectPresets.js +0 -1
  80. package/dist/scaffolds/ProjectScaffoldPresets.d.ts +1 -2
  81. package/dist/scaffolds/ProjectScaffoldPresets.js +1 -2
  82. package/dist/services/ConfigManager.d.ts +1 -2
  83. package/dist/services/ConfigManager.js +0 -1
  84. package/dist/services/FeatureManager.d.ts +1 -2
  85. package/dist/services/FeatureManager.js +1 -2
  86. package/dist/services/FileService.d.ts +1 -2
  87. package/dist/services/FileService.js +0 -1
  88. package/dist/services/IndexBuilder.d.ts +1 -2
  89. package/dist/services/IndexBuilder.js +1 -2
  90. package/dist/services/Logger.d.ts +1 -2
  91. package/dist/services/Logger.js +1 -2
  92. package/dist/services/ProjectAssetRegistry.d.ts +0 -1
  93. package/dist/services/ProjectAssetRegistry.js +1 -2
  94. package/dist/services/ProjectAssetService.d.ts +0 -1
  95. package/dist/services/ProjectAssetService.js +4 -2
  96. package/dist/services/ProjectScaffoldCommandService.d.ts +1 -2
  97. package/dist/services/ProjectScaffoldCommandService.js +0 -1
  98. package/dist/services/ProjectScaffoldService.d.ts +1 -2
  99. package/dist/services/ProjectScaffoldService.js +0 -1
  100. package/dist/services/ProjectService.d.ts +1 -1
  101. package/dist/services/ProjectService.js +267 -411
  102. package/dist/services/QueueService.d.ts +0 -1
  103. package/dist/services/QueueService.js +1 -1
  104. package/dist/services/RunService.d.ts +0 -1
  105. package/dist/services/RunService.js +0 -1
  106. package/dist/services/SkillParser.d.ts +1 -2
  107. package/dist/services/SkillParser.js +0 -1
  108. package/dist/services/StateManager.d.ts +0 -1
  109. package/dist/services/StateManager.js +0 -1
  110. package/dist/services/TemplateEngine.d.ts +1 -2
  111. package/dist/services/TemplateEngine.js +1 -2
  112. package/dist/services/TemplateGenerator.d.ts +1 -2
  113. package/dist/services/TemplateGenerator.js +6 -7
  114. package/dist/services/ValidationService.d.ts +1 -2
  115. package/dist/services/ValidationService.js +1 -2
  116. package/dist/services/Validator.d.ts +1 -2
  117. package/dist/services/Validator.js +1 -2
  118. package/dist/services/index.d.ts +0 -1
  119. package/dist/services/index.js +0 -1
  120. package/dist/services/templates/ExecutionTemplateBuilder.d.ts +1 -2
  121. package/dist/services/templates/ExecutionTemplateBuilder.js +52 -29
  122. package/dist/services/templates/ProjectTemplateBuilder.d.ts +1 -2
  123. package/dist/services/templates/ProjectTemplateBuilder.js +0 -1
  124. package/dist/services/templates/TemplateBuilderBase.d.ts +5 -1
  125. package/dist/services/templates/TemplateBuilderBase.js +31 -3
  126. package/dist/services/templates/TemplateInputFactory.d.ts +1 -2
  127. package/dist/services/templates/TemplateInputFactory.js +4 -1
  128. package/dist/services/templates/templateTypes.d.ts +4 -1
  129. package/dist/services/templates/templateTypes.js +1 -2
  130. package/dist/tools/build-index.js +128 -36
  131. package/dist/utils/DateUtils.d.ts +1 -2
  132. package/dist/utils/DateUtils.js +1 -2
  133. package/dist/utils/PathUtils.d.ts +0 -1
  134. package/dist/utils/PathUtils.js +0 -1
  135. package/dist/utils/StringUtils.d.ts +1 -2
  136. package/dist/utils/StringUtils.js +1 -2
  137. package/dist/utils/helpers.d.ts +0 -1
  138. package/dist/utils/helpers.js +0 -1
  139. package/dist/utils/index.d.ts +1 -2
  140. package/dist/utils/index.js +1 -2
  141. package/dist/utils/logger.d.ts +1 -2
  142. package/dist/utils/logger.js +1 -2
  143. package/dist/utils/path.d.ts +1 -2
  144. package/dist/utils/path.js +1 -2
  145. package/dist/utils/subcommandHelp.d.ts +0 -1
  146. package/dist/utils/subcommandHelp.js +0 -1
  147. package/dist/workflow/ArchiveGate.d.ts +1 -2
  148. package/dist/workflow/ArchiveGate.js +1 -2
  149. package/dist/workflow/ConfigurableWorkflow.d.ts +1 -2
  150. package/dist/workflow/ConfigurableWorkflow.js +1 -2
  151. package/dist/workflow/HookSystem.d.ts +1 -2
  152. package/dist/workflow/HookSystem.js +1 -2
  153. package/dist/workflow/IndexRegenerator.d.ts +1 -2
  154. package/dist/workflow/IndexRegenerator.js +1 -2
  155. package/dist/workflow/PluginWorkflowComposer.d.ts +0 -1
  156. package/dist/workflow/PluginWorkflowComposer.js +0 -1
  157. package/dist/workflow/SkillUpdateEngine.d.ts +1 -2
  158. package/dist/workflow/SkillUpdateEngine.js +1 -2
  159. package/dist/workflow/VerificationSystem.d.ts +1 -2
  160. package/dist/workflow/VerificationSystem.js +1 -2
  161. package/dist/workflow/WorkflowEngine.d.ts +1 -2
  162. package/dist/workflow/WorkflowEngine.js +1 -2
  163. package/dist/workflow/index.d.ts +0 -1
  164. package/dist/workflow/index.js +0 -1
  165. package/package.json +17 -8
  166. package/skill.yaml +2 -2
@@ -36,6 +36,15 @@ class UpdateCommand extends BaseCommand_1.BaseCommand {
36
36
  if (toolingResult.hookInstalledFiles.length > 0) {
37
37
  this.info(` git hooks refreshed: ${toolingResult.hookInstalledFiles.join(', ')}`);
38
38
  }
39
+ if (toolingResult.migratedFiles.length > 0) {
40
+ this.info(` tooling migrated: ${toolingResult.migratedFiles.join(', ')}`);
41
+ }
42
+ if (toolingResult.removedLegacyFiles.length > 0) {
43
+ this.info(` legacy tooling removed: ${toolingResult.removedLegacyFiles.join(', ')}`);
44
+ }
45
+ if (toolingResult.migratedFiles.length > 0 || toolingResult.removedLegacyFiles.length > 0) {
46
+ this.info(' note: update any custom repo references from root build-index-auto.* to "ospec index build" or "node .ospec/tools/build-index-auto.cjs"');
47
+ }
39
48
  this.info(` codex skills: ${this.formatManagedSkills(skillResult.codex)}`);
40
49
  if (skillResult.claude.length > 0) {
41
50
  this.info(` claude skills: ${this.formatManagedSkills(skillResult.claude)}`);
@@ -56,8 +65,9 @@ class UpdateCommand extends BaseCommand_1.BaseCommand {
56
65
  this.info(' note: it does not enable, disable, or migrate active or queued changes automatically');
57
66
  }
58
67
  async syncProjectTooling(rootDir, documentLanguage) {
68
+ const migrationResult = await this.migrateLegacyBuildIndexScript(rootDir);
59
69
  const toolingPaths = [
60
- 'build-index-auto.cjs',
70
+ '.ospec/tools/build-index-auto.cjs',
61
71
  '.ospec/templates/hooks/pre-commit',
62
72
  '.ospec/templates/hooks/post-merge',
63
73
  ];
@@ -71,6 +81,32 @@ class UpdateCommand extends BaseCommand_1.BaseCommand {
71
81
  refreshedFiles: [...directCopyResult.refreshed],
72
82
  skippedFiles: [...directCopyResult.skipped],
73
83
  hookInstalledFiles: [...hookInstallResult.installed],
84
+ migratedFiles: migrationResult.migratedFiles,
85
+ removedLegacyFiles: migrationResult.removedLegacyFiles,
86
+ };
87
+ }
88
+ async migrateLegacyBuildIndexScript(rootDir) {
89
+ const targetRelativePath = '.ospec/tools/build-index-auto.cjs';
90
+ const targetPath = (0, path_1.join)(rootDir, ...targetRelativePath.split('/'));
91
+ const legacyRelativePaths = ['build-index-auto.cjs', 'build-index-auto.js'];
92
+ const migratedFiles = [];
93
+ const removedLegacyFiles = [];
94
+ for (const legacyRelativePath of legacyRelativePaths) {
95
+ const legacyPath = (0, path_1.join)(rootDir, legacyRelativePath);
96
+ if (!(await services_1.services.fileService.exists(legacyPath))) {
97
+ continue;
98
+ }
99
+ if (!(await services_1.services.fileService.exists(targetPath))) {
100
+ await services_1.services.fileService.move(legacyPath, targetPath);
101
+ migratedFiles.push(`${legacyRelativePath} -> ${targetRelativePath}`);
102
+ continue;
103
+ }
104
+ await services_1.services.fileService.remove(legacyPath);
105
+ removedLegacyFiles.push(legacyRelativePath);
106
+ }
107
+ return {
108
+ migratedFiles,
109
+ removedLegacyFiles,
74
110
  };
75
111
  }
76
112
  async syncEnabledPluginAssets(rootDir) {
@@ -368,4 +404,3 @@ class UpdateCommand extends BaseCommand_1.BaseCommand {
368
404
  }
369
405
  }
370
406
  exports.UpdateCommand = UpdateCommand;
371
- //# sourceMappingURL=UpdateCommand.js.map
@@ -1,5 +1,4 @@
1
1
  import { BaseCommand } from './BaseCommand';
2
2
  export declare class VerifyCommand extends BaseCommand {
3
3
  execute(featurePath?: string): Promise<void>;
4
- }
5
- //# sourceMappingURL=VerifyCommand.d.ts.map
4
+ }
@@ -98,48 +98,12 @@ class VerifyCommand extends BaseCommand_1.BaseCommand {
98
98
  });
99
99
  }
100
100
  if (tasksExists) {
101
- const tasksContent = await services_1.services.fileService.readFile(tasksPath);
102
- const tasks = (0, gray_matter_1.default)(tasksContent);
103
- const optionalSteps = Array.isArray(tasks.data.optional_steps)
104
- ? tasks.data.optional_steps
105
- : [];
106
- const missing = activatedSteps.filter(step => !optionalSteps.includes(step));
107
- checks.push({
108
- name: 'tasks.optional_steps',
109
- status: missing.length === 0 ? 'pass' : 'fail',
110
- message: missing.length === 0
111
- ? 'All activated optional steps are present in tasks.md'
112
- : `Missing optional steps in tasks.md: ${missing.join(', ')}`,
113
- });
114
- checks.push({
115
- name: 'tasks checklist',
116
- status: /- \[ \]/.test(tasksContent) ? 'warn' : 'pass',
117
- message: /- \[ \]/.test(tasksContent)
118
- ? 'tasks.md still has unchecked items'
119
- : 'tasks.md checklist is complete',
120
- });
101
+ const tasksAnalysis = await services_1.services.projectService.analyzeChecklistDocument(tasksPath, 'tasks.md', activatedSteps);
102
+ checks.push(...tasksAnalysis.checks);
121
103
  }
122
104
  if (verificationExists) {
123
- const verificationContent = await services_1.services.fileService.readFile(verificationPath);
124
- const verification = (0, gray_matter_1.default)(verificationContent);
125
- const optionalSteps = Array.isArray(verification.data.optional_steps)
126
- ? verification.data.optional_steps
127
- : [];
128
- const missing = activatedSteps.filter(step => !optionalSteps.includes(step));
129
- checks.push({
130
- name: 'verification.optional_steps',
131
- status: missing.length === 0 ? 'pass' : 'fail',
132
- message: missing.length === 0
133
- ? 'All activated optional steps are present in verification.md'
134
- : `Missing optional steps in verification.md: ${missing.join(', ')}`,
135
- });
136
- checks.push({
137
- name: 'verification checklist',
138
- status: /- \[ \]/.test(verificationContent) ? 'warn' : 'pass',
139
- message: /- \[ \]/.test(verificationContent)
140
- ? 'verification.md still has unchecked items'
141
- : 'verification.md checklist is complete',
142
- });
105
+ const verificationAnalysis = await services_1.services.projectService.analyzeVerificationDocument(verificationPath, activatedSteps);
106
+ checks.push(...verificationAnalysis.checks);
143
107
  }
144
108
  if (activatedSteps.includes('stitch_design_review')) {
145
109
  const approvalPath = path.join(targetPath, 'artifacts', 'stitch', 'approval.json');
@@ -275,4 +239,3 @@ class VerifyCommand extends BaseCommand_1.BaseCommand {
275
239
  }
276
240
  }
277
241
  exports.VerifyCommand = VerifyCommand;
278
- //# sourceMappingURL=VerifyCommand.js.map
@@ -9,4 +9,3 @@ export declare class WorkflowCommand extends BaseCommand {
9
9
  private listSupportedFlags;
10
10
  private setMode;
11
11
  }
12
- //# sourceMappingURL=WorkflowCommand.d.ts.map
@@ -147,4 +147,3 @@ class WorkflowCommand extends BaseCommand_1.BaseCommand {
147
147
  }
148
148
  }
149
149
  exports.WorkflowCommand = WorkflowCommand;
150
- //# sourceMappingURL=WorkflowCommand.js.map
@@ -40,4 +40,3 @@ export { RunCommand } from './RunCommand';
40
40
 
41
41
  export { UpdateCommand } from './UpdateCommand';
42
42
 
43
- //# sourceMappingURL=index.d.ts.map
@@ -82,4 +82,3 @@ var UpdateCommand_1 = require("./UpdateCommand");
82
82
 
83
83
  Object.defineProperty(exports, "UpdateCommand", { enumerable: true, get: function () { return UpdateCommand_1.UpdateCommand; } });
84
84
 
85
- //# sourceMappingURL=index.js.map
@@ -37,5 +37,4 @@ export declare const NAMING_RULES: {
37
37
  };
38
38
  export declare const DATE_FORMAT = "YYYY-MM-DD";
39
39
  export declare const DATETIME_FORMAT = "YYYY-MM-DDTHH:mm:ssZ";
40
- export declare const WORKFLOW_STEPS: readonly ["proposal_complete", "tasks_complete", "implementation_complete", "skill_updated", "index_regenerated", "tests_passed", "verification_passed", "archived"];
41
- //# sourceMappingURL=constants.d.ts.map
40
+ export declare const WORKFLOW_STEPS: readonly ["proposal_complete", "tasks_complete", "implementation_complete", "skill_updated", "index_regenerated", "tests_passed", "verification_passed", "archived"];
@@ -24,7 +24,7 @@ exports.FILE_NAMES = {
24
24
  SKILL_MD: 'SKILL.md',
25
25
  SKILL_INDEX: 'SKILL.index.json',
26
26
  README: 'README.md',
27
- BUILD_INDEX_SCRIPT: 'build-index-auto.cjs',
27
+ BUILD_INDEX_SCRIPT: '.ospec/tools/build-index-auto.cjs',
28
28
  AI_GUIDE: 'ai-guide.md',
29
29
  EXECUTION_PROTOCOL: 'execution-protocol.md',
30
30
  PROPOSAL: 'proposal.md',
@@ -70,4 +70,3 @@ exports.WORKFLOW_STEPS = [
70
70
  'verification_passed',
71
71
  'archived',
72
72
  ];
73
- //# sourceMappingURL=constants.js.map
@@ -32,5 +32,4 @@ export declare class WorkflowError extends OSpecError {
32
32
  }
33
33
  export declare class VerificationError extends OSpecError {
34
34
  constructor(message: string, details?: any);
35
- }
36
- //# sourceMappingURL=errors.d.ts.map
35
+ }
@@ -68,5 +68,4 @@ class VerificationError extends OSpecError {
68
68
  super(message, 'VERIFICATION_ERROR', details);
69
69
  }
70
70
  }
71
- exports.VerificationError = VerificationError;
72
- //# sourceMappingURL=errors.js.map
71
+ exports.VerificationError = VerificationError;
@@ -3,5 +3,4 @@
3
3
  */
4
4
  export * from './types';
5
5
  export * from './constants';
6
- export * from './errors';
7
- //# sourceMappingURL=index.d.ts.map
6
+ export * from './errors';
@@ -19,5 +19,4 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
19
19
  Object.defineProperty(exports, "__esModule", { value: true });
20
20
  __exportStar(require("./types"), exports);
21
21
  __exportStar(require("./constants"), exports);
22
- __exportStar(require("./errors"), exports);
23
- //# sourceMappingURL=index.js.map
22
+ __exportStar(require("./errors"), exports);
@@ -371,4 +371,3 @@ export interface QueueRunStatusReport {
371
371
  nextInstruction: string | null;
372
372
  }
373
373
  export type WorkflowStep = 'proposal_complete' | 'tasks_complete' | 'implementation_complete' | 'skill_updated' | 'index_regenerated' | 'tests_passed' | 'verification_passed' | 'archived';
374
- //# sourceMappingURL=types.d.ts.map
@@ -1,3 +1,2 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=types.js.map
2
+ Object.defineProperty(exports, "__esModule", { value: true });
package/dist/index.d.ts CHANGED
@@ -7,5 +7,4 @@ export * from './commands';
7
7
  export * from './utils';
8
8
  export * from './core';
9
9
  export * from './workflow';
10
- export * from './advanced';
11
- //# sourceMappingURL=index.d.ts.map
10
+ export * from './advanced';
package/dist/index.js CHANGED
@@ -23,5 +23,4 @@ __exportStar(require("./commands"), exports);
23
23
  __exportStar(require("./utils"), exports);
24
24
  __exportStar(require("./core"), exports);
25
25
  __exportStar(require("./workflow"), exports);
26
- __exportStar(require("./advanced"), exports);
27
- //# sourceMappingURL=index.js.map
26
+ __exportStar(require("./advanced"), exports);
@@ -38,4 +38,3 @@ export declare const getLocalizedProjectPresetContent: (presetId: ProjectPresetI
38
38
  export declare const inferProjectPresetFromDescription: (description: string) => ProjectPresetDefinition | undefined;
39
39
  export declare const getProjectPresetFirstChangeSuggestion: (presetId: ProjectPresetId | null | undefined, language: ProjectPresetDocumentLanguage, projectName: string) => ProjectPresetFirstChangeSuggestion | null;
40
40
  export {};
41
- //# sourceMappingURL=ProjectPresets.d.ts.map
@@ -313,4 +313,3 @@ const getProjectPresetFirstChangeSuggestion = (presetId, language, projectName)
313
313
  return preset.buildFirstChangeSuggestion(language, projectName);
314
314
  };
315
315
  exports.getProjectPresetFirstChangeSuggestion = getProjectPresetFirstChangeSuggestion;
316
- //# sourceMappingURL=ProjectPresets.js.map
@@ -16,5 +16,4 @@ export interface ProjectScaffoldDefinition {
16
16
  export declare const PROJECT_SCAFFOLD_PRESETS: ProjectScaffoldDefinition[];
17
17
  export declare const getProjectScaffoldPreset: (presetId?: ProjectPresetId | null) => ProjectScaffoldDefinition | undefined;
18
18
  export declare const getLocalizedProjectScaffoldMeta: (presetId: ProjectPresetId, language: ProjectPresetDocumentLanguage) => Pick<ProjectScaffoldDefinition, "title" | "description" | "framework" | "installCommand">;
19
- export declare const getLocalizedProjectScaffoldPurpose: (filePath: string, language: ProjectPresetDocumentLanguage) => string;
20
- //# sourceMappingURL=ProjectScaffoldPresets.d.ts.map
19
+ export declare const getLocalizedProjectScaffoldPurpose: (filePath: string, language: ProjectPresetDocumentLanguage) => string;
@@ -147,5 +147,4 @@ const getLocalizedProjectScaffoldPurpose = (filePath, language) => {
147
147
  };
148
148
  return zhPurposes[filePath] || '';
149
149
  };
150
- exports.getLocalizedProjectScaffoldPurpose = getLocalizedProjectScaffoldPurpose;
151
- //# sourceMappingURL=ProjectScaffoldPresets.js.map
150
+ exports.getLocalizedProjectScaffoldPurpose = getLocalizedProjectScaffoldPurpose;
@@ -10,5 +10,4 @@ export declare class ConfigManager {
10
10
  createDefaultConfig(mode?: ProjectMode): Promise<SkillrcConfig>;
11
11
  private normalizeConfig;
12
12
  }
13
- export declare function createConfigManager(fileService: FileService): ConfigManager;
14
- //# sourceMappingURL=ConfigManager.d.ts.map
13
+ export declare function createConfigManager(fileService: FileService): ConfigManager;
@@ -396,4 +396,3 @@ exports.ConfigManager = ConfigManager;
396
396
  function createConfigManager(fileService) {
397
397
  return new ConfigManager(fileService);
398
398
  }
399
- //# sourceMappingURL=ConfigManager.js.map
@@ -1,5 +1,4 @@
1
1
  /**
2
2
  * Feature 管理服务
3
3
  * TODO: 实现 feature 生命周期管理
4
- */
5
- //# sourceMappingURL=FeatureManager.d.ts.map
4
+ */
@@ -2,5 +2,4 @@
2
2
  /**
3
3
  * Feature 管理服务
4
4
  * TODO: 实现 feature 生命周期管理
5
- */
6
- //# sourceMappingURL=FeatureManager.js.map
5
+ */
@@ -17,5 +17,4 @@ export declare class FileService {
17
17
  readDir(dirPath: string): Promise<string[]>;
18
18
  stat(filePath: string): Promise<fs.Stats>;
19
19
  }
20
- export declare const fileService: FileService;
21
- //# sourceMappingURL=FileService.d.ts.map
20
+ export declare const fileService: FileService;
@@ -149,4 +149,3 @@ class FileService {
149
149
  }
150
150
  exports.FileService = FileService;
151
151
  exports.fileService = new FileService();
152
- //# sourceMappingURL=FileService.js.map
@@ -8,5 +8,4 @@ export declare class IndexBuilder {
8
8
  createEmpty(rootDir: string): Promise<SkillIndex>;
9
9
  private stripVolatileFields;
10
10
  }
11
- export declare const createIndexBuilder: (skillParser: SkillParser) => IndexBuilder;
12
- //# sourceMappingURL=IndexBuilder.d.ts.map
11
+ export declare const createIndexBuilder: (skillParser: SkillParser) => IndexBuilder;
@@ -126,5 +126,4 @@ class IndexBuilder {
126
126
  }
127
127
  exports.IndexBuilder = IndexBuilder;
128
128
  const createIndexBuilder = (skillParser) => new IndexBuilder(skillParser);
129
- exports.createIndexBuilder = createIndexBuilder;
130
- //# sourceMappingURL=IndexBuilder.js.map
129
+ exports.createIndexBuilder = createIndexBuilder;
@@ -16,5 +16,4 @@ export declare class Logger {
16
16
  error(message: string, error?: any): void;
17
17
  private shouldLog;
18
18
  }
19
- export declare const logger: Logger;
20
- //# sourceMappingURL=Logger.d.ts.map
19
+ export declare const logger: Logger;
@@ -44,5 +44,4 @@ class Logger {
44
44
  }
45
45
  }
46
46
  exports.Logger = Logger;
47
- exports.logger = new Logger();
48
- //# sourceMappingURL=Logger.js.map
47
+ exports.logger = new Logger();
@@ -9,4 +9,3 @@ export interface DirectCopyProjectAssetDefinition {
9
9
  sourceRelativePaths?: string[];
10
10
  }
11
11
  export declare const DIRECT_COPY_PROJECT_ASSETS: DirectCopyProjectAssetDefinition[];
12
- //# sourceMappingURL=ProjectAssetRegistry.d.ts.map
@@ -32,7 +32,7 @@ exports.DIRECT_COPY_PROJECT_ASSETS = [
32
32
  id: 'build-index-script',
33
33
  category: 'tooling',
34
34
  description: 'Rebuild script for SKILL.index.json.',
35
- targetRelativePath: 'build-index-auto.cjs',
35
+ targetRelativePath: '.ospec/tools/build-index-auto.cjs',
36
36
  overwritePolicy: 'if_missing',
37
37
  sourceRelativePaths: ['src/tools/build-index.js', 'dist/tools/build-index.js'],
38
38
  },
@@ -105,4 +105,3 @@ exports.DIRECT_COPY_PROJECT_ASSETS = [
105
105
  sourceRelativePaths: ['assets/git-hooks/post-merge'],
106
106
  },
107
107
  ];
108
- //# sourceMappingURL=ProjectAssetRegistry.js.map
@@ -46,4 +46,3 @@ export declare class ProjectAssetService {
46
46
  }
47
47
  export declare const createProjectAssetService: (fileService: FileService) => ProjectAssetService;
48
48
  export {};
49
- //# sourceMappingURL=ProjectAssetService.d.ts.map
@@ -220,10 +220,12 @@ class ProjectAssetService {
220
220
  return path_1.default.resolve(__dirname, '../..');
221
221
  }
222
222
  isOSpecManagedHook(content) {
223
- return content.includes('build-index-auto.cjs') || content.includes('build-index-auto.js') || content.includes('[ospec]');
223
+ return (content.includes('.ospec/tools/build-index-auto.cjs') ||
224
+ content.includes('build-index-auto.cjs') ||
225
+ content.includes('build-index-auto.js') ||
226
+ content.includes('[ospec]'));
224
227
  }
225
228
  }
226
229
  exports.ProjectAssetService = ProjectAssetService;
227
230
  const createProjectAssetService = (fileService) => new ProjectAssetService(fileService);
228
231
  exports.createProjectAssetService = createProjectAssetService;
229
- //# sourceMappingURL=ProjectAssetService.js.map
@@ -69,5 +69,4 @@ export declare class ProjectScaffoldCommandService {
69
69
  private limitOutput;
70
70
  }
71
71
  export declare const createProjectScaffoldCommandService: (fileService: FileService, logger: Logger) => ProjectScaffoldCommandService;
72
- export {};
73
- //# sourceMappingURL=ProjectScaffoldCommandService.d.ts.map
72
+ export {};
@@ -190,4 +190,3 @@ class ProjectScaffoldCommandService {
190
190
  exports.ProjectScaffoldCommandService = ProjectScaffoldCommandService;
191
191
  const createProjectScaffoldCommandService = (fileService, logger) => new ProjectScaffoldCommandService(fileService, logger);
192
192
  exports.createProjectScaffoldCommandService = createProjectScaffoldCommandService;
193
- //# sourceMappingURL=ProjectScaffoldCommandService.js.map
@@ -40,5 +40,4 @@ export declare class ProjectScaffoldService {
40
40
  private escapeTemplateString;
41
41
  private getCopy;
42
42
  }
43
- export declare const createProjectScaffoldService: (fileService: FileService) => ProjectScaffoldService;
44
- //# sourceMappingURL=ProjectScaffoldService.d.ts.map
43
+ export declare const createProjectScaffoldService: (fileService: FileService) => ProjectScaffoldService;
@@ -600,4 +600,3 @@ export function SiteShell({ children }: { children: React.ReactNode }) {
600
600
  exports.ProjectScaffoldService = ProjectScaffoldService;
601
601
  const createProjectScaffoldService = (fileService) => new ProjectScaffoldService(fileService);
602
602
  exports.createProjectScaffoldService = createProjectScaffoldService;
603
- //# sourceMappingURL=ProjectScaffoldService.js.map
@@ -126,6 +126,7 @@ export declare class ProjectService {
126
126
  archivePath: string;
127
127
  change: ActiveChangeStatusItem;
128
128
  }>;
129
+ rebaseMovedChangeMarkdownLinks(previousChangePath: string, nextChangePath: string): Promise<void>;
129
130
  getFeatureProjectContext(rootDir: string, affects?: string[]): Promise<FeatureProjectContext>;
130
131
  getDocsStatus(rootDir: string): Promise<DocsStatus>;
131
132
  getSkillsStatus(rootDir: string): Promise<SkillsStatus>;
@@ -206,4 +207,3 @@ export declare class ProjectService {
206
207
  }
207
208
  export declare const createProjectService: (fileService: FileService, configManager: ConfigManager, templateEngine: TemplateEngine, indexBuilder: IndexBuilder, skillParser: SkillParser, projectAssetService: ProjectAssetService, projectScaffoldService: ProjectScaffoldService, projectScaffoldCommandService: ProjectScaffoldCommandService) => ProjectService;
208
209
  export {};
209
- //# sourceMappingURL=ProjectService.d.ts.map