Files
projectbrain-Public/backend/test/review-attention-policy.test.ts

28 lines
1.1 KiB
TypeScript

import { ReviewStatus } from "@prisma/client";
import { describe, expect, it } from "vitest";
import { reviewRequiresHumanAttention } from "../src/repositories/reviewAttentionPolicy.js";
const review = (overrides: Partial<{ status: ReviewStatus; source: string; sourceType: string; createdBy: string }> = {}) => ({
status: ReviewStatus.pending,
source: "projectbrain_runtime",
sourceType: "documentation_update",
createdBy: "api",
...overrides,
});
describe("review attention policy", () => {
it("keeps genuine unresolved reviews visible", () => {
expect(reviewRequiresHumanAttention(review())).toBe(true);
});
it("keeps seed and smoke evidence out of the owner's attention count", () => {
expect(reviewRequiresHumanAttention(review({ createdBy: "seed" }))).toBe(false);
expect(reviewRequiresHumanAttention(review({ source: "rc41-smoke-proof" }))).toBe(false);
expect(reviewRequiresHumanAttention(review({ sourceType: "SMOKE_IMPORT" }))).toBe(false);
});
it("requires an unresolved status", () => {
expect(reviewRequiresHumanAttention(review({ status: ReviewStatus.accepted }))).toBe(false);
});
});