specforge-mcp 0.10.0 → 0.11.0

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 (99) hide show
  1. package/dist/engine/actuals/backfill.d.ts +14 -0
  2. package/dist/engine/actuals/backfill.d.ts.map +1 -0
  3. package/dist/engine/actuals/backfill.js +62 -0
  4. package/dist/engine/actuals/backfill.js.map +1 -0
  5. package/dist/engine/actuals/consolidator.d.ts +12 -0
  6. package/dist/engine/actuals/consolidator.d.ts.map +1 -0
  7. package/dist/engine/actuals/consolidator.js +54 -0
  8. package/dist/engine/actuals/consolidator.js.map +1 -0
  9. package/dist/engine/actuals/git-analyzer.d.ts +23 -0
  10. package/dist/engine/actuals/git-analyzer.d.ts.map +1 -0
  11. package/dist/engine/actuals/git-analyzer.js +169 -0
  12. package/dist/engine/actuals/git-analyzer.js.map +1 -0
  13. package/dist/engine/actuals/index.d.ts +5 -0
  14. package/dist/engine/actuals/index.d.ts.map +1 -0
  15. package/dist/engine/actuals/index.js +7 -0
  16. package/dist/engine/actuals/index.js.map +1 -0
  17. package/dist/engine/actuals/wip-tracker.d.ts +25 -0
  18. package/dist/engine/actuals/wip-tracker.d.ts.map +1 -0
  19. package/dist/engine/actuals/wip-tracker.js +71 -0
  20. package/dist/engine/actuals/wip-tracker.js.map +1 -0
  21. package/dist/engine/doc-generator/executive-summary/data-extractors.d.ts +12 -0
  22. package/dist/engine/doc-generator/executive-summary/data-extractors.d.ts.map +1 -0
  23. package/dist/engine/doc-generator/executive-summary/data-extractors.js +96 -0
  24. package/dist/engine/doc-generator/executive-summary/data-extractors.js.map +1 -0
  25. package/dist/engine/doc-generator/executive-summary/executive-summary-generator.d.ts +7 -0
  26. package/dist/engine/doc-generator/executive-summary/executive-summary-generator.d.ts.map +1 -0
  27. package/dist/engine/doc-generator/executive-summary/executive-summary-generator.js +38 -0
  28. package/dist/engine/doc-generator/executive-summary/executive-summary-generator.js.map +1 -0
  29. package/dist/engine/doc-generator/executive-summary/html-template.d.ts +3 -0
  30. package/dist/engine/doc-generator/executive-summary/html-template.d.ts.map +1 -0
  31. package/dist/engine/doc-generator/executive-summary/html-template.js +53 -0
  32. package/dist/engine/doc-generator/executive-summary/html-template.js.map +1 -0
  33. package/dist/engine/doc-generator/executive-summary/index.d.ts +2 -0
  34. package/dist/engine/doc-generator/executive-summary/index.d.ts.map +1 -0
  35. package/dist/engine/doc-generator/executive-summary/index.js +3 -0
  36. package/dist/engine/doc-generator/executive-summary/index.js.map +1 -0
  37. package/dist/engine/doc-generator/executive-summary/section-builders.d.ts +18 -0
  38. package/dist/engine/doc-generator/executive-summary/section-builders.d.ts.map +1 -0
  39. package/dist/engine/doc-generator/executive-summary/section-builders.js +152 -0
  40. package/dist/engine/doc-generator/executive-summary/section-builders.js.map +1 -0
  41. package/dist/engine/doc-generator/executive-summary/svg-diagrams.d.ts +8 -0
  42. package/dist/engine/doc-generator/executive-summary/svg-diagrams.d.ts.map +1 -0
  43. package/dist/engine/doc-generator/executive-summary/svg-diagrams.js +124 -0
  44. package/dist/engine/doc-generator/executive-summary/svg-diagrams.js.map +1 -0
  45. package/dist/engine/doc-generator.d.ts.map +1 -1
  46. package/dist/engine/doc-generator.js +2 -0
  47. package/dist/engine/doc-generator.js.map +1 -1
  48. package/dist/engine/risk-analyzer/approach-analyzer.d.ts +6 -0
  49. package/dist/engine/risk-analyzer/approach-analyzer.d.ts.map +1 -0
  50. package/dist/engine/risk-analyzer/approach-analyzer.js +86 -0
  51. package/dist/engine/risk-analyzer/approach-analyzer.js.map +1 -0
  52. package/dist/engine/risk-analyzer/complexity-calculator.d.ts +6 -0
  53. package/dist/engine/risk-analyzer/complexity-calculator.d.ts.map +1 -0
  54. package/dist/engine/risk-analyzer/complexity-calculator.js +110 -0
  55. package/dist/engine/risk-analyzer/complexity-calculator.js.map +1 -0
  56. package/dist/engine/risk-analyzer/confidence-scorer.d.ts +7 -0
  57. package/dist/engine/risk-analyzer/confidence-scorer.d.ts.map +1 -0
  58. package/dist/engine/risk-analyzer/confidence-scorer.js +113 -0
  59. package/dist/engine/risk-analyzer/confidence-scorer.js.map +1 -0
  60. package/dist/engine/risk-analyzer/index.d.ts +6 -0
  61. package/dist/engine/risk-analyzer/index.d.ts.map +1 -0
  62. package/dist/engine/risk-analyzer/index.js +7 -0
  63. package/dist/engine/risk-analyzer/index.js.map +1 -0
  64. package/dist/engine/risk-analyzer/risk-generator.d.ts +6 -0
  65. package/dist/engine/risk-analyzer/risk-generator.d.ts.map +1 -0
  66. package/dist/engine/risk-analyzer/risk-generator.js +94 -0
  67. package/dist/engine/risk-analyzer/risk-generator.js.map +1 -0
  68. package/dist/engine/risk-analyzer/tradeoff-detector.d.ts +6 -0
  69. package/dist/engine/risk-analyzer/tradeoff-detector.d.ts.map +1 -0
  70. package/dist/engine/risk-analyzer/tradeoff-detector.js +128 -0
  71. package/dist/engine/risk-analyzer/tradeoff-detector.js.map +1 -0
  72. package/dist/storage/risk-store.d.ts +16 -0
  73. package/dist/storage/risk-store.d.ts.map +1 -0
  74. package/dist/storage/risk-store.js +53 -0
  75. package/dist/storage/risk-store.js.map +1 -0
  76. package/dist/tools/schemas/lifecycle.d.ts +2 -0
  77. package/dist/tools/schemas/lifecycle.d.ts.map +1 -1
  78. package/dist/tools/schemas/lifecycle.js +3 -1
  79. package/dist/tools/schemas/lifecycle.js.map +1 -1
  80. package/dist/types/actuals-tracking.d.ts +51 -0
  81. package/dist/types/actuals-tracking.d.ts.map +1 -0
  82. package/dist/types/actuals-tracking.js +2 -0
  83. package/dist/types/actuals-tracking.js.map +1 -0
  84. package/dist/types/common/tech-enums.d.ts +1 -1
  85. package/dist/types/common/tech-enums.d.ts.map +1 -1
  86. package/dist/types/docs.d.ts +44 -1
  87. package/dist/types/docs.d.ts.map +1 -1
  88. package/dist/types/index.d.ts +2 -0
  89. package/dist/types/index.d.ts.map +1 -1
  90. package/dist/types/index.js +2 -0
  91. package/dist/types/index.js.map +1 -1
  92. package/dist/types/risk.d.ts +90 -0
  93. package/dist/types/risk.d.ts.map +1 -0
  94. package/dist/types/risk.js +2 -0
  95. package/dist/types/risk.js.map +1 -0
  96. package/package.json +1 -1
  97. package/src/i18n/messages/en.json +1 -1
  98. package/src/i18n/messages/es.json +1 -1
  99. package/src/i18n/messages/pt.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"lifecycle.js","sourceRoot":"","sources":["../../../src/tools/schemas/lifecycle.ts"],"names":[],"mappings":"AAAA,wFAAwF;AAExF,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC;KACnC,IAAI,CAAC;IACJ,YAAY;IACZ,eAAe;IACf,QAAQ;IACR,aAAa;IACb,WAAW;IACX,YAAY;IACZ,KAAK;IACL,kBAAkB;IAClB,kBAAkB;IAClB,cAAc;IACd,eAAe;IACf,eAAe;IACf,SAAS;IACT,cAAc;IACd,2BAA2B;IAC3B,cAAc;CACf,CAAC;KACD,QAAQ,CACP,qPAAqP,CACtP,CAAC;AACJ,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC;KAC3B,IAAI,CAAC;IACJ,eAAe;IACf,aAAa;IACb,cAAc;IACd,oBAAoB;IACpB,aAAa;IACb,cAAc;IACd,QAAQ;CACT,CAAC;KACD,QAAQ,CACP,mHAAmH,CACpH,CAAC;AACJ,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC;KACtC,IAAI,CAAC;IACJ,oBAAoB;IACpB,iBAAiB;IACjB,OAAO;IACP,SAAS;IACT,gBAAgB;IAChB,QAAQ;IACR,cAAc;IACd,UAAU;IACV,eAAe;IACf,eAAe;IACf,WAAW;IACX,SAAS;IACT,UAAU;IACV,mBAAmB;IACnB,oBAAoB;IACpB,yBAAyB;IACzB,kBAAkB;IAClB,OAAO;IACP,UAAU;IACV,kBAAkB;IAClB,gBAAgB;IAChB,KAAK;IACL,MAAM;IACN,eAAe;IACf,oBAAoB;CACrB,CAAC;KACD,QAAQ,CACP,oYAAoY,CACrY,CAAC;AACJ,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC;KAC5B,IAAI,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,iBAAiB,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;KAC7F,QAAQ,CACP,2FAA2F,CAC5F,CAAC;AACJ,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC;KAC1B,IAAI,CAAC,CAAC,WAAW,EAAE,cAAc,EAAE,WAAW,EAAE,eAAe,CAAC,CAAC;KACjE,QAAQ,CAAC,iEAAiE,CAAC,CAAC"}
