Skip to main content

Syntax

sudocode feedback list [options]

Description

The feedback list command displays feedback entries from your project with powerful filtering options. Use this to:
  • View all feedback across your project
  • Find feedback for a specific spec or issue
  • Filter by feedback type (comment, suggestion, request)
  • Show only active or dismissed feedback
  • Identify feedback with stale anchors
Each feedback entry shows:
  • Feedback ID and status (active/dismissed)
  • Anchor status (valid/relocated/stale)
  • Source issue and target spec
  • Feedback type and location
  • Content preview (first 80 characters)
By default, shows up to 50 feedback entries. Use --limit to adjust.

Options

--issue
string
Filter by source issueExample: --issue ISSUE-001Shows only feedback provided by this issue.
--spec
string
Filter by target specExample: --spec SPEC-001Shows only feedback received by this spec.
--type
string
Filter by feedback typeExample: --type requestValid types: comment, suggestion, request
--dismissed
boolean
Filter by dismissed statusExample: --dismissed true or --dismissed false
  • true - Show only dismissed feedback
  • false - Show only active feedback
  • Omit to show both
--limit
number
default:"50"
Maximum number of resultsExample: --limit 100Limits the number of feedback entries returned.

Examples

List All Feedback

Show all feedback in the project:
sudocode feedback list
Found 5 feedback item(s):

FB-001 [active] [valid] ISSUE-001 → SPEC-001
  Type: request | Authentication Flow (line 42)
  Token expiration policy not specified. Should we use fixed or sliding wi...

FB-002 [active] [valid] ISSUE-005 → SPEC-001
  Type: comment | OAuth 2.0 Flow (line 30)
  OAuth flow implemented successfully with PKCE extension

FB-003 [dismissed] [valid] ISSUE-010 → SPEC-002
  Type: suggestion | API Endpoints (line 78)
  Consider adding rate limiting to prevent abuse: 10 requests/minute per c...

FB-004 [active] [stale] ISSUE-015 → SPEC-001
  Type: request | Error Handling (line 45)
  Need clarification on error response format

FB-005 [active] [relocated] ISSUE-020 → SPEC-003
  Type: suggestion | Data Model (line 92)
  Consider using enum type instead of string constants

Filter by Spec

Show all feedback for a specific spec:
sudocode feedback list --spec SPEC-001
Found 3 feedback item(s):

FB-001 [active] [valid] ISSUE-001 → SPEC-001
  Type: request | Authentication Flow (line 42)
  Token expiration policy not specified. Should we use fixed or sliding wi...

FB-002 [active] [valid] ISSUE-005 → SPEC-001
  Type: comment | OAuth 2.0 Flow (line 30)
  OAuth flow implemented successfully with PKCE extension

FB-004 [active] [stale] ISSUE-015 → SPEC-001
  Type: request | Error Handling (line 45)
  Need clarification on error response format

Filter by Issue

Show all feedback provided by a specific issue:
sudocode feedback list --issue ISSUE-001
Found 2 feedback item(s):

FB-001 [active] [valid] ISSUE-001 → SPEC-001
  Type: request | Authentication Flow (line 42)
  Token expiration policy not specified. Should we use fixed or sliding wi...

FB-006 [active] [valid] ISSUE-001 → SPEC-002
  Type: suggestion | API Design (line 15)
  Consider using REST conventions for endpoint naming

Filter by Type

Show only request-type feedback:
sudocode feedback list --type request
Found 2 feedback item(s):

FB-001 [active] [valid] ISSUE-001 → SPEC-001
  Type: request | Authentication Flow (line 42)
  Token expiration policy not specified. Should we use fixed or sliding wi...

FB-004 [active] [stale] ISSUE-015 → SPEC-001
  Type: request | Error Handling (line 45)
  Need clarification on error response format

Show Only Active Feedback

Exclude dismissed feedback:
sudocode feedback list --dismissed false
Found 4 feedback item(s):

FB-001 [active] [valid] ISSUE-001 → SPEC-001
  Type: request | Authentication Flow (line 42)
  Token expiration policy not specified. Should we use fixed or sliding wi...

FB-002 [active] [valid] ISSUE-005 → SPEC-001
  Type: comment | OAuth 2.0 Flow (line 30)
  OAuth flow implemented successfully with PKCE extension

