diff --git a/e2e/smoke/reporter-variations.spec.ts b/e2e/smoke/reporter-variations.spec.ts
index bf0cbb41..1fcf6cf1 100644
--- a/e2e/smoke/reporter-variations.spec.ts
+++ b/e2e/smoke/reporter-variations.spec.ts
@@ -35,9 +35,6 @@ test.describe("Reporter Variations E2E", () => {
await expect(sidebar).toContainText("John Guest");
await expect(sidebar).toContainText("john@guest.com");
-
- // Timeline event for guest
- await expect(page.getByText("Issue reported by John Guest")).toBeVisible();
});
test("should display guest with name only correctly", async ({ page }) => {
@@ -46,7 +43,6 @@ test.describe("Reporter Variations E2E", () => {
const sidebar = page.getByTestId("issue-sidebar");
await expect(sidebar).toContainText("Only Name");
- await expect(page.getByText("Issue reported by Only Name")).toBeVisible();
});
test("should display guest with email only correctly", async ({ page }) => {
@@ -56,9 +52,6 @@ test.describe("Reporter Variations E2E", () => {
await expect(sidebar).toContainText("Anonymous");
await expect(sidebar).toContainText("only@email.com");
- await expect(
- page.getByText("Issue reported by only@email.com")
- ).toBeVisible();
});
test("should display fully anonymous reporter correctly", async ({
@@ -69,7 +62,6 @@ test.describe("Reporter Variations E2E", () => {
const sidebar = page.getByTestId("issue-sidebar");
await expect(sidebar).toContainText("Anonymous");
- await expect(page.getByText("Issue reported by Guest")).toBeVisible();
});
test("should display invited user reporter correctly (legacy logic)", async ({
diff --git a/src/components/issues/IssueTimeline.tsx b/src/components/issues/IssueTimeline.tsx
index f30463d6..1d11d788 100644
--- a/src/components/issues/IssueTimeline.tsx
+++ b/src/components/issues/IssueTimeline.tsx
@@ -52,12 +52,6 @@ function TimelineItem({ event }: { event: TimelineEvent }): React.JSX.Element {
{isSystem ? (
-
- {event.author.name}
-
{event.content}
•
({
db: mockDeep(),
@@ -143,7 +142,6 @@ describe("Issue Service", () => {
await createIssue(params);
- expect(createTimelineEvent).toHaveBeenCalled();
expect(createNotification).toHaveBeenCalledWith(
{
type: "new_issue",
diff --git a/src/services/issues.ts b/src/services/issues.ts
index cd89b207..98b5a510 100644
--- a/src/services/issues.ts
+++ b/src/services/issues.ts
@@ -132,15 +132,6 @@ export async function createIssue({
if (!issue) throw new Error("Issue creation failed");
- // 3. Create Timeline Event
- const reporterDesc =
- reporterName ?? reporterEmail ?? (reportedBy ? "Member" : "Guest");
- await createTimelineEvent(
- issue.id,
- `Issue reported by ${reporterDesc}`,
- tx
- );
-
log.info(
{
issueId: issue.id,
diff --git a/src/test/integration/supabase/issue-services.test.ts b/src/test/integration/supabase/issue-services.test.ts
index b6b1cbf8..915ccd7e 100644
--- a/src/test/integration/supabase/issue-services.test.ts
+++ b/src/test/integration/supabase/issue-services.test.ts
@@ -215,7 +215,7 @@ describe("Issue Service Functions (Integration)", () => {
});
describe("createIssue with reporter variations", () => {
- it("should create an issue with guest reporter info and correct timeline message", async () => {
+ it("should create an issue with guest reporter info", async () => {
const db = await getTestDb();
const guestInfo = {
@@ -233,7 +233,7 @@ describe("Issue Service Functions (Integration)", () => {
expect(issue.reporterEmail).toBe(guestInfo.reporterEmail);
expect(issue.reportedBy).toBeNull();
- // Verify timeline event
+ // Verify no initial timeline event is created
const events = await db.query.issueComments.findMany({
where: eq(issueComments.issueId, issue.id),
orderBy: desc(issueComments.createdAt),
@@ -242,13 +242,10 @@ describe("Issue Service Functions (Integration)", () => {
const reportEvent = events.find(
(e: any) => e.isSystem && e.content.includes("Issue reported by")
);
- expect(reportEvent).toBeDefined();
- expect(reportEvent?.content).toBe(
- `Issue reported by ${guestInfo.reporterName}`
- );
+ expect(reportEvent).toBeUndefined();
});
- it("should create an anonymous issue and correct timeline message", async () => {
+ it("should create an anonymous issue", async () => {
const db = await getTestDb();
const anonInfo = {
@@ -263,6 +260,7 @@ describe("Issue Service Functions (Integration)", () => {
expect(issue.reporterEmail).toBeNull();
expect(issue.reportedBy).toBeNull();
+ // Verify no initial timeline event is created
const events = await db.query.issueComments.findMany({
where: eq(issueComments.issueId, issue.id),
orderBy: desc(issueComments.createdAt),
@@ -271,10 +269,10 @@ describe("Issue Service Functions (Integration)", () => {
const reportEvent = events.find(
(e: any) => e.isSystem && e.content.includes("Issue reported by")
);
- expect(reportEvent?.content).toBe("Issue reported by Guest");
+ expect(reportEvent).toBeUndefined();
});
- it("should create a member issue and correct timeline message", async () => {
+ it("should create a member issue", async () => {
const db = await getTestDb();
const memberInfo = {
@@ -290,6 +288,7 @@ describe("Issue Service Functions (Integration)", () => {
expect(issue.reporterName).toBeNull();
expect(issue.reporterEmail).toBeNull();
+ // Verify no initial timeline event is created
const events = await db.query.issueComments.findMany({
where: eq(issueComments.issueId, issue.id),
orderBy: desc(issueComments.createdAt),
@@ -298,7 +297,7 @@ describe("Issue Service Functions (Integration)", () => {
const reportEvent = events.find(
(e: any) => e.isSystem && e.content.includes("Issue reported by")
);
- expect(reportEvent?.content).toBe("Issue reported by Member");
+ expect(reportEvent).toBeUndefined();
});
});
});
diff --git a/src/test/integration/supabase/issues.test.ts b/src/test/integration/supabase/issues.test.ts
index f9ffe51f..ff38c1c7 100644
--- a/src/test/integration/supabase/issues.test.ts
+++ b/src/test/integration/supabase/issues.test.ts
@@ -323,14 +323,14 @@ describe("Issues CRUD Operations (PGlite)", () => {
.insert(issueComments)
.values({
issueId: testIssue.id,
- content: "Issue created",
+ content: "Status changed from new to in_progress",
isSystem: true,
authorId: null,
})
.returning();
expect(event).toBeDefined();
- expect(event.content).toBe("Issue created");
+ expect(event.content).toBe("Status changed from new to in_progress");
expect(event.isSystem).toBe(true);
expect(event.authorId).toBeNull();
});
@@ -387,7 +387,7 @@ describe("Issues CRUD Operations (PGlite)", () => {
await db.insert(issueComments).values([
{
issueId: testIssue.id,
- content: "Issue created",
+ content: "Priority changed",
isSystem: true,
createdAt: new Date(now - 3_000),
},
@@ -520,7 +520,7 @@ describe("Issues CRUD Operations (PGlite)", () => {
// Create timeline event
await db.insert(issueComments).values({
issueId: issue.id,
- content: "Issue created",
+ content: "Status changed from new to in_progress",
isSystem: true,
});