news: Pete stops repeating what TwinBee just said in the room

Priority tier is the only thing that makes Pete post a live Matrix beat,
and the only two priority facts gogobee filed - zone_first and death -
are both moments TwinBee narrates in-room as they happen. Every live beat
was an echo. File them as bulletins: still on the site, still in the
daily digest, no second telling to the people who were there.
This commit is contained in:
prosolis
2026-07-12 22:01:09 -07:00
parent e377e0c85c
commit 1cbd68a718
2 changed files with 20 additions and 9 deletions

View File

@@ -579,9 +579,14 @@ func markAdventureDead(userID id.UserID, source, location string) {
emitDeathNews(userID, location)
}
// emitDeathNews files a PRIORITY death dispatch to Pete's adventure news. No-op
// emitDeathNews files a BULLETIN death dispatch to Pete's adventure news. No-op
// unless the seam is enabled. Uses the character name (never the Matrix handle);
// skips silently if the name is unknown.
//
// Bulletin, not priority: the room watched the character go down in TwinBee's
// narration, and a priority fact is what makes Pete post a live beat — he'd be
// breaking the news to the people who were there. The site row and the digest
// still carry it.
func emitDeathNews(userID id.UserID, location string) {
// Gate before the char lookups: markAdventureDead fires per-member on a
// party wipe and in the sim harness, so skip the DB reads when disabled.
@@ -597,7 +602,7 @@ func emitDeathNews(userID id.UserID, location string) {
emitFact(peteclient.Fact{
GUID: fmt.Sprintf("death:%s:%d", eventToken(userID, fmt.Sprintf("%d", ts)), ts),
EventType: "death",
Tier: "priority",
Tier: "bulletin",
Subject: name,
Zone: location,
Level: lvl,