Skip to content

feedback: openspec feedback dumps full message into the title and leaves the body empty (see #1642) #1643

Closed

Description

@clay-good

Problem

openspec feedback can produce malformed GitHub issues. See #1642: a ~400‑character run‑on title and a body containing nothing but the metadata footer.

The cause is in src/commands/feedback.ts:

  • formatTitle(message) returns `Feedback: ${message}` — the entire <message> positional arg becomes the title, with no length cap and no newline stripping.
  • formatBody(bodyText?) only ever contains the optional --body text plus metadata. The message is never written to the body.

So any caller that puts its full report into <message> and omits --body (common in headless/agent runs) gets a giant title and an empty body. The output quality depends entirely on the caller splitting title vs. body correctly, and nothing in the CLI enforces it.

Goal

Make the CLI produce a short, single‑line title and a detailed‑but‑simple body no matter how the caller passes its input, so no feedback content is ever lost or dumped into the title.

Proposed changes

All in src/commands/feedback.ts (plus spec/docs sync). Robust at the CLI level — not reliant on agent behavior.

  1. Derive a clean title.

    • Take the first line (or first sentence) of <message>, collapse whitespace, strip newlines, and cap at ~72 chars with an ellipsis when longer.
    • Keep the Feedback: prefix.
    • Titles are single‑line by construction.
  2. Always put the full <message> in the body.

    • Body = full <message> + optional --body detail + metadata footer.
    • Guarantees the body always has substance, and nothing from <message> is lost even when it was too long for the title.
  3. Give the body a light, consistent structure.

    • Simple sections (e.g. ## Summary, optional ## Details) followed by the existing --- metadata footer.
    • Keeps contents detailed but skimmable.
  4. Sync the surfaces.

    • Update the cli-feedback spec (openspec/specs/cli-feedback/spec.md) scenarios — the current "Simple feedback submission" scenario asserts the whole message becomes the title.
    • Update docs/cli.md and the /feedback skill/workflow template (src/core/templates/workflows/feedback.ts) to reflect the title‑derivation behavior.

Acceptance criteria

  • openspec feedback "<long multi-sentence message>" (no --body) → title is a short single line; the full message appears in the body.
  • openspec feedback "short" --body "detail" → short title; body contains both the message and the detail.
  • Titles never contain newlines and never exceed the cap.
  • The manual‑fallback path (no gh / unauthenticated) prints the same cleaned title and body.

Reference

Activity

  1. self-assigned this
    on Aug 13, 2026
  2. added
    backlogReal issue or feature queued for later implementation
    on Aug 28, 2026
  3. clay-good commented on Sep 25, 2026

    @clay-good
    CollaboratorAuthor

    Fixed on main by #1653, released in v1.11.0. openspec feedback now collapses whitespace in the title and caps it at 72 characters with an ellipsis. The full message always goes in the body under ## Summary, with --body text under ## Details. See src/commands/feedback.ts.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

backlogReal issue or feature queued for later implementationdesign-reviewNeeds product/design decision

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions