Skip to content

feat(view): copy as a for-sale chat post — condition next to the name, system headers, pending marker (0.4.1) - #7

Merged
mabry1985 merged 1 commit into
mainfrom
feat/chat-copy-format
Sep 13, 2026
Merged

feat(view): copy as a for-sale chat post — condition next to the name, system headers, pending marker (0.4.1)#7
mabry1985 merged 1 commit into
mainfrom
feat/chat-copy-format

Conversation

@mabry1985

Copy link
Copy Markdown
Member

Copy list → a for-sale chat post

The copied text now matches how the operator actually posts it: system header, (all NoS) when the group shares a condition, Name (condition) — $price per line, pending/listed items under their own marker, no Markdown syntax. Condition suggestions (NoS, NIB, …) in the dialog and inline edit.

Node harness pins the exact output; smoke-tested in the local harness.

🤖 Generated with Claude Code

https://claude.ai/code/session_011UQ33xXfygwEkzbbJx3YwZ

…, system headers, pending marker

Josh pasted how he actually reshaped the copied list for his game group chat, and asked for the
condition next to the name before the price. The copied text now IS that post:

    Warhammer 40K
    (all NoS)
    Wartrakk — $20
    Land Speeder — $40
    (Pending)
    Intercessor Squad — $30

    Warhammer AoS
    Helsmiths of Hashut Army Box (NIB) — $170

- Plain system header (no `##`), no bullets, no lot line, no category — chat apps do not
  render Markdown and he removed all of it by hand.
- `Name (condition) — $price`; when every item in a system shares one condition it collapses
  to `(all <condition>)` under the header, as he wrote it.
- Items already pending / listed / sold are gathered after a `(Pending)` / `(Listed)` /
  `(Sold)` marker inside their system, as he grouped them.
- Prices print as whole dollars when whole ($20), with cents otherwise ($57.69); an unpriced
  item prints without a price.
- Condition is the existing `condition` field; the item dialog and inline edit now suggest
  the usual codes (NoS, NIB, Sealed, Assembled, Primed, Painted, Used) plus whatever is
  already in use (`GET /conditions`). The button reads "Copy list".
- Node harness pins the exact document; 128 tests. 0.4.1.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011UQ33xXfygwEkzbbJx3YwZ
@mabry1985
mabry1985 merged commit 2fafd1b into main Sep 13, 2026
2 checks passed
@mabry1985
mabry1985 deleted the feat/chat-copy-format branch September 13, 2026 06:29

@protoreview protoreview Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

QA panel review — WARN

code-review-structural · head a187c33854c4 · formal

Low-risk PR: swaps the copy-to-clipboard output from a markdown document to a plain-text for-sale list and updates the button label accordingly. The one surviving finding is a stale hint string on the system field that still references "copied Markdown" — a one-line fix. The panel did not disagree; the single finding was confirmed by the verifier. Verification note: the structural pass ran but the file was truncated at 20 000 chars, so lines beyond that (including the system-field definition at line 363) were not directly inspected; the finding rests on the diff's silence rather than a direct read. No prior requests to disposition.

Findings

Severity Location Finding Verified
🟡 minor view.py:363 The system field's hint still says 'copied Markdown' but this PR changed the copy from markdown to a plain-text for-sale list, so the hint now misdescribes the… confirmed
findings JSON (machine-readable)
[
  {
    "file": "view.py",
    "line": 363,
    "severity": "minor",
    "category": "conventions",
    "claim": "The system field's hint still says 'copied Markdown' but this PR changed the copy from markdown to a plain-text for-sale list, so the hint now misdescribes the output format the user gets.",
    "evidence": "field(\"system\", \"Game system\", it.system || \"\", { placeholder: \"Warhammer 40K, Blood Bowl\u2026\", list: \"systems-dl\", hint: \"Optional. Lists and copied Markdown group by it.\" }) +",
    "verdict": "confirmed",
    "note": "Diff confirms mdDoc\u2192chatDoc and 'Copy as Markdown'\u2192'Copy list'; the system-field hint line is absent from the diff (unchanged). Exact hint text not directly verified (file truncated at 20k chars, line 363 beyond that), but the diff proves the hint was not updated alongside the format change."
  }
]

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant