fix(prompts): add JSON output format instruction to complexity analysis prompt#1369
fix(prompts): add JSON output format instruction to complexity analysis prompt#1369kiwina wants to merge 4 commits intoeyaltoledano:nextfrom
Conversation
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Ralph Khreish <35776126+Crunchyman-ralph@users.noreply.github.com>
…is prompt The complexity analysis prompt was missing the final instruction specifying that output should be a JSON object with a 'complexityAnalysis' key containing the array of analysis objects. This caused inconsistent output formatting. This fix ensures the AI model returns properly structured JSON output that can be reliably parsed by the complexity analysis module.
🦋 Changeset detectedLatest commit: 1af7d07 The changes in this PR will be included in the next version bump. Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
WalkthroughFinalizes a pre-release (0.31.0-rc.0) to stable (0.31.0) by removing changeset metadata files, consolidating changes into CHANGELOG.md, bumping version numbers across packages and apps, updating the complexity analysis prompt to enforce JSON output format, and changing a dependency constraint from a specific pre-release version to a wildcard. Changes
Sequence DiagramsequenceDiagram
participant User
participant Complexity Analyzer
participant LLM
User->>Complexity Analyzer: Request complexity analysis
Complexity Analyzer->>LLM: Analyze code (with JSON format constraint)
LLM->>LLM: Process analysis
LLM-->>Complexity Analyzer: Return single JSON object with complexityAnalysis key
Complexity Analyzer-->>User: Return structured complexity report
Estimated code review effort🎯 2 (Simple) | ⏱️ ~12 minutes
Possibly related PRs
Suggested reviewers
Pre-merge checks and finishing touches❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
✨ Finishing touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 4
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (4)
packages/ai-sdk-provider-grok-cli/CHANGELOG.md (1)
3-11: Multiple invalid "## null" section headers in CHANGELOG.The CHANGELOG contains five "## null" section headers (lines 3–11) that appear to be generated incorrectly. Version headers should contain actual version identifiers (e.g., "## 1.0.0"), not literal "null" strings. This will likely break changelog parsing and release tooling.
These entries should be removed or corrected to use valid semantic version identifiers. If this is an artifact of the release process, the changelog generation logic may need investigation.
packages/build-config/CHANGELOG.md (1)
3-14: Invalid "## null" section headers corrupt CHANGELOG structure.Lines 3–14 contain six duplicate "## null" section headers that should not exist in a valid CHANGELOG. These entries precede the actual "## 1.0.1" entry (line 15) and will break changelog generation and release tooling.
These lines should be removed entirely. The CHANGELOG should start directly with the version header (e.g., "## 1.0.1").
# @tm/build-config -## null - -## null - -## null - -## null - -## null - -## null - ## 1.0.1packages/tm-core/CHANGELOG.md (1)
3-14: Corrupt CHANGELOG structure with invalid "## null" headers.Lines 3–14 contain six duplicate "## null" section headers that should not be in this CHANGELOG. These precede the actual release notes and will break changelog generation and release tooling.
Remove these invalid entries:
# Changelog -## null - -## null - -## null - -## null - -## null - -## null - ## 0.26.1apps/mcp/CHANGELOG.md (1)
3-22: Multiple duplicate CHANGELOG entries and invalid version references.The CHANGELOG contains three nearly identical "## null" sections (lines 3–8, 10–15, 17–22), each with duplicate "### Patch Changes" entries referencing "@tm/core@null". This duplicates content and references invalid version identifiers (should be actual semantic versions, not "null").
This file should be cleaned up to remove duplicates and use valid version identifiers:
# @tm/mcp -## null - -### Patch Changes - -- Updated dependencies []: - - @tm/core@null - -## null - -### Patch Changes - -- Updated dependencies []: - - @tm/core@null - ## null ### Patch Changes - Updated dependencies []: - @tm/core@null(Note: Even the retained entry should reference a valid version, not "@tm/core@null")
🧹 Nitpick comments (3)
CHANGELOG.md (1)
3-79: No blocking issues; consider adding a brief note for this fix.Documentation-only changes look fine. If this root changelog is intended to track CLI fixes, add a one‑liner referencing the JSON output enforcement for analyze‑complexity.
apps/docs/CHANGELOG.md (1)
3-4: Add a concise, user-facing summary under 0.0.9.Per changeset guidelines, include a one‑liner describing what changed (e.g., “Bump docs site” or the specific fix).
packages/claude-code-plugin/CHANGELOG.md (1)
3-9: De-duplicate 0.0.3 and add a one-liner for 0.0.4 (or drop it).Verified: two "## 0.0.3" headings exist (lines 5 and 7) and 0.0.4 is completely empty. Collapse the duplicate entry and either add release notes under 0.0.4 or remove it entirely if this version hasn't been released.
📜 Review details
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
⛔ Files ignored due to path filters (1)
package-lock.jsonis excluded by!**/package-lock.json
📒 Files selected for processing (23)
.changeset/dirty-walls-ask.md(0 hunks).changeset/fix-complexity-prompt-json-output.md(1 hunks).changeset/fix-metadata-nullable.md(0 hunks).changeset/forty-squids-sell.md(0 hunks).changeset/mighty-pens-ring.md(0 hunks).changeset/nice-laws-help.md(0 hunks).changeset/plain-animals-train.md(0 hunks).changeset/pre.json(0 hunks).changeset/tricky-bats-ring.md(0 hunks)CHANGELOG.md(1 hunks)apps/cli/CHANGELOG.md(1 hunks)apps/docs/CHANGELOG.md(1 hunks)apps/docs/package.json(1 hunks)apps/extension/package.json(1 hunks)apps/mcp/CHANGELOG.md(1 hunks)package.json(1 hunks)packages/ai-sdk-provider-grok-cli/CHANGELOG.md(1 hunks)packages/build-config/CHANGELOG.md(1 hunks)packages/claude-code-plugin/CHANGELOG.md(1 hunks)packages/claude-code-plugin/package.json(1 hunks)packages/tm-bridge/CHANGELOG.md(1 hunks)packages/tm-core/CHANGELOG.md(1 hunks)src/prompts/analyze-complexity.json(1 hunks)
💤 Files with no reviewable changes (8)
- .changeset/tricky-bats-ring.md
- .changeset/fix-metadata-nullable.md
- .changeset/nice-laws-help.md
- .changeset/plain-animals-train.md
- .changeset/dirty-walls-ask.md
- .changeset/pre.json
- .changeset/forty-squids-sell.md
- .changeset/mighty-pens-ring.md
🧰 Additional context used
📓 Path-based instructions (3)
.changeset/*.md
📄 CodeRabbit inference engine (.cursor/rules/changeset.mdc)
.changeset/*.md: When runningnpm run changesetornpx changeset add, provide a concise summary of the changes for theCHANGELOG.mdin imperative mood, typically a single line, and not a detailed Git commit message.
The changeset summary should be user-facing, describing what changed in the released version that is relevant to users or consumers of the package.
Do not use your detailed Git commit message body as the changeset summary.
Files:
.changeset/fix-complexity-prompt-json-output.md
.changeset/*
📄 CodeRabbit inference engine (.cursor/rules/new_features.mdc)
Create appropriate changesets for new features, use semantic versioning, include tagged system information in release notes, and document breaking changes if any.
Files:
.changeset/fix-complexity-prompt-json-output.md
package.json
📄 CodeRabbit inference engine (.cursor/rules/test_workflow.mdc)
Add and update test scripts in package.json to include test, test:watch, test:coverage, test:unit, test:integration, test:e2e, and test:ci
Files:
package.json
🧠 Learnings (54)
📓 Common learnings
Learnt from: eyaltoledano
Repo: eyaltoledano/claude-task-master PR: 1069
File: .changeset/floppy-news-buy.md:7-38
Timestamp: 2025-08-02T14:54:52.216Z
Learning: For major feature additions like new CLI commands, eyaltoledano prefers detailed changesets with comprehensive descriptions, usage examples, and feature explanations rather than minimal single-line summaries.
Learnt from: CR
Repo: eyaltoledano/claude-task-master PR: 0
File: .cursor/rules/glossary.mdc:0-0
Timestamp: 2025-07-18T17:10:53.657Z
Learning: Guidelines for using Changesets (npm run changeset) to manage versioning and changelogs (changeset.mdc).
Learnt from: CR
Repo: eyaltoledano/claude-task-master PR: 0
File: .cursor/rules/new_features.mdc:0-0
Timestamp: 2025-07-18T17:12:57.903Z
Learning: Applies to .changeset/* : Create appropriate changesets for new features, use semantic versioning, include tagged system information in release notes, and document breaking changes if any.
📚 Learning: 2025-09-22T19:45:04.337Z
Learnt from: Crunchyman-ralph
Repo: eyaltoledano/claude-task-master PR: 1232
File: packages/tm-core/package.json:50-51
Timestamp: 2025-09-22T19:45:04.337Z
Learning: In the eyaltoledano/claude-task-master project, Crunchyman-ralph intentionally omits version fields from internal/private packages in package.json files to prevent changesets from releasing new versions of these packages while still allowing them to be processed for dependency updates. The changesets warnings about missing versions are acceptable as they don't break the process and achieve the desired behavior of only releasing public packages.
Applied to files:
apps/docs/package.json.changeset/fix-complexity-prompt-json-output.mdapps/extension/package.jsonpackage.jsonpackages/build-config/CHANGELOG.mdpackages/claude-code-plugin/package.jsonpackages/tm-core/CHANGELOG.mdpackages/claude-code-plugin/CHANGELOG.mdapps/cli/CHANGELOG.md
📚 Learning: 2025-07-31T20:49:04.638Z
Learnt from: Crunchyman-ralph
Repo: eyaltoledano/claude-task-master PR: 997
File: apps/extension/package.publish.json:2-8
Timestamp: 2025-07-31T20:49:04.638Z
Learning: In the eyaltoledano/claude-task-master repository, the VS Code extension uses a 3-file packaging system where package.json (with name "extension") is for development within the monorepo, while package.publish.json (with name "task-master-hamster") contains the clean manifest for VS Code marketplace publishing. The different names are intentional and serve distinct purposes in the build and publishing workflow.
Applied to files:
apps/docs/package.jsonpackage.jsonpackages/claude-code-plugin/package.json
📚 Learning: 2025-07-18T17:07:53.100Z
Learnt from: CR
Repo: eyaltoledano/claude-task-master PR: 0
File: .cursor/rules/changeset.mdc:0-0
Timestamp: 2025-07-18T17:07:53.100Z
Learning: Applies to .changeset/*.md : When running `npm run changeset` or `npx changeset add`, provide a concise summary of the changes for the `CHANGELOG.md` in imperative mood, typically a single line, and not a detailed Git commit message.
Applied to files:
packages/ai-sdk-provider-grok-cli/CHANGELOG.mdapps/docs/CHANGELOG.md.changeset/fix-complexity-prompt-json-output.mdpackages/build-config/CHANGELOG.mdapps/mcp/CHANGELOG.mdpackages/tm-bridge/CHANGELOG.mdCHANGELOG.mdpackages/claude-code-plugin/CHANGELOG.mdapps/cli/CHANGELOG.md
📚 Learning: 2025-07-18T17:13:11.229Z
Learnt from: CR
Repo: eyaltoledano/claude-task-master PR: 0
File: .cursor/rules/self_improve.mdc:0-0
Timestamp: 2025-07-18T17:13:11.229Z
Learning: Document breaking changes
Applied to files:
packages/ai-sdk-provider-grok-cli/CHANGELOG.mdapps/docs/CHANGELOG.mdpackages/build-config/CHANGELOG.mdapps/mcp/CHANGELOG.mdpackages/tm-bridge/CHANGELOG.mdapps/cli/CHANGELOG.md
📚 Learning: 2025-07-18T17:07:53.100Z
Learnt from: CR
Repo: eyaltoledano/claude-task-master PR: 0
File: .cursor/rules/changeset.mdc:0-0
Timestamp: 2025-07-18T17:07:53.100Z
Learning: Applies to .changeset/*.md : The changeset summary should be user-facing, describing what changed in the released version that is relevant to users or consumers of the package.
Applied to files:
packages/ai-sdk-provider-grok-cli/CHANGELOG.mdapps/docs/CHANGELOG.md.changeset/fix-complexity-prompt-json-output.mdpackages/build-config/CHANGELOG.md
📚 Learning: 2025-08-06T21:14:23.071Z
Learnt from: Crunchyman-ralph
Repo: eyaltoledano/claude-task-master PR: 1091
File: .changeset/wide-actors-report.md:0-0
Timestamp: 2025-08-06T21:14:23.071Z
Learning: For changeset files (.changeset/*.md), the first line after the frontmatter must be a plain, unstyled summary line that gets integrated directly into the changelog. Do not add markdown headings or styling as this would interfere with the changelog generation process. Ignore markdownlint MD041 rule for these files.
Applied to files:
packages/ai-sdk-provider-grok-cli/CHANGELOG.mdpackages/build-config/CHANGELOG.mdpackages/tm-core/CHANGELOG.md
📚 Learning: 2025-07-18T17:10:53.657Z
Learnt from: CR
Repo: eyaltoledano/claude-task-master PR: 0
File: .cursor/rules/glossary.mdc:0-0
Timestamp: 2025-07-18T17:10:53.657Z
Learning: Guidelines for using Changesets (npm run changeset) to manage versioning and changelogs (changeset.mdc).
Applied to files:
apps/docs/CHANGELOG.mdapps/cli/CHANGELOG.md
📚 Learning: 2025-07-18T17:12:57.903Z
Learnt from: CR
Repo: eyaltoledano/claude-task-master PR: 0
File: .cursor/rules/new_features.mdc:0-0
Timestamp: 2025-07-18T17:12:57.903Z
Learning: Applies to .changeset/* : Create appropriate changesets for new features, use semantic versioning, include tagged system information in release notes, and document breaking changes if any.
Applied to files:
apps/docs/CHANGELOG.md
📚 Learning: 2025-09-24T15:12:12.658Z
Learnt from: CR
Repo: eyaltoledano/claude-task-master PR: 0
File: assets/.windsurfrules:0-0
Timestamp: 2025-09-24T15:12:12.658Z
Learning: Use task-master complexity-report to view formatted complexity insights and recommendations
Applied to files:
.changeset/fix-complexity-prompt-json-output.md
📚 Learning: 2025-07-18T17:09:13.815Z
Learnt from: CR
Repo: eyaltoledano/claude-task-master PR: 0
File: .cursor/rules/context_gathering.mdc:0-0
Timestamp: 2025-07-18T17:09:13.815Z
Learning: Commands such as `analyze-complexity`, `expand-task`, `update-task`, and `add-task` should consider adopting the context gathering pattern for improved AI-powered assistance.
Applied to files:
.changeset/fix-complexity-prompt-json-output.mdsrc/prompts/analyze-complexity.json
📚 Learning: 2025-08-02T14:54:52.216Z
Learnt from: eyaltoledano
Repo: eyaltoledano/claude-task-master PR: 1069
File: .changeset/floppy-news-buy.md:7-38
Timestamp: 2025-08-02T14:54:52.216Z
Learning: For major feature additions like new CLI commands, eyaltoledano prefers detailed changesets with comprehensive descriptions, usage examples, and feature explanations rather than minimal single-line summaries.
Applied to files:
.changeset/fix-complexity-prompt-json-output.mdCHANGELOG.md
📚 Learning: 2025-07-18T17:07:53.100Z
Learnt from: CR
Repo: eyaltoledano/claude-task-master PR: 0
File: .cursor/rules/changeset.mdc:0-0
Timestamp: 2025-07-18T17:07:53.100Z
Learning: Every pull request containing new features, bug fixes, breaking changes, performance improvements, significant refactoring, user-facing documentation updates, dependency updates, or impactful build/tooling changes should include a changeset file.
Applied to files:
.changeset/fix-complexity-prompt-json-output.md
📚 Learning: 2025-09-03T13:46:00.640Z
Learnt from: Crunchyman-ralph
Repo: eyaltoledano/claude-task-master PR: 1178
File: packages/tm-core/src/auth/oauth-service.ts:20-20
Timestamp: 2025-09-03T13:46:00.640Z
Learning: For Node.js v22 and later, JSON imports should use `with { type: 'json' }` syntax, not `assert { type: 'json' }`. The `assert` syntax was removed in Node.js v22 in favor of the `with` syntax for import attributes. This applies to the eyaltoledano/claude-task-master codebase which uses Node.js v24.
Applied to files:
.changeset/fix-complexity-prompt-json-output.md
📚 Learning: 2025-09-24T15:12:12.658Z
Learnt from: CR
Repo: eyaltoledano/claude-task-master PR: 0
File: assets/.windsurfrules:0-0
Timestamp: 2025-09-24T15:12:12.658Z
Learning: Analyze task complexity with task-master analyze-complexity --research and use results to plan breakdown
Applied to files:
.changeset/fix-complexity-prompt-json-output.mdsrc/prompts/analyze-complexity.json
📚 Learning: 2025-07-18T17:14:29.399Z
Learnt from: CR
Repo: eyaltoledano/claude-task-master PR: 0
File: .cursor/rules/tasks.mdc:0-0
Timestamp: 2025-07-18T17:14:29.399Z
Learning: Applies to scripts/modules/task-manager.js : Use consistent formatting for task files, include all task properties in text files, and format dependencies with status indicators.
Applied to files:
.changeset/fix-complexity-prompt-json-output.mdpackages/tm-core/CHANGELOG.md
📚 Learning: 2025-09-24T15:12:12.658Z
Learnt from: CR
Repo: eyaltoledano/claude-task-master PR: 0
File: assets/.windsurfrules:0-0
Timestamp: 2025-09-24T15:12:12.658Z
Learning: Use task-master generate to create or update task files from tasks.json and keep dependencies valid with fix-dependencies
Applied to files:
.changeset/fix-complexity-prompt-json-output.mdapps/extension/package.json
📚 Learning: 2025-07-18T17:08:48.695Z
Learnt from: CR
Repo: eyaltoledano/claude-task-master PR: 0
File: .cursor/rules/commands.mdc:0-0
Timestamp: 2025-07-18T17:08:48.695Z
Learning: Applies to scripts/modules/commands.js : Use kebab-case for command names (e.g., analyze-complexity) and descriptive, action-oriented names.
Applied to files:
.changeset/fix-complexity-prompt-json-output.md
📚 Learning: 2025-07-18T17:11:36.732Z
Learnt from: CR
Repo: eyaltoledano/claude-task-master PR: 0
File: .cursor/rules/mcp.mdc:0-0
Timestamp: 2025-07-18T17:11:36.732Z
Learning: If an MCP tool fails with unclear errors (like JSON parsing failures), run the equivalent task-master CLI command in the terminal to get more detailed error messages.
Applied to files:
.changeset/fix-complexity-prompt-json-output.md
📚 Learning: 2025-07-31T22:08:16.039Z
Learnt from: CR
Repo: eyaltoledano/claude-task-master PR: 0
File: .cursor/rules/taskmaster.mdc:0-0
Timestamp: 2025-07-31T22:08:16.039Z
Learning: Applies to .taskmaster/config.json : Do not manually edit the .taskmaster/config.json file. Use the included commands either in the MCP or CLI format as needed. Always prioritize MCP tools when available and use the CLI as a fallback.
Applied to files:
.changeset/fix-complexity-prompt-json-output.md
📚 Learning: 2025-07-18T17:12:57.903Z
Learnt from: CR
Repo: eyaltoledano/claude-task-master PR: 0
File: .cursor/rules/new_features.mdc:0-0
Timestamp: 2025-07-18T17:12:57.903Z
Learning: Applies to scripts/modules/commands.js : Use consistent patterns for option naming and help text in CLI commands.
Applied to files:
.changeset/fix-complexity-prompt-json-output.md
📚 Learning: 2025-08-07T13:00:22.966Z
Learnt from: Crunchyman-ralph
Repo: eyaltoledano/claude-task-master PR: 1090
File: apps/extension/package.json:241-243
Timestamp: 2025-08-07T13:00:22.966Z
Learning: In monorepos, local packages should use "*" as the version constraint in package.json dependencies, as recommended by npm. This ensures the local version from within the same workspace is always used, rather than attempting to resolve from external registries. This applies to packages like task-master-ai within the eyaltoledano/claude-task-master monorepo.
Applied to files:
apps/extension/package.jsonpackage.jsonpackages/claude-code-plugin/package.jsonapps/cli/CHANGELOG.md
📚 Learning: 2025-09-26T19:03:33.225Z
Learnt from: Crunchyman-ralph
Repo: eyaltoledano/claude-task-master PR: 1252
File: package.json:130-132
Timestamp: 2025-09-26T19:03:33.225Z
Learning: In the eyaltoledano/claude-task-master repository, packages are bundled using tsdown during the build process, which means dependencies imported by the source code (including tm internal packages like tm/ai-sdk-provider-grok-cli) are included in the final bundle and don't need to be available as separate runtime dependencies, so they should remain as devDependencies rather than being moved to dependencies.
Applied to files:
apps/extension/package.jsonpackage.jsonpackages/claude-code-plugin/package.jsonapps/cli/CHANGELOG.md
📚 Learning: 2025-09-26T19:07:10.485Z
Learnt from: Crunchyman-ralph
Repo: eyaltoledano/claude-task-master PR: 1252
File: packages/ai-sdk-provider-grok-cli/package.json:21-35
Timestamp: 2025-09-26T19:07:10.485Z
Learning: In the eyaltoledano/claude-task-master repository, the tsdown build configuration uses `noExternal: [/^tm\//]` which means internal tm/ packages are bundled into the final output while external npm dependencies remain external and are resolved from the root package.json dependencies at runtime. This eliminates the need for peer dependencies in internal packages since the root package.json already provides the required external dependencies.
Applied to files:
apps/extension/package.jsonpackages/claude-code-plugin/package.jsonapps/mcp/CHANGELOG.mdpackages/tm-bridge/CHANGELOG.mdpackages/tm-core/CHANGELOG.mdpackages/claude-code-plugin/CHANGELOG.mdapps/cli/CHANGELOG.md
📚 Learning: 2025-09-22T19:45:13.323Z
Learnt from: Crunchyman-ralph
Repo: eyaltoledano/claude-task-master PR: 1232
File: packages/build-config/package.json:14-15
Timestamp: 2025-09-22T19:45:13.323Z
Learning: In the eyaltoledano/claude-task-master repository, Crunchyman-ralph intentionally omits version fields from internal packages (like tm/build-config) to prevent changesets from releasing new versions for these packages. This is the desired behavior for internal tooling packages that should not be published or versioned independently.
Applied to files:
apps/extension/package.jsonpackage.jsonpackages/claude-code-plugin/package.jsonCHANGELOG.mdpackages/tm-core/CHANGELOG.mdapps/cli/CHANGELOG.md
📚 Learning: 2025-07-18T17:10:12.881Z
Learnt from: CR
Repo: eyaltoledano/claude-task-master PR: 0
File: .cursor/rules/dev_workflow.mdc:0-0
Timestamp: 2025-07-18T17:10:12.881Z
Learning: For CLI usage, install Taskmaster globally with `npm install -g task-master-ai` or use locally via `npx task-master-ai ...`.
Applied to files:
apps/extension/package.jsonpackage.jsonCHANGELOG.md
📚 Learning: 2025-09-26T19:05:47.555Z
Learnt from: Crunchyman-ralph
Repo: eyaltoledano/claude-task-master PR: 1252
File: packages/ai-sdk-provider-grok-cli/package.json:11-13
Timestamp: 2025-09-26T19:05:47.555Z
Learning: In the eyaltoledano/claude-task-master repository, internal tm/ packages use a specific export pattern where the "exports" field points to TypeScript source files (./src/index.ts) while "main" points to compiled output (./dist/index.js) and "types" points to source files (./src/index.ts). This pattern is used consistently across internal packages like tm/core and tm/ai-sdk-provider-grok-cli because they are consumed directly during build-time bundling with tsdown rather than being published as separate packages.
Applied to files:
apps/extension/package.jsonpackage.jsonpackages/claude-code-plugin/package.json
📚 Learning: 2025-09-24T15:12:12.658Z
Learnt from: CR
Repo: eyaltoledano/claude-task-master PR: 0
File: assets/.windsurfrules:0-0
Timestamp: 2025-09-24T15:12:12.658Z
Learning: Manage dependencies with task-master add-dependency and remove-dependency; validate and fix using validate-dependencies and fix-dependencies
Applied to files:
apps/extension/package.json
📚 Learning: 2025-09-26T19:10:32.906Z
Learnt from: Crunchyman-ralph
Repo: eyaltoledano/claude-task-master PR: 1252
File: tsconfig.json:22-28
Timestamp: 2025-09-26T19:10:32.906Z
Learning: In the eyaltoledano/claude-task-master repository, all internal tm/ package path mappings in tsconfig.json consistently point to TypeScript source files (e.g., "./packages/*/src/index.ts") rather than built JavaScript. This is intentional architecture because tsdown bundles internal packages directly from source during build time, eliminating the need for separate compilation of internal packages.
Applied to files:
apps/extension/package.jsonpackage.jsonpackages/claude-code-plugin/package.jsonpackages/tm-core/CHANGELOG.mdapps/cli/CHANGELOG.md
📚 Learning: 2025-09-03T12:16:15.866Z
Learnt from: Crunchyman-ralph
Repo: eyaltoledano/claude-task-master PR: 1178
File: packages/tm-core/package.json:13-64
Timestamp: 2025-09-03T12:16:15.866Z
Learning: For internal packages in the claude-task-master project, Crunchyman-ralph prefers pointing package.json "types" entries to src .ts files rather than dist .d.ts files for better developer experience (DX), as the packages are not being exported as SDKs.
Applied to files:
apps/extension/package.jsonpackage.jsonpackages/claude-code-plugin/package.json
📚 Learning: 2025-09-24T15:12:58.855Z
Learnt from: CR
Repo: eyaltoledano/claude-task-master PR: 0
File: assets/AGENTS.md:0-0
Timestamp: 2025-09-24T15:12:58.855Z
Learning: Applies to assets/**/.mcp.json : Configure the Task Master MCP server in .mcp.json under mcpServers.task-master-ai using npx task-master-ai and provide required API key env vars
Applied to files:
apps/extension/package.jsonpackage.jsonCHANGELOG.md
📚 Learning: 2025-09-17T19:09:08.882Z
Learnt from: Crunchyman-ralph
Repo: eyaltoledano/claude-task-master PR: 1211
File: jest.resolver.cjs:8-15
Timestamp: 2025-09-17T19:09:08.882Z
Learning: In the eyaltoledano/claude-task-master project, the team only uses .ts files and does not plan to use .tsx or .mts extensions, so Jest resolver and build tooling should focus on .js → .ts mapping only.
Applied to files:
apps/extension/package.json
📚 Learning: 2025-09-24T15:12:12.658Z
Learnt from: CR
Repo: eyaltoledano/claude-task-master PR: 0
File: assets/.windsurfrules:0-0
Timestamp: 2025-09-24T15:12:12.658Z
Learning: Use the task-master CLI instead of node scripts/dev.js; all functionality is available via task-master <command> and accepts the same options
Applied to files:
package.json
📚 Learning: 2025-09-09T19:13:55.652Z
Learnt from: Crunchyman-ralph
Repo: eyaltoledano/claude-task-master PR: 1194
File: .github/workflows/ci.yml:31-35
Timestamp: 2025-09-09T19:13:55.652Z
Learning: The claude-task-master project has only one package-lock.json file in the entire workspace (at the root level), so cache-dependency-path configuration is unnecessary for the npm cache in GitHub Actions.
Applied to files:
packages/claude-code-plugin/package.jsonapps/cli/CHANGELOG.md
📚 Learning: 2025-09-26T19:03:33.225Z
Learnt from: Crunchyman-ralph
Repo: eyaltoledano/claude-task-master PR: 1252
File: package.json:130-132
Timestamp: 2025-09-26T19:03:33.225Z
Learning: In the eyaltoledano/claude-task-master repository, all packages with tm prefix are internal packages that are part of the monorepo structure and are not published externally.
Applied to files:
packages/claude-code-plugin/package.jsonpackages/tm-core/CHANGELOG.mdapps/cli/CHANGELOG.md
📚 Learning: 2025-07-17T21:33:57.585Z
Learnt from: Crunchyman-ralph
Repo: eyaltoledano/claude-task-master PR: 1002
File: .changeset/puny-friends-give.md:2-3
Timestamp: 2025-07-17T21:33:57.585Z
Learning: In the eyaltoledano/claude-task-master repository, the MCP server code in mcp-server/src/ is part of the main "task-master-ai" package, not a separate "mcp-server" package. When creating changesets for MCP server changes, use "task-master-ai" as the package name.
Applied to files:
apps/mcp/CHANGELOG.md
📚 Learning: 2025-07-18T17:10:53.657Z
Learnt from: CR
Repo: eyaltoledano/claude-task-master PR: 0
File: .cursor/rules/glossary.mdc:0-0
Timestamp: 2025-07-18T17:10:53.657Z
Learning: Guidelines for integrating new features into the Task Master CLI with tagged system considerations (new_features.mdc).
Applied to files:
CHANGELOG.mdpackages/tm-core/CHANGELOG.md
📚 Learning: 2025-07-31T22:08:16.039Z
Learnt from: CR
Repo: eyaltoledano/claude-task-master PR: 0
File: .cursor/rules/taskmaster.mdc:0-0
Timestamp: 2025-07-31T22:08:16.039Z
Learning: Applies to .taskmaster/config.json : All other Taskmaster settings (model choice, max tokens, temperature, log level, custom endpoints) are managed in .taskmaster/config.json via the task-master models command or models MCP tool.
Applied to files:
CHANGELOG.md
📚 Learning: 2025-07-18T17:10:53.657Z
Learnt from: CR
Repo: eyaltoledano/claude-task-master PR: 0
File: .cursor/rules/glossary.mdc:0-0
Timestamp: 2025-07-18T17:10:53.657Z
Learning: Comprehensive reference for Taskmaster MCP tools and CLI commands with tagged task lists information (taskmaster.mdc).
Applied to files:
CHANGELOG.md
📚 Learning: 2025-07-18T17:10:12.881Z
Learnt from: CR
Repo: eyaltoledano/claude-task-master PR: 0
File: .cursor/rules/dev_workflow.mdc:0-0
Timestamp: 2025-07-18T17:10:12.881Z
Learning: Use the Taskmaster command set (`task-master` CLI or MCP tools) for all task management operations: listing, expanding, updating, tagging, and status changes.
Applied to files:
CHANGELOG.md
📚 Learning: 2025-07-18T17:10:53.657Z
Learnt from: CR
Repo: eyaltoledano/claude-task-master PR: 0
File: .cursor/rules/glossary.mdc:0-0
Timestamp: 2025-07-18T17:10:53.657Z
Learning: Describes the high-level architecture of the Task Master CLI application, including the new tagged task lists system (architecture.mdc).
Applied to files:
CHANGELOG.md
📚 Learning: 2025-07-18T17:10:53.657Z
Learnt from: CR
Repo: eyaltoledano/claude-task-master PR: 0
File: .cursor/rules/glossary.mdc:0-0
Timestamp: 2025-07-18T17:10:53.657Z
Learning: Guidelines for implementing and maintaining tests for Task Master CLI (tests.mdc).
Applied to files:
CHANGELOG.md
📚 Learning: 2025-07-18T17:18:17.759Z
Learnt from: CR
Repo: eyaltoledano/claude-task-master PR: 0
File: .cursor/rules/utilities.mdc:0-0
Timestamp: 2025-07-18T17:18:17.759Z
Learning: Applies to .taskmasterconfig : Use `.taskmasterconfig` (JSON) in the project root for storing Taskmaster configuration (excluding API keys), and manage it via the `task-master models --setup` CLI command or the `models` MCP tool.
Applied to files:
CHANGELOG.md
📚 Learning: 2025-07-18T17:10:02.683Z
Learnt from: CR
Repo: eyaltoledano/claude-task-master PR: 0
File: .cursor/rules/dev_workflow.mdc:0-0
Timestamp: 2025-07-18T17:10:02.683Z
Learning: When breaking down complex tasks in Taskmaster, use the `expand_task` command with appropriate flags (`--num`, `--research`, `--force`, `--prompt`) and review generated subtasks for accuracy.
Applied to files:
src/prompts/analyze-complexity.json
📚 Learning: 2025-07-18T17:14:29.399Z
Learnt from: CR
Repo: eyaltoledano/claude-task-master PR: 0
File: .cursor/rules/tasks.mdc:0-0
Timestamp: 2025-07-18T17:14:29.399Z
Learning: Applies to scripts/modules/task-manager.js : Use AI to generate detailed subtasks within the current tag context, considering complexity analysis for subtask counts and ensuring proper IDs for newly created subtasks.
Applied to files:
src/prompts/analyze-complexity.json
📚 Learning: 2025-07-18T17:10:12.881Z
Learnt from: CR
Repo: eyaltoledano/claude-task-master PR: 0
File: .cursor/rules/dev_workflow.mdc:0-0
Timestamp: 2025-07-18T17:10:12.881Z
Learning: When breaking down complex tasks, use the `expand_task` command with appropriate flags (`--force`, `--research`, `--num`, `--prompt`) and review generated subtasks for accuracy.
Applied to files:
src/prompts/analyze-complexity.json
📚 Learning: 2025-07-18T17:14:29.399Z
Learnt from: CR
Repo: eyaltoledano/claude-task-master PR: 0
File: .cursor/rules/tasks.mdc:0-0
Timestamp: 2025-07-18T17:14:29.399Z
Learning: Applies to scripts/modules/task-manager.js : Extract tasks from PRD documents using AI, create them in the current tag context (defaulting to 'master'), provide clear prompts to guide AI task generation, and validate/clean up AI-generated tasks.
Applied to files:
src/prompts/analyze-complexity.json
📚 Learning: 2025-07-18T17:14:29.399Z
Learnt from: CR
Repo: eyaltoledano/claude-task-master PR: 0
File: .cursor/rules/tasks.mdc:0-0
Timestamp: 2025-07-18T17:14:29.399Z
Learning: Applies to scripts/modules/task-manager.js : Each task object must include all required properties (id, title, description, status, dependencies, priority, details, testStrategy, subtasks) and provide default values for optional properties. Extra properties not in the standard schema must not be added.
Applied to files:
src/prompts/analyze-complexity.json
📚 Learning: 2025-07-31T22:08:16.039Z
Learnt from: CR
Repo: eyaltoledano/claude-task-master PR: 0
File: .cursor/rules/taskmaster.mdc:0-0
Timestamp: 2025-07-31T22:08:16.039Z
Learning: For AI-powered tools (parse_prd, analyze_project_complexity, update_subtask, update_task, update, expand_all, expand_task, add_task), inform users that these operations may take up to a minute to complete.
Applied to files:
src/prompts/analyze-complexity.json
📚 Learning: 2025-07-18T17:14:29.399Z
Learnt from: CR
Repo: eyaltoledano/claude-task-master PR: 0
File: .cursor/rules/tasks.mdc:0-0
Timestamp: 2025-07-18T17:14:29.399Z
Learning: Applies to scripts/modules/task-manager.js : The default tag 'master' must be used for all existing and new tasks unless otherwise specified.
Applied to files:
packages/tm-core/CHANGELOG.md
📚 Learning: 2025-07-18T17:10:12.881Z
Learnt from: CR
Repo: eyaltoledano/claude-task-master PR: 0
File: .cursor/rules/dev_workflow.mdc:0-0
Timestamp: 2025-07-18T17:10:12.881Z
Learning: Applies to .taskmaster/state.json : Track Taskmaster's current tag context and migration status in `.taskmaster/state.json`, which is automatically created and managed by the system.
Applied to files:
packages/tm-core/CHANGELOG.md
📚 Learning: 2025-08-03T12:13:33.875Z
Learnt from: CR
Repo: eyaltoledano/claude-task-master PR: 0
File: .cursor/rules/test_workflow.mdc:0-0
Timestamp: 2025-08-03T12:13:33.875Z
Learning: Document testing setup and progress in TaskMaster subtasks using task-master update-subtask commands
Applied to files:
packages/tm-core/CHANGELOG.md
📚 Learning: 2025-09-24T15:12:58.855Z
Learnt from: CR
Repo: eyaltoledano/claude-task-master PR: 0
File: assets/AGENTS.md:0-0
Timestamp: 2025-09-24T15:12:58.855Z
Learning: Applies to assets/.claude/settings.json : Include the recommended tool allowlist in .claude/settings.json (Edit, Bash(task-master *), Bash(git commit:*), Bash(git add:*), Bash(npm run *), mcp__task_master_ai__*)
Applied to files:
apps/cli/CHANGELOG.md
📚 Learning: 2025-07-31T21:48:00.389Z
Learnt from: Crunchyman-ralph
Repo: eyaltoledano/claude-task-master PR: 997
File: apps/extension/src/services/task-repository.ts:25-57
Timestamp: 2025-07-31T21:48:00.389Z
Learning: In the eyaltoledano/claude-task-master repository, every task is always part of a tag - there is no concept of untagged tasks. The tag system is mandatory and comprehensive, meaning all tasks exist within a tag context (with 'master' as the default tag if none specified).
Applied to files:
apps/cli/CHANGELOG.md
🪛 LanguageTool
packages/ai-sdk-provider-grok-cli/CHANGELOG.md
[grammar] ~11-~11: Hier könnte ein Fehler sein.
Context: ...null ## null ## null ## null ## null
(QB_NEW_DE)
packages/build-config/CHANGELOG.md
[grammar] ~13-~13: Hier könnte ein Fehler sein.
Context: ...null ## null ## null ## null ## null ## 1.0.1
(QB_NEW_DE)
packages/claude-code-plugin/CHANGELOG.md
[grammar] ~3-~3: Hier könnte ein Fehler sein.
Context: # @tm/claude-code-plugin ## 0.0.4 ## 0.0.3 ## 0.0.3 ## 0.0.2
(QB_NEW_DE)
🪛 markdownlint-cli2 (0.18.1)
packages/build-config/CHANGELOG.md
13-13: Multiple headings with the same content
(MD024, no-duplicate-heading)
apps/mcp/CHANGELOG.md
17-17: Multiple headings with the same content
(MD024, no-duplicate-heading)
packages/tm-bridge/CHANGELOG.md
10-10: Multiple headings with the same content
(MD024, no-duplicate-heading)
packages/tm-core/CHANGELOG.md
13-13: Multiple headings with the same content
(MD024, no-duplicate-heading)
apps/cli/CHANGELOG.md
17-17: Multiple headings with the same content
(MD024, no-duplicate-heading)
🔇 Additional comments (4)
packages/claude-code-plugin/package.json (1)
3-3: Version bump looks good.Standard patch version increment for a private internal package.
package.json (1)
3-3: Version finalization from pre-release to stable looks correct.Moving from 0.31.0-rc.0 to 0.31.0 aligns with the PR's release objectives.
apps/extension/package.json (1)
278-278: Dependency update to wildcard is correct.Changing from pinned 0.31.0-rc.0 to "*" aligns with monorepo best practices, ensuring the local workspace version is always used. As per coding standards, local packages should use wildcard version constraints.
apps/docs/package.json (1)
3-3: LGTM — version bump only.
| --- | ||
| "@task-master/cli": patch | ||
| --- | ||
|
|
||
| Fix complexity analysis prompt to ensure consistent JSON output format |
There was a problem hiding this comment.
🧩 Analysis chain
Changeset likely targets a non-existent package name.
"@task-master/cli" doesn’t match packages in this repo (e.g., task-master-ai, @tm/cli). Update the changeset to the correct package, or it won’t version/publish anything.
🏁 Script executed:
#!/bin/bash
# List all package names to choose the correct target for the changeset
fd package.json | xargs -I{} jq -r '.name + " :: " + input_filename' {} 2>/dev/null | sortLength of output: 457
I can confirm the package name "@task-master/cli" doesn't exist. Let me find where the complexity analysis code is to determine the correct target package.
---
🏁 Script executed:
```shell
#!/bin/bash
# Search for complexity analysis related code
rg -i "complexity" --type=ts --type=js --type=md -n -B2 -A2 | head -50
Length of output: 2981
Let me find the actual analyze-complexity.json file and determine which package owns it:
---
🏁 Script executed:
```shell
#!/bin/bash
# Find the analyze-complexity.json file
fd "analyze-complexity.json" -type f
Length of output: 170
---
🏁 Script executed:
```shell
#!/bin/bash
# Find the analyze-complexity.json file
fd "analyze-complexity.json"
Length of output: 35
Let me verify if there are related changes in the CLI package:
---
🏁 Script executed:
```shell
#!/bin/bash
# Check for complexity-related changes in CLI package
rg "complexity" apps/cli/src --type=ts --type=js -n
Length of output: 2552
Fix changeset package name: "@task-master/cli" does not exist.
The analyze-complexity.json file is located at src/prompts/analyze-complexity.json and belongs to the root task-master-ai package. The @tm/cli package only displays complexity data via UI functions; it doesn't own the prompt. Update the changeset to use task-master-ai as the package name.
🤖 Prompt for AI Agents
In .changeset/fix-complexity-prompt-json-output.md around lines 1 to 5, the
changeset lists the package as "@task-master/cli" which is incorrect; the prompt
file src/prompts/analyze-complexity.json belongs to the root package
"task-master-ai". Update the changeset package header to use task-master-ai
instead of @task-master/cli (i.e., replace the package name in the top YAML
section) so the changeset applies to the correct package.
| - Updated dependencies []: | ||
| - @tm/core@null | ||
|
|
||
| ## null | ||
|
|
||
| ### Patch Changes | ||
|
|
There was a problem hiding this comment.
🧩 Analysis chain
Fix malformed CHANGELOG entries (“## null”, @tm/core@null).
These sections look generated incorrectly and will confuse users. Regenerate the changelog (changesets) and remove the duplicate/“null” blocks.
Also applies to: 17-20
🏁 Script executed:
#!/bin/bash
# Show malformed headings
rg -n '^## null$|@tm/core@null' apps/cli/CHANGELOG.md -n -C2Length of output: 593
Regenerate CHANGELOG.md to remove malformed "## null" and "@tm/core@null" entries.
The script confirms systematic malformed entries throughout the file (repeated at lines 3, 10, 17, 26, 33, 40+). These are generated artifacts with broken version numbers and dependency references. Run the changeset tool to regenerate apps/cli/CHANGELOG.md or revert the CHANGELOG changes if they were accidentally committed.
🧰 Tools
🪛 markdownlint-cli2 (0.18.1)
17-17: Multiple headings with the same content
(MD024, no-duplicate-heading)
🤖 Prompt for AI Agents
In apps/cli/CHANGELOG.md around lines 14 to 20, the changelog contains
systematic malformed entries like "## null" and dependency lines such as
"@tm/core@null"; regenerate the file to remove/replace these broken version
references. Run the project's changeset/changelog generation tool (or revert the
accidental CHANGELOG.md edits) to produce a clean changelog, ensuring versions
and dependency pins are correctly populated; if regeneration isn’t possible,
manually remove the "## null" headings and fix any "@package@null" lines to
proper versioned entries or delete those lines.
| ## null | ||
|
|
||
| ### Patch Changes | ||
|
|
||
| - Updated dependencies []: | ||
| - @tm/core@null |
There was a problem hiding this comment.
Duplicated CHANGELOG section with invalid version reference.
Lines 10–15 duplicate the "## null" section from lines 3–8, including an invalid version reference to "@tm/core@null". This should be removed as duplicate content.
Remove the duplicated section:
# @tm/bridge
## null
### Patch Changes
- Updated dependencies []:
- @tm/core@null
-
-## null
-
-### Patch Changes
-
-- Updated dependencies []:
- - @tm/core@null(Note: The "@tm/core@null" version references should be corrected to actual semantic versions)
📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| ## null | |
| ### Patch Changes | |
| - Updated dependencies []: | |
| - @tm/core@null | |
| # @tm/bridge | |
| ## null | |
| ### Patch Changes | |
| - Updated dependencies []: | |
| - @tm/core@null |
🧰 Tools
🪛 markdownlint-cli2 (0.18.1)
10-10: Multiple headings with the same content
(MD024, no-duplicate-heading)
🤖 Prompt for AI Agents
In packages/tm-bridge/CHANGELOG.md around lines 10 to 15, there is a duplicated
"## null" section containing an invalid dependency reference "@tm/core@null";
remove the entire duplicated block (lines 10–15) so the file only contains the
correct changelog entries, and ensure any remaining dependency references use
valid semantic versions (replace "@tm/core@null" with the correct version or
remove the entry if not applicable).
| "system": "You are an expert software architect and project manager analyzing task complexity. Your analysis should consider implementation effort, technical challenges, dependencies, and testing requirements.\n\nIMPORTANT: For each task, provide an analysis object with ALL of the following fields:\n- taskId: The ID of the task being analyzed (positive integer)\n- taskTitle: The title of the task\n- complexityScore: A score from 1-10 indicating complexity\n- recommendedSubtasks: Number of subtasks recommended (non-negative integer; 0 if no expansion needed)\n- expansionPrompt: A prompt to guide subtask generation\n- reasoning: Your reasoning for the complexity score\n\nYour final output should be a single JSON object with a key 'complexityAnalysis' which contains an array of the analysis objects.", | ||
| "user": "{{#if hasCodebaseAnalysis}}## IMPORTANT: Codebase Analysis Required\n\nYou have access to powerful codebase analysis tools. Before analyzing task complexity:\n\n1. Use the Glob tool to explore the project structure and understand the codebase size\n2. Use the Grep tool to search for existing implementations related to each task\n3. Use the Read tool to examine key files that would be affected by these tasks\n4. Understand the current implementation state, patterns used, and technical debt\n\nBased on your codebase analysis:\n- Assess complexity based on ACTUAL code that needs to be modified/created\n- Consider existing abstractions and patterns that could simplify implementation\n- Identify tasks that require refactoring vs. greenfield development\n- Factor in dependencies between existing code and new features\n- Provide more accurate subtask recommendations based on real code structure\n\nProject Root: {{projectRoot}}\n\n{{/if}}Analyze the following tasks to determine their complexity (1-10 scale) and recommend the number of subtasks for expansion. Provide a brief reasoning and an initial expansion prompt for each.{{#if useResearch}} Consider current best practices, common implementation patterns, and industry standards in your analysis.{{/if}}\n\nTasks:\n{{{json tasks}}}\n{{#if gatheredContext}}\n\n# Project Context\n\n{{gatheredContext}}\n{{/if}}\n" | ||
| } |
There was a problem hiding this comment.
🧩 Analysis chain
Good fix; tighten output contract to be JSON-only and mirror in user prompt.
Add an explicit “JSON only, no extra text/fences” constraint and repeat it in the user prompt to reduce model drift.
Apply this minimal patch:
- "system": "You are an expert software architect and project manager analyzing task complexity. ... Your final output should be a single JSON object with a key 'complexityAnalysis' which contains an array of the analysis objects.",
+ "system": "You are an expert software architect and project manager analyzing task complexity. ... Your final output must be a single JSON object with a key 'complexityAnalysis' which contains an array of the analysis objects. Return only this JSON object—no markdown code fences, no explanations, no additional text.",Optionally also mirror in the user prompt tail:
- "{{/if}}\n"
+ "{{/if}}\n\nIMPORTANT: Return only a single JSON object with key 'complexityAnalysis' and nothing else.\n"🏁 Script executed:
#!/bin/bash
# Check callers/consumers expect the new { complexityAnalysis: [...] } shape
rg -nP -C2 "complexityAnalysis"|cat
# Locate analyze-complexity invocations that may still parse top-level arrays
rg -nP -C2 "analy[sz]e-?complexity"Length of output: 85773
Confirm prompt tightening; flag extension code inconsistency.
Verification shows the nested { complexityAnalysis: [...] } structure is already expected throughout the codebase and correctly specified in the schema. However, tightening the output constraint as suggested is still valuable:
- Add explicit "JSON only, no markdown, no extra text" to system prompt
- Mirror that constraint in user prompt tail
apps/extension/src/services/webview-manager.ts:242 and TaskMetadataSidebar.tsx:58) references complexityAnalysis.tasks, but complexityAnalysis is already an array—not an object with a .tasks property. This will cause runtime errors when the API returns the correct nested structure.
🤖 Prompt for AI Agents
In src/prompts/analyze-complexity.json around lines 47-49, tighten the output
constraint by appending "JSON only, no markdown, no extra text" to the end of
the system prompt and mirror that same phrase at the tail of the user prompt;
additionally, fix the extension mismatch by updating any callers
(apps/extension/src/services/webview-manager.ts line ~242 and
TaskMetadataSidebar.tsx line ~58) to read complexityAnalysis as an array (e.g.,
use complexityAnalysis directly or iterate it) instead of accessing
complexityAnalysis.tasks so the runtime matches the prompt's returned structure.
Crunchyman-ralph
left a comment
There was a problem hiding this comment.
lots of unnecessary changes, please rebase with origin/next
|
Stale, handled by more fresh branch: #1407 |
Description
Fixes the complexity analysis prompt to include JSON output format instruction, ensuring consistent and parseable responses from the AI model.
The prompt was missing the final instruction specifying that output should be a JSON object with a
complexityAnalysiskey. This caused inconsistent formatting that could break parsing.Type of Change
Testing
Changeset
Additional Notes
This is a minimal fix that adds one line to the system prompt to specify the expected JSON output structure.
Note
Adds a final instruction to the complexity analysis prompt to return a single JSON object with
complexityAnalysis, ensuring consistent, parseable output that fails with gemini-clisrc/prompts/analyze-complexity.jsonsystem text to require a single JSON object withcomplexityAnalysisarray.task-master-aito0.31.0,docsto0.0.9), update CHANGELOGs, remove consumed.changeset/*files, and align extension devDependency ontask-master-ai.Written by Cursor Bugbot for commit 1af7d07. This will update automatically on new commits. Configure here.
Summary by CodeRabbit
New Features
Bug Fixes
Chores