import { type SeenMarker } from "../state/seen-comments.mts"; import { type NormalizedBotUsernames } from "./authors.mts"; import type { Review } from "../types.mts"; interface ReviewVisibility { visible: Review[]; toMarkSeen: Review[]; } export declare function classifyReviewsForDisplay(reviews: Review[], seenMap: Map): ReviewVisibility; /** * Bot CHANGES_REQUESTED reviews are different from every other surfaceable * item: the agent — not the author — is responsible for dismissing them via * `--dismiss-review-ids` after a fix push. If the agent forgets, the review * stays in `CHANGES_REQUESTED` state and silently blocks the PR. * * The standard seen-gate (`classifyReviewsForDisplay`) suppresses items with * unchanged bodies, which would also drop the bot CR ID from the * `--dismiss-review-ids` flag — making the bug irrecoverable. This function * keeps every bot CR in the visible set on every tick, using the seen-map * only to pick the render form: * * - `new` / `edited` → full bullet (caller renders body normally). * - `unchanged` → flagged `staleBotCr: true` so the formatter emits a terse * one-line reminder. * * Human-authored CR reviews continue to flow through the standard seen-gate. */ export declare function classifyChangesRequestedReviewsForDisplay(reviews: Review[], seenMap: Map, botUsernames: NormalizedBotUsernames, repeatBotReviews?: boolean): ReviewVisibility; export {};