@vibedx/vibekit 0.11.0 → 0.11.1

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vibedx/vibekit",
3
- "version": "0.11.0",
3
+ "version": "0.11.1",
4
4
  "description": "A powerful CLI tool for managing development tickets and project workflows",
5
5
  "main": "index.js",
6
6
  "type": "module",
@@ -41,12 +41,12 @@ function createSampleTicket(title, description, priority = "medium", status = "o
41
41
  content = content.replace(/^status: .*$/m, `status: ${status}`);
42
42
 
43
43
  // Add description
44
- content = content.replace(/## Description\\s*\\n\\s*\\n/m, `## Description\\n\\n${description}\\n\\n`);
45
-
44
+ content = content.replace(/## Description\s*\n\s*\n/m, `## Description\n\n${description}\n\n`);
45
+
46
46
  // Add AI prompt for the feature request example
47
47
  if (title.includes("AI Prompt")) {
48
- content = content.replace(/## AI Prompt\\s*\\n\\s*\\n/m,
49
- `## AI Prompt\\n\\nGenerate ideas for implementing this feature in a Node.js CLI application. Consider user experience, error handling, and performance.\\n\\n`);
48
+ content = content.replace(/## AI Prompt\s*\n\s*\n/m,
49
+ `## AI Prompt\n\nGenerate ideas for implementing this feature in a Node.js CLI application. Consider user experience, error handling, and performance.\n\n`);
50
50
  }
51
51
 
52
52
  const outputPath = path.join(ticketDir, filename);
@@ -122,6 +122,10 @@ describe('get-started command', () => {
122
122
  expect(content).toContain('status: open');
123
123
  expect(content).toContain('## Description');
124
124
  expect(content).toContain('Simple Task Example');
125
+ // The description text must be injected under the Description heading (regression: TKT-028)
126
+ expect(content).toContain('This is a simple task ticket example showing the basic structure.');
127
+ // Injected content must be real newlines, never literal backslash sequences
128
+ expect(content).not.toMatch(/\\n|\\s/);
125
129
 
126
130
  // Find the bug report example
127
131
  const bugReportFile = files.find(f => f.includes('bug-report-example'));
@@ -222,8 +226,12 @@ describe('get-started command', () => {
222
226
 
223
227
  const content = fs.readFileSync(path.join(ticketsDir, aiPromptFile), 'utf-8');
224
228
  expect(content).toContain('## AI Prompt');
225
- expect(content).toContain('## AI Prompt');
226
229
  expect(content).toContain('Feature Request with AI Prompt');
230
+ // The AI prompt body must be injected under the heading (regression: TKT-028)
231
+ expect(content).toContain('Generate ideas for implementing this feature in a Node.js CLI application.');
232
+ // And the description for this ticket too
233
+ expect(content).toContain('This example shows how to use the AI prompt section');
234
+ expect(content).not.toMatch(/\\n|\\s/);
227
235
  });
228
236
 
229
237
  it('should create tickets with proper slug formatting', () => {