1
+ {"version":3,"file":"lifecycle.js","sourceRoot":"","sources":["../../../src/tools/schemas/lifecycle.ts"],"names":[],"mappings":"AAAA,wFAAwF;AAExF,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC;KACnC,IAAI,CAAC;IACJ,YAAY;IACZ,eAAe;IACf,QAAQ;IACR,aAAa;IACb,WAAW;IACX,YAAY;IACZ,KAAK;IACL,kBAAkB;IAClB,kBAAkB;IAClB,cAAc;IACd,eAAe;IACf,eAAe;IACf,SAAS;IACT,cAAc;IACd,2BAA2B;IAC3B,cAAc;IACd,2BAA2B;IAC3B,mBAAmB;CACpB,CAAC;KACD,QAAQ,CACP,qSAAqS,CACtS,CAAC;AACJ,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC;KAC3B,IAAI,CAAC;IACJ,eAAe;IACf,aAAa;IACb,cAAc;IACd,oBAAoB;IACpB,aAAa;IACb,cAAc;IACd,QAAQ;CACT,CAAC;KACD,QAAQ,CACP,mHAAmH,CACpH,CAAC;AACJ,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC;KACtC,IAAI,CAAC;IACJ,oBAAoB;IACpB,iBAAiB;IACjB,OAAO;IACP,SAAS;IACT,gBAAgB;IAChB,QAAQ;IACR,cAAc;IACd,UAAU;IACV,eAAe;IACf,eAAe;IACf,WAAW;IACX,SAAS;IACT,UAAU;IACV,mBAAmB;IACnB,oBAAoB;IACpB,yBAAyB;IACzB,kBAAkB;IAClB,OAAO;IACP,UAAU;IACV,kBAAkB;IAClB,gBAAgB;IAChB,KAAK;IACL,MAAM;IACN,eAAe;IACf,oBAAoB;CACrB,CAAC;KACD,QAAQ,CACP,oYAAoY,CACrY,CAAC;AACJ,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC;KAC5B,IAAI,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,iBAAiB,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;KAC7F,QAAQ,CACP,2FAA2F,CAC5F,CAAC;AACJ,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC;KAC1B,IAAI,CAAC,CAAC,WAAW,EAAE,cAAc,EAAE,WAAW,EAAE,eAAe,CAAC,CAAC;KACjE,QAAQ,CAAC,iEAAiE,CAAC,CAAC"}
@@ -0,0 +1,51 @@
1
+ import type { Actuals } from './estimation.js';
2
+ /** Actuals derived from git log analysis */
3
+ export interface DerivedActuals {
4
+ devHours: number;
5
+ reviewHours: number;
6
+ commitCount: number;
7
+ linesChanged: number;
8
+ firstCommitDate: string;
9
+ lastCommitDate: string;
10
+ completedAt: string;
11
+ source: 'git-log';
12
+ }
13
+ /** Work-in-progress actuals persisted during implementation */
14
+ export interface ActualsWip {
15
+ specId: string;
16
+ startedAt: string;
17
+ tokensOpus: number;
18
+ tokensSonnet: number;
19
+ apiCostAccumulated: number;
20
+ lastUpdated: string;
21
+ notes: string;
22
+ }
23
+ /** Result of consolidating multiple actuals sources */
24
+ export interface ConsolidatedActuals extends Actuals {
25
+ source: 'explicit' | 'wip' | 'git-derived';
26
+ confidence: 'high' | 'medium' | 'low';
27
+ }
28
+ /** Single parsed git commit for analysis */
29
+ export interface GitCommitInfo {
30
+ hash: string;
31
+ timestamp: string;
32
+ message: string;
33
+ insertions: number;
34
+ deletions: number;
35
+ }
36
+ /** Single backfill result entry */
37
+ export interface BackfillResult {
38
+ specId: string;
39
+ actuals: ConsolidatedActuals;
40
+ }
41
+ /** Report from backfill operation */
42
+ export interface BackfillReport {
43
+ totalSpecs: number;
44
+ populated: number;
45
+ skipped: number;
46
+ noGitData: number;
47
+ alreadyHadActuals: number;
48
+ totalDerivedHours: number;
49
+ results: BackfillResult[];
50
+ }
51
+ //# sourceMappingURL=actuals-tracking.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"actuals-tracking.d.ts","sourceRoot":"","sources":["../../src/types/actuals-tracking.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAE/C,4CAA4C;AAC5C,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,SAAS,CAAC;CACnB;AAED,+DAA+D;AAC/D,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,uDAAuD;AACvD,MAAM,WAAW,mBAAoB,SAAQ,OAAO;IAClD,MAAM,EAAE,UAAU,GAAG,KAAK,GAAG,aAAa,CAAC;IAC3C,UAAU,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;CACvC;AAED,4CAA4C;AAC5C,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,mCAAmC;AACnC,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,mBAAmB,CAAC;CAC9B;AAED,qCAAqC;AACrC,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,OAAO,EAAE,cAAc,EAAE,CAAC;CAC3B"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=actuals-tracking.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"actuals-tracking.js","sourceRoot":"","sources":["../../src/types/actuals-tracking.ts"],"names":[],"mappings":""}
@@ -14,7 +14,7 @@ export type AgentPlatform = 'claude-code' | 'cursor' | 'windsurf' | 'aider' | 'c
14
14
  export type SubAgentFramework = 'claude-agent-sdk' | 'crewai' | 'langgraph' | 'autogen' | 'mastra' | 'vercel-ai-sdk' | 'custom';
