Fix userinput latest-wins, take board links, restyle the section master
Three review findings and two things asked for on top of them. `newer()` had an operator-precedence bug that defeated latest-wins for both `effectiveStatus` and `liveDiscussion`: `<` binds tighter than `||`, so the condition was truthy for every pair whose timestamps differed at all and the reduce returned whatever the caller listed last. `listRecords` defaults to descending rkey, so a rescinded `planned` kept deciding the row. Parenthesised, and moved onto `core`'s `compareInstant` / `compareCodePoints` — one instant has several legal spellings and collation is not code-point order, so two members' tabs in different locales could otherwise read a different status off the same board. `staleGrants` counted a superseded grant even when the same moderator held a reissued one, so any board that had ever been edited asserted permanently that somebody's statuses did not count, next to the statuses of theirs that did. It now counts only grants whose member has nothing honoured, and the banner says what is actually lost. The connect form and `radial project feedback-source` now take the board's page on userinput.app as well as its `at://` URI — `feedbackSourceUri` in `@radial/sidecar` is one parser for both, and the record still holds the URI. A `/d/` discussion link is refused rather than coerced: the DID in one is its author, not the board's owner. `feedbackSourceLink` spells the page back out for the link-out. The section itself is drawn with the unit row's furniture — author disc, tail, title, drawer — instead of a section heading and a loose paragraph per item. The body stays a stranger's prose: quoted in `.brief`, verbatim, through no markdown pass. Row-level pluralisation fixed while there. Co-Authored-By: claudebot.disnetdev.com (did:plc:n6ku5xddiuguwze3f356evla) <claudebot.disnetdev.com@noreply.radial>