FB-004 [active] [stale] ISSUE-015 → SPEC-001
  Type: request | Error Handling (line 45)
  Need clarification on error response format

FB-005 [active] [relocated] ISSUE-020 → SPEC-003
  Type: suggestion | Data Model (line 92)
  Consider using enum type instead of string constants

Show Only Dismissed Feedback

View resolved feedback:
sudocode feedback list --dismissed true
Found 1 feedback item(s):

FB-003 [dismissed] [valid] ISSUE-010 → SPEC-002
  Type: suggestion | API Endpoints (line 78)
  Consider adding rate limiting to prevent abuse: 10 requests/minute per c...

Combine Multiple Filters

Show active requests for a specific spec:
sudocode feedback list --spec SPEC-001 --type request --dismissed false
Found 2 feedback item(s):

FB-001 [active] [valid] ISSUE-001 → SPEC-001
  Type: request | Authentication Flow (line 42)
  Token expiration policy not specified. Should we use fixed or sliding wi...

FB-004 [active] [stale] ISSUE-015 → SPEC-001
  Type: request | Error Handling (line 45)
  Need clarification on error response format

Increase Result Limit

Show more results:
sudocode feedback list --limit 100
Found 87 feedback item(s):

FB-001 [active] [valid] ISSUE-001 → SPEC-001
  Type: request | Authentication Flow (line 42)
  ...
[... 86 more entries ...]

JSON Output

Get machine-readable output:
sudocode --json feedback list --spec SPEC-001
[
  {
    "id": "FB-001",
    "issue_id": "ISSUE-001",
    "spec_id": "SPEC-001",
    "feedback_type": "request",
    "content": "Token expiration policy not specified. Should we use fixed or sliding window?",
    "agent": "alice",
    "anchor": {
      "line_number": 42,
      "section_heading": "Authentication Flow",
      "text_snippet": "Token expiration policy",
      "anchor_status": "valid",
      "context_before": "...",
      "context_after": "..."
    },
    "dismissed": false,
    "created_at": "2025-10-29T10:15:00Z",
    "updated_at": "2025-10-29T10:15:00Z"
  },
  {
    "id": "FB-002",
    "issue_id": "ISSUE-005",
    "spec_id": "SPEC-001",
    "feedback_type": "comment",
    "content": "OAuth flow implemented successfully with PKCE extension",
    "agent": "bob",
    "anchor": {
      "line_number": 30,
      "section_heading": "OAuth 2.0 Flow",
      "text_snippet": "OAuth implementation",
      "anchor_status": "valid",
      "context_before": "...",
      "context_after": "..."
    },
    "dismissed": false,
    "created_at": "2025-10-29T11:00:00Z",
    "updated_at": "2025-10-29T11:00:00Z"
  }
]

Understanding Output

Status Indicators

Each feedback entry shows two status indicators:

Feedback Status

[active] or [dismissed]
  • active - Feedback needs attention
  • dismissed - Feedback has been addressed or resolved
Dismissed feedback appears in gray.

Anchor Status

[valid], [relocated], or [stale]
  • valid (green) - Anchor is accurate
  • relocated (yellow) - Content moved, anchor updated
  • stale (red) - Anchor may be invalid due to changes
Use feedback stale to find all stale anchors.

Output Format

Each entry shows:
FB-001 [active] [valid] ISSUE-001 → SPEC-001
  Type: request | Authentication Flow (line 42)
  Token expiration policy not specified. Should we use fixed or sliding wi...
Breaking this down:
  • FB-001 - Feedback ID
  • [active] - Not dismissed
  • [valid] - Anchor is accurate
  • ISSUE-001 → SPEC-001 - From issue to spec
  • Type: request - Feedback type
  • Authentication Flow (line 42) - Location in spec
  • Token expiration… - Content preview (truncated at 80 chars)

Common Workflows

Review All Active Feedback

See what needs attention:
1

List active feedback

sudocode feedback list --dismissed false
2

Review each item

sudocode feedback show FB-001
3

Address or dismiss

Update spec or dismiss feedback as appropriate

Audit Spec Quality

Check all feedback for a spec:
1

List feedback for spec