15
15
  export type AuditCategory = 'solid' | 'clean-code' | 'architecture' | 'security' | 'performance' | 'error-handling' | 'testing' | 'dry' | 'project-rules' | 'quality';
16
16
  export type DiagramType = 'data-flow' | 'sequence' | 'er' | 'component' | 'architecture' | 'state-machine' | 'dependency' | 'deployment';
17
- export type DocumentationType = 'user-guide' | 'api-reference' | 'readme' | 'setup-guide' | 'changelog' | 'onboarding' | 'faq' | 'architecture-doc' | 'deployment-guide' | 'database-doc' | 'help-articles' | 'release-notes' | 'runbook' | 'security-doc' | 'architecture-decision-log' | 'contributing' | 'bounded-context-map' | 'mobile-distribution-guide';
17
+ export type DocumentationType = 'user-guide' | 'api-reference' | 'readme' | 'setup-guide' | 'changelog' | 'onboarding' | 'faq' | 'architecture-doc' | 'deployment-guide' | 'database-doc' | 'help-articles' | 'release-notes' | 'runbook' | 'security-doc' | 'architecture-decision-log' | 'contributing' | 'bounded-context-map' | 'mobile-distribution-guide' | 'executive-summary';
18
18
  export type GitAction = 'create-branch' | 'generate-pr' | 'link-commits' | 'generate-changelog' | 'setup-hooks' | 'check-branch' | 'status' | 'sync-branch' | 'check-gitflow' | 'resolve-conflict' | 'breaking-check' | 'release' | 'hotfix' | 'promote';
