feat(FN-670): enforce merge build verification and activity feed fallback

- Add activity feed fallback to the local project log when central activity is empty or unavailable
- Pass configured build commands into executor and merger prompts with hard-gate instructions
- Add merger build-failure reporting via report_build_failure and stop commits when verification fails
- Expand engine and dashboard regression coverage for activity feed fallback and merge build verification
This commit is contained in:
gsxdsm
2026-04-01 13:24:57 -07:00
parent 3cc10b21eb
commit 826a495679
6 changed files with 242 additions and 62 deletions

View File

@@ -2012,6 +2012,7 @@ describe("fetchActivityFeed", () => {
expect(call[0]).toContain("since=2026-01-01T00%3A00%3A00.000Z");
expect(call[0]).toContain("projectId=proj_abc123");
expect(call[0]).toContain("type=task%3Acreated");
expect(call[0]).not.toContain("types=");
});
});

View File

@@ -1830,7 +1830,7 @@ export function fetchProjectHealth(id: string): Promise<ProjectHealth> {
return api<ProjectHealth>(`/projects/${encodeURIComponent(id)}/health`);
}
/** Fetch unified activity feed */
/** Fetch unified activity feed. Supports singular type filtering and server fallback to the current project's local activity log when the central feed is unavailable or empty. */
export function fetchActivityFeed(options?: FeedOptions): Promise<ActivityFeedEntry[]> {
const params = new URLSearchParams();
if (options?.limit !== undefined) params.set("limit", String(options.limit));

View File

@@ -4925,6 +4925,7 @@ body {
}
.list-cell-title {
width: 100%;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
@@ -5184,6 +5185,7 @@ body {
}
.list-cell-title {
width: 100%;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;