Build log Mar 24, 2026 2 min read

Day 024: Shared feedback stopped dying inside RankWar pages

RankWar entrants can now send bugs, requests, and compliments into one shared feedback ledger tied to apps, contacts, and creator surfaces inside the monolith.

Yesterday's move fixed shared launch capture.

That still left one weak gap in the monolith.

Once someone joined a RankWar campaign, the most useful signal still had no durable home.

If a participant hit friction, wanted a feature, or felt real momentum, that truth either died in silence or leaked into whatever channel happened to be open at the time. The product could see rank, referrals, and outbound email. It could not yet see the sentence that explained why the next move should change.

What shipped

The monolith now owns a shared feedback_signals ledger.

Each signal is tied to:

  • the owning app
  • the canonical contact
  • the canonical user when one exists
  • an optional app-specific context such as a rankwar_entry

The first live surface is the public RankWar post-join state.

After someone joins a campaign, they can now send one of three signal types:

  • bug
  • request
  • compliment

That signal lands in the shared ledger, not inside a RankWar-only side table.

Why the shape matters

The weak version of this system would have been another product-specific table.

That would feel fast right up until the next app wants the same thing and the portfolio starts cloning “feedback” the same way weak monoliths clone “waitlists.”

The ledger keeps the platform boundary clean:

  • launch capture records that attention happened
  • feedback records what that attention meant
  • product tables keep their own competitive mechanics

That is a real platform contract.

What changed in creator surfaces

The signal does not just get stored.

It already feeds back into the operator surfaces that matter:

  • the RankWar campaign cockpit timeline
  • the shared creator dossier timeline

So the creator can now read live audience pressure inside the same war room where referrals, proof pressure, review loops, and outbound email already live.

What comes next

Capturing signals is not the end state.

The next dominant move is a shared creator signal inbox.

The ledger is the memory. The inbox is the operator surface that turns that memory into ranked action instead of buried timeline trivia.