Add issue identifiers, activity run tracking, and migration inspection

Add issuePrefix/issueCounter to companies and issueNumber/identifier to issues
for human-readable issue IDs (e.g. PAP-42). Add runId to activity_log for
linking activity to heartbeat runs. Rework DB client to support migration
state inspection and interactive pending migration prompts at startup.
Add reopen option to issue comments validator.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Forgotten
2026-02-19 09:09:26 -06:00
parent db9e083eb2
commit 21b7bc8da0
13 changed files with 2740 additions and 5 deletions

View File

@@ -7,6 +7,7 @@ export interface ActivityEvent {
entityType: string;
entityId: string;
agentId: string | null;
runId: string | null;
details: Record<string, unknown> | null;
createdAt: Date;
}

View File

@@ -5,8 +5,11 @@ export interface Company {
name: string;
description: string | null;
status: CompanyStatus;
issuePrefix: string;
issueCounter: number;
budgetMonthlyCents: number;
spentMonthlyCents: number;
requireBoardApprovalForNewAgents: boolean;
createdAt: Date;
updatedAt: Date;
}

View File

@@ -25,6 +25,8 @@ export interface Issue {
assigneeAgentId: string | null;
createdByAgentId: string | null;
createdByUserId: string | null;
issueNumber: number | null;
identifier: string | null;
requestDepth: number;
billingCode: string | null;
startedAt: Date | null;

View File

@@ -31,6 +31,7 @@ export type CheckoutIssue = z.infer<typeof checkoutIssueSchema>;
export const addIssueCommentSchema = z.object({
body: z.string().min(1),
reopen: z.boolean().optional(),
});
export type AddIssueComment = z.infer<typeof addIssueCommentSchema>;