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

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