19
19
  export type DevLifecycleCategory = 'project_management' | 'version_control' | 'ci_cd' | 'caching' | 'message_queues' | 'search' | 'file_storage' | 'realtime' | 'feature_flags' | 'observability' | 'analytics' | 'testing' | 'security' | 'api_documentation' | 'design_prototyping' | 'email_sms_notifications' | 'payments_billing' | 'ai_ml' | 'cdn_edge' | 'containerization' | 'scheduled_jobs' | 'cms' | 'i18n' | 'rate_limiting' | 'linting_formatting';
20
20
  export type LinterTool = 'eslint' | 'biome' | 'prettier' | 'stylelint' | 'oxlint' | 'ruff' | 'pylint' | 'flake8' | 'black' | 'isort' | 'mypy' | 'golangci-lint' | 'gofmt' | 'govet' | 'clippy' | 'rustfmt' | 'checkstyle' | 'spotless' | 'ktlint' | 'detekt' | 'phpstan' | 'php-cs-fixer' | 'phpcs' | 'rubocop' | 'dotnet-format' | 'roslyn-analyzers' | 'dart-analyze' | 'dart-format' | 'swiftlint' | 'swiftformat' | 'periphery' | 'android-lint' | 'editorconfig' | 'commitlint' | 'markdownlint' | 'hadolint' | 'actionlint' | 'shellcheck' | 'sqlfluff';