sudocode feedback list --spec SPEC-001
2

Identify patterns

Look for recurring issues or ambiguities
3

Update spec

Improve spec based on feedback
4

Dismiss addressed feedback

sudocode feedback dismiss FB-001

Find Requests Needing Response

Show all unanswered clarification requests:
sudocode feedback list --type request --dismissed false

Track Issue Feedback

See all feedback provided by an issue:
sudocode feedback list --issue ISSUE-042
This shows what ambiguities or suggestions the issue discovered during implementation.

Identify Stale Anchors

Find feedback that may need relocation:
sudocode feedback list | grep stale
Or use the dedicated command:
sudocode feedback stale

Filtering Strategies

By Source

Find feedback from implementation
# All feedback from an issue
sudocode feedback list --issue ISSUE-001

# All feedback from multiple issues (scripting)
for issue in ISSUE-001 ISSUE-002; do
  sudocode feedback list --issue "$issue"
done

By Target

Find feedback for a spec
# All feedback on a spec
sudocode feedback list --spec SPEC-001

# Active feedback only
sudocode feedback list --spec SPEC-001 --dismissed false

By Type

Filter by feedback nature
# Questions needing answers
sudocode feedback list --type request --dismissed false

# Implementation notes
sudocode feedback list --type comment

# Improvement suggestions
sudocode feedback list --type suggestion --dismissed false

By Status

Active vs resolved
# Open feedback
sudocode feedback list --dismissed false

# Resolved feedback (audit trail)
sudocode feedback list --dismissed true

Scripting Examples

Generate Feedback Report

# Count feedback by type
echo "Active feedback by type:"
for type in comment suggestion request; do
  count=$(sudocode --json feedback list --type "$type" --dismissed false | jq 'length')
  echo "$type: $count"
done

Find Specs Needing Attention

# Specs with multiple active requests
sudocode --json feedback list --type request --dismissed false | \
  jq -r '.[] | .spec_id' | \
  sort | uniq -c | sort -rn | head

Weekly Feedback Digest

# List all feedback added this week
sudocode --json feedback list | \
  jq --arg week_ago "$(date -d '7 days ago' '+%Y-%m-%dT%H:%M:%SZ')" \
  '.[] | select(.created_at > $week_ago)'

Common Questions

The list view shows a preview (first 80 characters). To see full content:
sudocode feedback show FB-001
Not directly via CLI options. Use JSON output with jq:
sudocode --json feedback list | jq '.[] | select(.agent == "alice")'
  • Dismissed - Marked as addressed but retained for audit trail
  • Deleted - No delete command exists; dismiss instead to preserve history
Use JSON output with jq filtering:
sudocode --json feedback list | \
  jq '.[] | select(.created_at > "2025-10-01")'
Use the dedicated command:
sudocode feedback stale
Or filter the list:
sudocode --json feedback list | jq '.[] | select(.anchor.anchor_status == "stale")'
Yes, limit is applied after all filters. If you filter by spec and set limit to 10, you’ll get up to 10 results for that spec.

Troubleshooting

Cause: Filters are too restrictiveSolution: Try removing filters one at a time:
# Start broad
sudocode feedback list

# Add filters gradually
sudocode feedback list --spec SPEC-001
sudocode feedback list --spec SPEC-001 --dismissed false
Cause: Line numbers shifted due to edits elsewhere in specSolution: Relocate the anchor:
sudocode feedback relocate FB-001 --line 45
Cause: Default limitSolution: Increase the limit:
sudocode feedback list --limit 1000
Cause: CLI doesn’t support multiple values for filtersSolution: Use shell scripting:
for spec in SPEC-001 SPEC-002 SPEC-003; do
  sudocode feedback list --spec "$spec"
done

feedback add

Add new feedback

feedback show

View feedback details

feedback dismiss

Dismiss feedback

feedback stale

Find stale anchors

spec show

View spec with feedback

issue show

View issue with feedback

Next Steps

1

List active feedback

sudocode feedback list --dismissed false
2

Review details

sudocode feedback show FB-001
3

Address feedback

Update spec or respond to requests
4

Dismiss when done

sudocode feedback dismiss FB-001

Feedback System Concept Guide

Learn more about the feedback system and bidirectional learning