vibe-squire 2.2.0 → 2.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/ui/activity-api.controller.d.ts +4 -12
- package/dist/ui/activity-api.controller.js +29 -3
- package/dist/ui/activity-api.controller.js.map +1 -1
- package/dist/ui/public/operator-activity.js +79 -7
- package/dist/ui/ui-presenter.d.ts +18 -12
- package/dist/ui/ui-presenter.js +34 -12
- package/dist/ui/ui-presenter.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,7 +1,9 @@
|
|
|
1
|
+
import { PrismaService } from '../prisma/prisma.service';
|
|
1
2
|
import { PollRunHistoryService } from '../sync/poll-run-history.service';
|
|
2
3
|
export declare class ActivityApiController {
|
|
3
4
|
private readonly pollRunHistory;
|
|
4
|
-
|
|
5
|
+
private readonly prisma;
|
|
6
|
+
constructor(pollRunHistory: PollRunHistoryService, prisma: PrismaService);
|
|
5
7
|
runs(limitRaw?: string): Promise<{
|
|
6
8
|
runs: {
|
|
7
9
|
id: string;
|
|
@@ -23,17 +25,7 @@ export declare class ActivityApiController {
|
|
|
23
25
|
skippedTriage: number | null;
|
|
24
26
|
skippedDeclined: number | null;
|
|
25
27
|
itemCount: number;
|
|
26
|
-
items:
|
|
27
|
-
prUrl: string;
|
|
28
|
-
githubRepo: string;
|
|
29
|
-
prNumber: number;
|
|
30
|
-
prTitle: string;
|
|
31
|
-
authorLogin: string | null;
|
|
32
|
-
decision: string;
|
|
33
|
-
decisionLabel: string;
|
|
34
|
-
detail: string | null;
|
|
35
|
-
kanbanIssueId: string | null;
|
|
36
|
-
}>;
|
|
28
|
+
items: import("./ui-presenter").ActivityItem[];
|
|
37
29
|
}[];
|
|
38
30
|
}>;
|
|
39
31
|
}
|
|
@@ -15,14 +15,17 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
15
15
|
exports.ActivityApiController = void 0;
|
|
16
16
|
const common_1 = require("@nestjs/common");
|
|
17
17
|
const swagger_1 = require("@nestjs/swagger");
|
|
18
|
+
const prisma_service_1 = require("../prisma/prisma.service");
|
|
18
19
|
const poll_run_history_service_1 = require("../sync/poll-run-history.service");
|
|
19
20
|
const ui_presenter_1 = require("./ui-presenter");
|
|
20
21
|
const DEFAULT_LIMIT = 40;
|
|
21
22
|
const MAX_LIMIT = 100;
|
|
22
23
|
let ActivityApiController = class ActivityApiController {
|
|
23
24
|
pollRunHistory;
|
|
24
|
-
|
|
25
|
+
prisma;
|
|
26
|
+
constructor(pollRunHistory, prisma) {
|
|
25
27
|
this.pollRunHistory = pollRunHistory;
|
|
28
|
+
this.prisma = prisma;
|
|
26
29
|
}
|
|
27
30
|
async runs(limitRaw) {
|
|
28
31
|
let limit = DEFAULT_LIMIT;
|
|
@@ -33,7 +36,29 @@ let ActivityApiController = class ActivityApiController {
|
|
|
33
36
|
}
|
|
34
37
|
}
|
|
35
38
|
const rows = await this.pollRunHistory.listRecentForUi(limit);
|
|
36
|
-
|
|
39
|
+
const allPrUrls = new Set(rows.flatMap((r) => r.items.map((i) => i.prUrl)));
|
|
40
|
+
const [syncedRows, declinedRows] = await Promise.all([
|
|
41
|
+
allPrUrls.size > 0
|
|
42
|
+
? this.prisma.syncedPullRequest.findMany({
|
|
43
|
+
where: { prUrl: { in: [...allPrUrls] } },
|
|
44
|
+
select: { prUrl: true },
|
|
45
|
+
})
|
|
46
|
+
: [],
|
|
47
|
+
allPrUrls.size > 0
|
|
48
|
+
? this.prisma.declinedPullRequest.findMany({
|
|
49
|
+
where: { prUrl: { in: [...allPrUrls] } },
|
|
50
|
+
select: { prUrl: true },
|
|
51
|
+
})
|
|
52
|
+
: [],
|
|
53
|
+
]);
|
|
54
|
+
const acceptedPrUrls = new Set(syncedRows.map((r) => r.prUrl));
|
|
55
|
+
const declinedPrUrls = new Set(declinedRows.map((r) => r.prUrl));
|
|
56
|
+
return {
|
|
57
|
+
runs: (0, ui_presenter_1.presentActivityRunsForView)(rows, {
|
|
58
|
+
acceptedPrUrls,
|
|
59
|
+
declinedPrUrls,
|
|
60
|
+
}),
|
|
61
|
+
};
|
|
37
62
|
}
|
|
38
63
|
};
|
|
39
64
|
exports.ActivityApiController = ActivityApiController;
|
|
@@ -53,6 +78,7 @@ __decorate([
|
|
|
53
78
|
exports.ActivityApiController = ActivityApiController = __decorate([
|
|
54
79
|
(0, swagger_1.ApiTags)('activity'),
|
|
55
80
|
(0, common_1.Controller)('api/activity'),
|
|
56
|
-
__metadata("design:paramtypes", [poll_run_history_service_1.PollRunHistoryService
|
|
81
|
+
__metadata("design:paramtypes", [poll_run_history_service_1.PollRunHistoryService,
|
|
82
|
+
prisma_service_1.PrismaService])
|
|
57
83
|
], ActivityApiController);
|
|
58
84
|
//# sourceMappingURL=activity-api.controller.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"activity-api.controller.js","sourceRoot":"","sources":["../../src/ui/activity-api.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAAwD;AACxD,6CAAuE;AACvE,+EAAyE;AACzE,iDAA4D;AAE5D,MAAM,aAAa,GAAG,EAAE,CAAC;AACzB,MAAM,SAAS,GAAG,GAAG,CAAC;AAIf,IAAM,qBAAqB,GAA3B,MAAM,qBAAqB;
|
|
1
|
+
{"version":3,"file":"activity-api.controller.js","sourceRoot":"","sources":["../../src/ui/activity-api.controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,13 +18,79 @@
|
|
|
18
18
|
skipped_board_limit: true,
|
|
19
19
|
};
|
|
20
20
|
|
|
21
|
+
var OPTIMISTIC_KEY = 'vs_triage_optimistic';
|
|
22
|
+
|
|
23
|
+
function loadOptimistic() {
|
|
24
|
+
try {
|
|
25
|
+
return JSON.parse(localStorage.getItem(OPTIMISTIC_KEY) || '{}');
|
|
26
|
+
} catch {
|
|
27
|
+
return {};
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
function saveOptimistic(map) {
|
|
32
|
+
try {
|
|
33
|
+
localStorage.setItem(OPTIMISTIC_KEY, JSON.stringify(map));
|
|
34
|
+
} catch {
|
|
35
|
+
/* quota exceeded — ignore */
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
function markOptimistic(prUrl, action) {
|
|
40
|
+
var map = loadOptimistic();
|
|
41
|
+
map[prUrl] = action;
|
|
42
|
+
saveOptimistic(map);
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
function clearOptimistic(prUrl) {
|
|
46
|
+
var map = loadOptimistic();
|
|
47
|
+
delete map[prUrl];
|
|
48
|
+
saveOptimistic(map);
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
function applyOptimistic(items) {
|
|
52
|
+
var map = loadOptimistic();
|
|
53
|
+
var dirty = false;
|
|
54
|
+
for (var i = 0; i < items.length; i++) {
|
|
55
|
+
var it = items[i];
|
|
56
|
+
var opt = map[it.prUrl];
|
|
57
|
+
if (!opt) continue;
|
|
58
|
+
var eff = it.effectiveDecision || it.decision;
|
|
59
|
+
if (opt === 'accept' && !isTriageable(eff)) {
|
|
60
|
+
delete map[it.prUrl];
|
|
61
|
+
dirty = true;
|
|
62
|
+
} else if (opt === 'decline' && eff === 'skipped_declined') {
|
|
63
|
+
delete map[it.prUrl];
|
|
64
|
+
dirty = true;
|
|
65
|
+
} else if (opt === 'reconsider' && isTriageable(eff)) {
|
|
66
|
+
delete map[it.prUrl];
|
|
67
|
+
dirty = true;
|
|
68
|
+
} else if (opt === 'accept') {
|
|
69
|
+
it.effectiveDecision = 'linked_existing';
|
|
70
|
+
it.decisionLabel = 'Accepted (pending refresh)';
|
|
71
|
+
} else if (opt === 'decline') {
|
|
72
|
+
it.effectiveDecision = 'skipped_declined';
|
|
73
|
+
it.decisionLabel = 'Declined (pending refresh)';
|
|
74
|
+
} else if (opt === 'reconsider') {
|
|
75
|
+
it.effectiveDecision = 'skipped_triage';
|
|
76
|
+
it.decisionLabel = 'Pending triage';
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
if (dirty) saveOptimistic(map);
|
|
80
|
+
}
|
|
81
|
+
|
|
21
82
|
function isTriageable(decision) {
|
|
22
83
|
return TRIAGEABLE_DECISIONS[decision] === true;
|
|
23
84
|
}
|
|
24
85
|
|
|
86
|
+
function effectiveOf(it) {
|
|
87
|
+
return it.effectiveDecision || it.decision;
|
|
88
|
+
}
|
|
89
|
+
|
|
25
90
|
function triageSortKey(it) {
|
|
26
|
-
|
|
27
|
-
if (
|
|
91
|
+
var eff = effectiveOf(it);
|
|
92
|
+
if (isTriageable(eff)) return 0;
|
|
93
|
+
if (eff === 'skipped_declined') return 1;
|
|
28
94
|
return 2;
|
|
29
95
|
}
|
|
30
96
|
|
|
@@ -39,7 +105,8 @@
|
|
|
39
105
|
|
|
40
106
|
function triageActionButtons(it) {
|
|
41
107
|
var url = esc(it.prUrl);
|
|
42
|
-
|
|
108
|
+
var eff = effectiveOf(it);
|
|
109
|
+
if (isTriageable(eff)) {
|
|
43
110
|
return (
|
|
44
111
|
'<div class="triage-actions" style="margin-top:0.3rem">' +
|
|
45
112
|
'<button class="btn btn-sm primary js-triage-accept" data-pr-url="' +
|
|
@@ -51,7 +118,7 @@
|
|
|
51
118
|
'</div>'
|
|
52
119
|
);
|
|
53
120
|
}
|
|
54
|
-
if (
|
|
121
|
+
if (eff === 'skipped_declined') {
|
|
55
122
|
return (
|
|
56
123
|
'<div class="triage-actions" style="margin-top:0.3rem">' +
|
|
57
124
|
'<button class="btn btn-sm ghost js-triage-reconsider" data-pr-url="' +
|
|
@@ -65,6 +132,7 @@
|
|
|
65
132
|
|
|
66
133
|
function renderItemsTable(items) {
|
|
67
134
|
if (!items || !items.length) return '';
|
|
135
|
+
applyOptimistic(items);
|
|
68
136
|
var sorted = sortItemsForTriage(items);
|
|
69
137
|
var rows = sorted
|
|
70
138
|
.map(function (it) {
|
|
@@ -86,9 +154,10 @@
|
|
|
86
154
|
'<div class="muted" style="font-size:0.8rem">@' +
|
|
87
155
|
esc(it.authorLogin) +
|
|
88
156
|
'</div>';
|
|
89
|
-
var
|
|
157
|
+
var eff = effectiveOf(it);
|
|
158
|
+
var rowClass = isTriageable(eff)
|
|
90
159
|
? ' class="triage-pending-row"'
|
|
91
|
-
:
|
|
160
|
+
: eff === 'skipped_declined'
|
|
92
161
|
? ' class="triage-declined-row"'
|
|
93
162
|
: '';
|
|
94
163
|
return (
|
|
@@ -283,6 +352,8 @@
|
|
|
283
352
|
|
|
284
353
|
function triageAction(endpoint, prUrl, btn) {
|
|
285
354
|
btn.disabled = true;
|
|
355
|
+
markOptimistic(prUrl, endpoint);
|
|
356
|
+
void load();
|
|
286
357
|
fetch('/api/pr/' + endpoint, {
|
|
287
358
|
method: 'POST',
|
|
288
359
|
headers: { 'Content-Type': 'application/json' },
|
|
@@ -293,7 +364,8 @@
|
|
|
293
364
|
void load();
|
|
294
365
|
})
|
|
295
366
|
.catch(function () {
|
|
296
|
-
|
|
367
|
+
clearOptimistic(prUrl);
|
|
368
|
+
void load();
|
|
297
369
|
});
|
|
298
370
|
}
|
|
299
371
|
|
|
@@ -2,7 +2,23 @@ import type { SetupEvaluation } from '../setup/setup-evaluation.service';
|
|
|
2
2
|
import type { PollRunHistoryService } from '../sync/poll-run-history.service';
|
|
3
3
|
import type { UiNavEntry } from '../ports/ui-nav.types';
|
|
4
4
|
export type PollRunRowForActivity = Awaited<ReturnType<PollRunHistoryService['listRecentForUi']>>[number];
|
|
5
|
-
export
|
|
5
|
+
export type TriageLiveState = {
|
|
6
|
+
acceptedPrUrls: ReadonlySet<string>;
|
|
7
|
+
declinedPrUrls: ReadonlySet<string>;
|
|
8
|
+
};
|
|
9
|
+
export type ActivityItem = {
|
|
10
|
+
prUrl: string;
|
|
11
|
+
githubRepo: string;
|
|
12
|
+
prNumber: number;
|
|
13
|
+
prTitle: string;
|
|
14
|
+
authorLogin: string | null;
|
|
15
|
+
decision: string;
|
|
16
|
+
effectiveDecision: string;
|
|
17
|
+
decisionLabel: string;
|
|
18
|
+
detail: string | null;
|
|
19
|
+
kanbanIssueId: string | null;
|
|
20
|
+
};
|
|
21
|
+
export declare function presentActivityRunsForView(rows: PollRunRowForActivity[], live?: TriageLiveState): Array<{
|
|
6
22
|
id: string;
|
|
7
23
|
startedAt: string;
|
|
8
24
|
startedAtLabel: string;
|
|
@@ -22,17 +38,7 @@ export declare function presentActivityRunsForView(rows: PollRunRowForActivity[]
|
|
|
22
38
|
skippedTriage: number | null;
|
|
23
39
|
skippedDeclined: number | null;
|
|
24
40
|
itemCount: number;
|
|
25
|
-
items:
|
|
26
|
-
prUrl: string;
|
|
27
|
-
githubRepo: string;
|
|
28
|
-
prNumber: number;
|
|
29
|
-
prTitle: string;
|
|
30
|
-
authorLogin: string | null;
|
|
31
|
-
decision: string;
|
|
32
|
-
decisionLabel: string;
|
|
33
|
-
detail: string | null;
|
|
34
|
-
kanbanIssueId: string | null;
|
|
35
|
-
}>;
|
|
41
|
+
items: ActivityItem[];
|
|
36
42
|
}>;
|
|
37
43
|
export declare function escapeForPre(s: string): string;
|
|
38
44
|
export declare function destinationTypeLabel(t: string): string;
|
package/dist/ui/ui-presenter.js
CHANGED
|
@@ -11,6 +11,7 @@ exports.uiNavLocals = uiNavLocals;
|
|
|
11
11
|
exports.githubNotSourceRedirectUrl = githubNotSourceRedirectUrl;
|
|
12
12
|
exports.vibeKanbanNotDestinationRedirectUrl = vibeKanbanNotDestinationRedirectUrl;
|
|
13
13
|
const poll_run_labels_1 = require("../sync/poll-run-labels");
|
|
14
|
+
const poll_run_decisions_1 = require("../sync/poll-run-decisions");
|
|
14
15
|
function formatActivityRunTime(d) {
|
|
15
16
|
const t = d.getTime();
|
|
16
17
|
if (Number.isNaN(t)) {
|
|
@@ -18,7 +19,24 @@ function formatActivityRunTime(d) {
|
|
|
18
19
|
}
|
|
19
20
|
return d.toLocaleString();
|
|
20
21
|
}
|
|
21
|
-
|
|
22
|
+
const TRIAGE_DECISIONS = new Set([
|
|
23
|
+
poll_run_decisions_1.POLL_RUN_ITEM_DECISION.skippedTriage,
|
|
24
|
+
poll_run_decisions_1.POLL_RUN_ITEM_DECISION.skippedBoardLimit,
|
|
25
|
+
]);
|
|
26
|
+
const EMPTY_LIVE_STATE = {
|
|
27
|
+
acceptedPrUrls: new Set(),
|
|
28
|
+
declinedPrUrls: new Set(),
|
|
29
|
+
};
|
|
30
|
+
function resolveEffectiveDecision(decision, prUrl, live) {
|
|
31
|
+
if (!TRIAGE_DECISIONS.has(decision))
|
|
32
|
+
return decision;
|
|
33
|
+
if (live.acceptedPrUrls.has(prUrl))
|
|
34
|
+
return poll_run_decisions_1.POLL_RUN_ITEM_DECISION.linkedExisting;
|
|
35
|
+
if (live.declinedPrUrls.has(prUrl))
|
|
36
|
+
return poll_run_decisions_1.POLL_RUN_ITEM_DECISION.skippedDeclined;
|
|
37
|
+
return decision;
|
|
38
|
+
}
|
|
39
|
+
function presentActivityRunsForView(rows, live = EMPTY_LIVE_STATE) {
|
|
22
40
|
return rows.map((r) => ({
|
|
23
41
|
id: r.id,
|
|
24
42
|
startedAt: r.startedAt.toISOString(),
|
|
@@ -39,17 +57,21 @@ function presentActivityRunsForView(rows) {
|
|
|
39
57
|
skippedTriage: r.skippedTriage,
|
|
40
58
|
skippedDeclined: r.skippedDeclined,
|
|
41
59
|
itemCount: r.items.length,
|
|
42
|
-
items: r.items.map((i) =>
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
60
|
+
items: r.items.map((i) => {
|
|
61
|
+
const eff = resolveEffectiveDecision(i.decision, i.prUrl, live);
|
|
62
|
+
return {
|
|
63
|
+
prUrl: i.prUrl,
|
|
64
|
+
githubRepo: i.githubRepo,
|
|
65
|
+
prNumber: i.prNumber,
|
|
66
|
+
prTitle: i.prTitle,
|
|
67
|
+
authorLogin: i.authorLogin,
|
|
68
|
+
decision: i.decision,
|
|
69
|
+
effectiveDecision: eff,
|
|
70
|
+
decisionLabel: (0, poll_run_labels_1.pollDecisionLabel)(eff),
|
|
71
|
+
detail: i.detail,
|
|
72
|
+
kanbanIssueId: i.kanbanIssueId,
|
|
73
|
+
};
|
|
74
|
+
}),
|
|
53
75
|
}));
|
|
54
76
|
}
|
|
55
77
|
function escapeForPre(s) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ui-presenter.js","sourceRoot":"","sources":["../../src/ui/ui-presenter.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"ui-presenter.js","sourceRoot":"","sources":["../../src/ui/ui-presenter.ts"],"names":[],"mappings":"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"}
|