@@ -1 +1 @@
1
- {"version":3,"file":"tech-enums.d.ts","sourceRoot":"","sources":["../../../src/types/common/tech-enums.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tech-enums.d.ts","sourceRoot":"","sources":["../../../src/types/common/tech-enums.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { DocumentationType, NoteTag } from './common.js';
1
+ import type { DocumentationType, NoteTag, RiskLevel, Difficulty, SpecStatus } from './common.js';
2
2
  import type { SpecDiagram } from './spec.js';
3
3
  /** Metadata about a context note used for doc-health analysis. */
4
4
  export interface NoteInfo {
@@ -55,6 +55,49 @@ export interface DocTemplate {
55
55
  tone: 'technical' | 'non-technical' | 'operational' | 'collaborative';
56
56
  mermaidSupported: boolean;
57
57
  }
58
+ export interface ExecutiveSummarySpecEntry {
59
+ id: string;
60
+ title: string;
61
+ status: SpecStatus;
62
+ difficulty: Difficulty;
63
+ risk: RiskLevel;
64
+ devHours: number;
65
+ reviewHours: number;
66
+ totalCostUsd: number;
67
+ tags: string[];
68
+ actualDevHours?: number;
69
+ actualTotalCostUsd?: number;
70
+ completedAt?: string;
71
+ }
72
+ export interface AggregatedEstimation {
73
+ totalDevHours: number;
74
+ totalReviewHours: number;
75
+ totalHumanCostUsd: number;
76
+ totalApiCostUsd: number;
77
+ totalCostUsd: number;
78
+ specCount: number;
79
+ }
80
+ export interface RiskProfile {
81
+ low: number;
82
+ medium: number;
83
+ high: number;
84
+ critical: number;
85
+ highlights: string[];
86
+ }
87
+ export interface ArchitectureSnapshot {
88
+ language: string;
89
+ framework: string;
90
+ database: string;
91
+ layers: string[];
92
+ }
93
+ export interface ExecutiveSummaryData {
94
+ projectName: string;
95
+ generatedAt: string;
96
+ architecture: ArchitectureSnapshot;
97
+ specs: ExecutiveSummarySpecEntry[];
98
+ estimation: AggregatedEstimation;
99
+ riskProfile: RiskProfile;
100
+ }
58
101
  /** An embedded Mermaid diagram within a generated document. */
59
102
  export interface MermaidDiagram {
60
103
  type: 'flowchart' | 'sequence' | 'er' | 'class' | 'state' | 'graph';
@@ -1 +1 @@
1
- {"version":3,"file":"docs.d.ts","sourceRoot":"","sources":["../../src/types/docs.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAE7C,kEAAkE;AAClE,MAAM,WAAW,QAAQ;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,0DAA0D;AAC1D,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,iBAAiB,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,UAAU,EAAE,CAAC;IACvB,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,iBAAiB,EAAE,CAAC;IAC/B,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,iBAAiB,EAAE,CAAC;IAC3B,6EAA6E;IAC7E,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B,QAAQ,CAAC,EAAE,UAAU,GAAG,WAAW,GAAG,aAAa,GAAG,KAAK,CAAC;IAC5D,MAAM,CAAC,EAAE,UAAU,GAAG,MAAM,GAAG,WAAW,CAAC;IAC3C,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,uEAAuE;AACvE,MAAM,MAAM,OAAO,GAAG,iBAAiB,CAAC;AAExC,gDAAgD;AAChD,MAAM,MAAM,WAAW,GAAG,UAAU,GAAG,WAAW,GAAG,QAAQ,GAAG,WAAW,GAAG,YAAY,CAAC;AAE3F,oFAAoF;AACpF,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,iBAAiB,CAAC;IAC3B,QAAQ,EAAE,WAAW,CAAC;IACtB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,IAAI,EAAE,WAAW,GAAG,eAAe,GAAG,aAAa,GAAG,eAAe,CAAC;IACtE,gBAAgB,EAAE,OAAO,CAAC;CAC3B;AAED,+DAA+D;AAC/D,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,WAAW,GAAG,UAAU,GAAG,IAAI,GAAG,OAAO,GAAG,OAAO,GAAG,OAAO,CAAC;IACpE,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;CACf"}
1
+ {"version":3,"file":"docs.d.ts","sourceRoot":"","sources":["../../src/types/docs.ts"],"names":[],"mappings":"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"}
@@ -40,4 +40,6 @@ export * from './workflow.js';
40
40
  export * from './dynamic-migration.js';
41
41
  export * from './multi-agent.js';
42
42
  export * from './ai-native.js';
43
+ export * from './actuals-tracking.js';
44
+ export * from './risk.js';
43
45
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AACA,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,eAAe,CAAC;AAC9B,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,yBAAyB,CAAC;AACxC,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,wBAAwB,CAAC;AACvC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AACA,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,eAAe,CAAC;AAC9B,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,yBAAyB,CAAC;AACxC,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,wBAAwB,CAAC;AACvC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC;AACtC,cAAc,WAAW,CAAC"}
@@ -41,4 +41,6 @@ export * from './workflow.js';
41
41
  export * from './dynamic-migration.js';
42
42
  export * from './multi-agent.js';
43
43
  export * from './ai-native.js';
44
+ export * from './actuals-tracking.js';
45
+ export * from './risk.js';
44
46
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,sDAAsD;AACtD,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,eAAe,CAAC;AAC9B,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,yBAAyB,CAAC;AACxC,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,wBAAwB,CAAC;AACvC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,sDAAsD;AACtD,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,eAAe,CAAC;AAC9B,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,yBAAyB,CAAC;AACxC,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,wBAAwB,CAAC;AACvC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC;AACtC,cAAc,WAAW,CAAC"}
@@ -0,0 +1,90 @@
1
+ import type { Difficulty, RiskLevel, SpecScope, SpecType } from './common.js';
2
+ export type RiskCategory = 'technical' | 'integration' | 'dependency' | 'organizational' | 'security' | 'data';
3
+ export type RiskStatus = 'identified' | 'mitigating' | 'mitigated' | 'accepted' | 'materialized';
4
+ export interface SpecRisk {
5
+ id: string;
6
+ description: string;
7
+ category: RiskCategory;
8
+ probability: number;
9
+ impactUsd: number;
10
+ impactDays: number;
11
+ owner: string;
12
+ status: RiskStatus;
13
+ mitigationPlan: string;
14
+ specId: string;
15
+ }
16
+ export interface RiskRegister {
17
+ specId: string;
18
+ risks: SpecRisk[];
19
+ aggregateRiskScore: number;
20
+ generatedAt: string;
21
+ }
22
+ export type ComplexityDimension = 'technical' | 'integration' | 'testing' | 'organizational' | 'uncertainty';
23
+ export interface ComplexityScore {
24
+ dimension: ComplexityDimension;
25
+ score: number;
26
+ justification: string;
27
+ }
28
+ export interface ComplexityMatrix {
29
+ specId: string;
30
+ scores: ComplexityScore[];
31
+ overallComplexity: number;
32
+ generatedAt: string;
33
+ }
34
+ export interface TradeOffOption {
35
+ name: string;
36
+ pros: string[];
37
+ cons: string[];
38
+ riskIfChosen: string;
39
+ riskIfNotChosen: string;
40
+ estimatedCostDelta: number;
41
+ }
42
+ export interface TradeOff {
43
+ id: string;
44
+ description: string;
45
+ options: TradeOffOption[];
46
+ chosenOption: string;
47
+ rationale: string;
48
+ }
49
+ export interface ApproachAnalysis {
50
+ chosenApproach: string;
51
+ advantages: string[];
52
+ disadvantages: string[];
53
+ limitations: string[];
54
+ futureConsiderations: string[];
55
+ }
56
+ export type ConfidenceImpact = 'positive' | 'negative';
57
+ export interface ConfidenceFactor {
58
+ name: string;
59
+ impact: ConfidenceImpact;
60
+ weight: number;
61
+ description: string;
62
+ }
63
+ export interface EstimationConfidence {
64
+ level: 'low' | 'medium' | 'high';
65
+ score: number;
66
+ factors: ConfidenceFactor[];
67
+ }
68
+ /** Template for generating a risk entry from spec metadata. */
69
+ export interface RiskTemplate {
70
+ description: string;
71
+ category: RiskCategory;
72
+ probability: number;
73
+ impactDays: number;
74
+ mitigationPlan: string;
75
+ }
76
+ /** Input context for risk analysis */
77
+ export interface RiskAnalysisContext {
78
+ specId: string;
79
+ title: string;
80
+ difficulty: Difficulty;
81
+ risk: RiskLevel;
82
+ scope: SpecScope;
83
+ type: SpecType;
84
+ fileCount: number;
85
+ dependencyCount: number;
86
+ tags: string[];
87
+ language: string;
88
+ framework: string | null;
89
+ }
90
+ //# sourceMappingURL=risk.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"risk.d.ts","sourceRoot":"","sources":["../../src/types/risk.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=risk.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"risk.js","sourceRoot":"","sources":["../../src/types/risk.ts"],"names":[],"mappings":""}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "specforge-mcp",
3
- "version": "0.10.0",
3
+ "version": "0.11.0",
4
4
  "description": "SpecForge — MCP Server for Spec Driven Development. Manages specs, estimations, reverse engineering, and auto-learning across any language/framework.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -236,7 +236,7 @@
236
236
  "notImplemented": "generate_tests is not yet implemented"
237
237
  },
238
238
  "generate_docs": {
239
- "description": "Generate documentation from your plans and code — API references, README sections, architecture overviews, and more.",
239
+ "description": "Generate documentation from your plans and code — API references, README sections, architecture overviews, executive-summary HTML reports, and more.",
240
240
  "success": "Generated {count} documents",
241
241
  "notImplemented": "generate_docs is not yet implemented"
242
242
  },
@@ -236,7 +236,7 @@
236
236
  "notImplemented": "generate_tests aún no está implementado"
237
237
  },
238
238
  "generate_docs": {
239
- "description": "Generar documentación desde tus planes y código — referencias de API, secciones de README, resúmenes de arquitectura y más.",
239
+ "description": "Generar documentación desde tus planes y código — referencias de API, secciones de README, resúmenes de arquitectura, reportes HTML executive-summary y más.",
240
240
  "success": "Se generaron {count} documentos",
241
241
  "notImplemented": "generate_docs aún no está implementado"
242
242
  },
@@ -236,7 +236,7 @@
236
236
  "notImplemented": "generate_tests ainda não está implementado"
237
237
  },
238
238
  "generate_docs": {
239
- "description": "Gerar documentação a partir dos seus planos e código — referências de API, seções de README, resumos de arquitetura e mais.",
239
+ "description": "Gerar documentação a partir dos seus planos e código — referências de API, seções de README, resumos de arquitetura, relatórios HTML executive-summary e mais.",
240
240
  "success": "Gerados {count} documentos",
241
241
  "notImplemented": "generate_docs ainda não está implementado"
242
242
  },