edsger 0.2.13 → 0.2.14

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.
@@ -179,17 +179,20 @@ async function prepareDesignContext(mcpServerUrl, mcpToken, featureId, checklist
179
179
  feedbacksContext.feedbacks.forEach((fb, idx) => {
180
180
  logInfo(` ${idx + 1}. [${fb.feedback_type}] ${fb.title} (priority: ${fb.priority}, resolved: ${fb.is_resolved || false})`);
181
181
  logInfo(` Content: ${fb.content.substring(0, 150)}...`);
182
- if (fb.reference_section) {
183
- logInfo(` Section: ${fb.reference_section}`);
182
+ if (fb.target_type) {
183
+ logInfo(` 🎯 Target Type: ${fb.target_type}`);
184
184
  }
185
- if (fb.reference_line_start) {
186
- const lineInfo = fb.reference_line_end
187
- ? `Lines ${fb.reference_line_start}-${fb.reference_line_end}`
188
- : `Line ${fb.reference_line_start}`;
189
- logInfo(` Location: ${lineInfo}`);
185
+ if (fb.document_type) {
186
+ logInfo(` 📄 Document: ${fb.document_type}`);
190
187
  }
191
- if (fb.reference_content) {
192
- logInfo(` Referenced: ${fb.reference_content.substring(0, 100)}...`);
188
+ if (fb.line_number) {
189
+ logInfo(` 📏 Line: ${fb.line_number}`);
190
+ }
191
+ else if (fb.line_range_start && fb.line_range_end) {
192
+ logInfo(` 📏 Lines: ${fb.line_range_start}-${fb.line_range_end}`);
193
+ }
194
+ if (fb.context_snippet) {
195
+ logInfo(` Referenced: ${fb.context_snippet.substring(0, 100)}...`);
193
196
  }
194
197
  });
195
198
  }
@@ -5,6 +5,8 @@
5
5
  import { PipelinePhaseOptions } from '../types/pipeline.js';
6
6
  export type { PipelinePhaseOptions };
7
7
  export type FeedbackType = 'requirement' | 'constraint' | 'preference' | 'context' | 'quality_criteria' | 'issue' | 'suggestion';
8
+ export type FeedbackTargetType = 'phase' | 'line' | 'range';
9
+ export type DocumentType = 'technical_design' | 'code' | 'test_case' | 'user_story';
8
10
  export interface Feedback {
9
11
  id: string;
10
12
  feature_id: string | null;
@@ -21,10 +23,12 @@ export interface Feedback {
21
23
  created_by: string;
22
24
  created_at: string;
23
25
  updated_at: string;
24
- reference_line_start?: number | null;
25
- reference_line_end?: number | null;
26
- reference_section?: string | null;
27
- reference_content?: string | null;
26
+ target_type?: FeedbackTargetType | null;
27
+ document_type?: DocumentType | null;
28
+ line_number?: number | null;
29
+ line_range_start?: number | null;
30
+ line_range_end?: number | null;
31
+ context_snippet?: string | null;
28
32
  }
29
33
  export interface FeedbacksContext {
30
34
  phase: string;
@@ -138,21 +138,32 @@ function formatFeedbacksList(feedbacks) {
138
138
  return sorted
139
139
  .map((feedback, idx) => {
140
140
  const priorityBadge = getPriorityBadge(feedback.priority);
141
- // Build reference info if available
142
- let referenceInfo = '';
143
- if (feedback.reference_section) {
144
- referenceInfo += `\n**Reference Section**: ${feedback.reference_section}`;
141
+ // Build context metadata section
142
+ let contextInfo = '';
143
+ // Document type
144
+ if (feedback.document_type) {
145
+ const docTypeDisplay = feedback.document_type
146
+ .split('_')
147
+ .map(word => word.charAt(0).toUpperCase() + word.slice(1))
148
+ .join(' ');
149
+ contextInfo += `\n**Document**: ${docTypeDisplay}`;
145
150
  }
146
- if (feedback.reference_line_start) {
147
- const lineRange = feedback.reference_line_end
148
- ? `Lines ${feedback.reference_line_start}-${feedback.reference_line_end}`
149
- : `Line ${feedback.reference_line_start}`;
150
- referenceInfo += `\n**Reference Location**: ${lineRange}`;
151
+ // Target type
152
+ if (feedback.target_type && feedback.target_type !== 'phase') {
153
+ contextInfo += `\n**Target Type**: ${feedback.target_type}`;
151
154
  }
152
- if (feedback.reference_content) {
153
- referenceInfo += `\n**Referenced Content**:\n\`\`\`\n${feedback.reference_content}\n\`\`\``;
155
+ // Build line reference info if available
156
+ if (feedback.line_number) {
157
+ contextInfo += `\n**Line**: ${feedback.line_number}`;
154
158
  }
155
- return `### ${idx + 1}. ${feedback.title} ${priorityBadge}\n\n${feedback.content}${referenceInfo}\n`;
159
+ else if (feedback.line_range_start && feedback.line_range_end) {
160
+ contextInfo += `\n**Lines**: ${feedback.line_range_start}-${feedback.line_range_end}`;
161
+ }
162
+ // Context snippet
163
+ if (feedback.context_snippet) {
164
+ contextInfo += `\n**Referenced Content**:\n\`\`\`\n${feedback.context_snippet}\n\`\`\``;
165
+ }
166
+ return `### ${idx + 1}. ${feedback.title} ${priorityBadge}\n\n${feedback.content}${contextInfo}\n`;
156
167
  })
157
168
  .join('\n');
158
169
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "edsger",
3
- "version": "0.2.13",
3
+ "version": "0.2.14",
4
4
  "type": "module",
5
5
  "main": "dist/index.js",
6
6
  "bin": {