Skip to content

feat(portal): visible zero-proposals, durable triage, local link chips (27 S.3/S.4)#177

Closed
bryanmatthewsimonson wants to merge 1 commit into
claude/phase-27-s1-corpus-relationshipsfrom
claude/phase-27-s3-proposal-ux
Closed

feat(portal): visible zero-proposals, durable triage, local link chips (27 S.3/S.4)#177
bryanmatthewsimonson wants to merge 1 commit into
claude/phase-27-s1-corpus-relationshipsfrom
claude/phase-27-s3-proposal-ux

Conversation

@bryanmatthewsimonson

Copy link
Copy Markdown
Owner

Summary

Phase-27 slices S.3/S.4 — the visibility half of the corpus-proposals fix. Stacked on #176.

  • Zero is a result: the Proposals section always renders with its open count; a zero-proposal run says so explicitly.
  • Triage survives reopen: Accept/Dismiss persist on the brief record (record.triage, keyed by the exported proposalKey — endpoint-order-insensitive, pin-tested). Accepted rows render checked; dismissed rows fold into a collapsed, still-reachable section (accept from there clears the dismissal). The human-accept firewall is unchanged.
  • Local link chips: accepted relationship proposals (and hand-drawn links) that haven't published yet now appear on the case-view claims list as (local) chips — including a local ⚠ contradicted badge. Previously an accepted link produced no visible change anywhere on the dashboard.

Tests: 1,791 green (1 new) · build clean · lint 0 errors.

Next

The forensic F ladder (misattribution + baselines) follows on its own stack.

🤖 Generated with Claude Code

…s (27 S.3/S.4)

Phase 27 slices S.3/S.4 — the "accepted a proposal, then what?" fixes.

- synthesis-review: the Proposals heading always renders with its open
  count; a zero-proposal run says "0 proposals" instead of rendering
  nothing (absence disclosed, not implied). Accept/Dismiss now persist
  on the brief record (record.triage, keyed by the exported
  proposalKey — the filterProposals dedup identity, endpoint-order
  insensitive and pin-tested), so reopening the case no longer
  resurrects triaged rows: accepted rows render checked, dismissed
  rows fold into a collapsed Dismissed section that stays reachable
  (accepting from there clears the dismissal). Nothing auto-applies —
  unchanged.
- case-view: claims now also show LOCAL relationship links (accepted
  proposals and hand-drawn links not yet published) as "(local)"
  chips beside the published-30055 chips, including a local
  ⚠ contradicted badge — closing the hole where accepting a link
  produced no visible change anywhere on the dashboard (T1.3 residue).
  Canonical-ref matching both sides; published links stay wire-chip
  territory.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@bryanmatthewsimonson

Copy link
Copy Markdown
Owner Author

Landed on main via the #183 consolidation merge (the stacked-merge cascade closed/retargeted intermediates; every commit from this PR is in main).

@bryanmatthewsimonson
bryanmatthewsimonson deleted the claude/phase-27-s3-proposal-ux branch July 18, 2026 05:19
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