toolroll 0.9.49 → 0.9.51
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/CHANGELOG.md +17 -0
- package/dist/cli-http.js +3 -0
- package/dist/flow-triggers.js +7 -0
- package/dist/mcp-http.js +6 -11
- package/dist/mcp-oauth.d.ts +1 -1
- package/dist/mcp-oauth.js +8 -23
- package/dist/mcp-person.d.ts +0 -9
- package/dist/mcp-person.js +2 -1
- package/dist/operate.d.ts +1 -1
- package/dist/operate.js +9 -2
- package/dist/request-budget.d.ts +5 -2
- package/dist/request-budget.js +7 -3
- package/dist/scope.d.ts +1 -0
- package/dist/scope.js +19 -9
- package/dist/serve.d.ts +2 -605
- package/dist/serve.js +434 -23789
- package/dist/server/chat.d.ts +41 -0
- package/dist/server/chat.js +1458 -0
- package/dist/server/edge-refusal.d.ts +5 -0
- package/dist/server/edge-refusal.js +56 -0
- package/dist/server/flows.d.ts +12 -0
- package/dist/server/flows.js +832 -0
- package/dist/server/guards.d.ts +72 -0
- package/dist/server/guards.js +357 -0
- package/dist/server/handler-context.d.ts +22 -0
- package/dist/server/handler-context.js +1 -0
- package/dist/server/handler-registry.d.ts +21 -0
- package/dist/server/handler-registry.js +34 -0
- package/dist/server/pages-assets.d.ts +10 -0
- package/dist/server/pages-assets.js +103 -0
- package/dist/server/pages.d.ts +11 -0
- package/dist/server/pages.js +910 -0
- package/dist/server/people-tokens.d.ts +20 -0
- package/dist/server/people-tokens.js +693 -0
- package/dist/server/remote-hooks.d.ts +29 -0
- package/dist/server/remote-hooks.js +130 -0
- package/dist/server/remote.d.ts +59 -0
- package/dist/server/remote.js +200 -0
- package/dist/server/route-policy.d.ts +18 -0
- package/dist/server/route-policy.js +30 -0
- package/dist/server/route-table.d.ts +74 -0
- package/dist/server/route-table.js +350 -0
- package/dist/server/runtime.d.ts +280 -0
- package/dist/server/runtime.js +25 -0
- package/dist/server/settings.d.ts +22 -0
- package/dist/server/settings.js +2388 -0
- package/dist/server/shared.d.ts +3334 -0
- package/dist/server/shared.js +12708 -0
- package/dist/server/task-views.d.ts +82 -0
- package/dist/server/task-views.js +1099 -0
- package/dist/server/tasks.d.ts +87 -0
- package/dist/server/tasks.js +3579 -0
- package/dist/session-http.js +3 -0
- package/dist/sign-in-guard.d.ts +41 -16
- package/dist/sign-in-guard.js +147 -24
- package/dist/source-key.d.ts +2 -0
- package/dist/source-key.js +49 -0
- package/dist/team-http.d.ts +8 -1
- package/dist/team-http.js +9 -2
- package/dist/teams.js +3 -0
- package/package.json +1 -1
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import type { Registration } from './handler-registry.js';
|
|
2
|
+
import { type IncomingMessage, type ServerResponse } from "node:http";
|
|
3
|
+
import { buildPickView } from "../contest.js";
|
|
4
|
+
import { type FormFieldOf, type FormView } from "../contracts/console-api.js";
|
|
5
|
+
import { type AttendedTerms } from "../scope.js";
|
|
6
|
+
import { type Artifact, type Run, type Store } from "../store.js";
|
|
7
|
+
import type { HandlerContext } from './handler-context.js';
|
|
8
|
+
import type { ServerRuntime } from './runtime.js';
|
|
9
|
+
import { type CompletedWorkRow, type PeekAdmission, type RankedReviewRow, type ReviewCockpitView, type Who } from "./shared.js";
|
|
10
|
+
export declare function createTasksHandlers(runtime: ServerRuntime): {
|
|
11
|
+
registrations: Registration[];
|
|
12
|
+
get: (ctx: HandlerContext) => Promise<void>;
|
|
13
|
+
post: (ctx: HandlerContext) => Promise<void>;
|
|
14
|
+
runListPane: (project: string | null, currentId: number | null) => string;
|
|
15
|
+
peekFragment: (runId: number, sessionKey: string, editorMode?: boolean) => Promise<{
|
|
16
|
+
status: number;
|
|
17
|
+
body: string;
|
|
18
|
+
retryAfter?: number;
|
|
19
|
+
}>;
|
|
20
|
+
contestScreen: (response: ServerResponse, who: Who, contestId: number, problem: string | null, status: number) => void;
|
|
21
|
+
routineMutation: (response: ServerResponse, who: Who, routineId: number, verb: string, body: FormView<FormFieldOf<"routine">>, now: Date) => void;
|
|
22
|
+
attendedBeats: (who: Who, request: IncomingMessage, response: ServerResponse, now: Date) => void;
|
|
23
|
+
attendMutation: (response: ServerResponse, who: Who, taskId: string, verb: string, body: FormView<FormFieldOf<"attend">>, now: Date) => Promise<void>;
|
|
24
|
+
taskMutation: (response: ServerResponse, who: Who, taskId: string, verb: string, posted: URLSearchParams, now: Date) => void;
|
|
25
|
+
queueRegionFor: (project: string | null, csrf: string, revision: number, now: Date) => string;
|
|
26
|
+
ciFailingFor: (runId: number | null, prNumber: number | null) => boolean;
|
|
27
|
+
completedRowFor: (taskId: string, project: string | null) => CompletedWorkRow | null;
|
|
28
|
+
attemptRowFor: (taskId: string, runId: number | null, project: string | null) => CompletedWorkRow | null;
|
|
29
|
+
resultRowOf: (task: NonNullable<ReturnType<Store["getTask"]>>, repo: string | null, historyProblem: string | null, run: Run | null) => CompletedWorkRow;
|
|
30
|
+
reviewCockpitViewOf: (row: RankedReviewRow, who: Who, now: Date) => ReviewCockpitView;
|
|
31
|
+
decisionEvidence: (response: ServerResponse, decisionId: number, artifactId: number) => void;
|
|
32
|
+
runEvidence: (response: ServerResponse, runId: number, artifactId: number) => void;
|
|
33
|
+
sendArtifact: (response: ServerResponse, linked: Artifact) => void;
|
|
34
|
+
routinePage: (response: ServerResponse, who: Who, routineId: number, problem: string | null, status: number) => void;
|
|
35
|
+
peekGuards: (runId: number) => {
|
|
36
|
+
ok: true;
|
|
37
|
+
admit: PeekAdmission & {
|
|
38
|
+
entries: NonNullable<PeekAdmission["entries"]>;
|
|
39
|
+
};
|
|
40
|
+
} | {
|
|
41
|
+
ok: false;
|
|
42
|
+
message: string;
|
|
43
|
+
final?: boolean;
|
|
44
|
+
};
|
|
45
|
+
contestData: (contestId: number) => {
|
|
46
|
+
view: NonNullable<ReturnType<typeof buildPickView>>;
|
|
47
|
+
taskId: string;
|
|
48
|
+
taskTitle: string;
|
|
49
|
+
repo: string | null;
|
|
50
|
+
refOrigin: string;
|
|
51
|
+
questions: Map<number, number>;
|
|
52
|
+
liveRuns: Set<number>;
|
|
53
|
+
totalMicrousd: number;
|
|
54
|
+
anyUnknown: boolean;
|
|
55
|
+
rollups: Map<number, {
|
|
56
|
+
costMicrousd: number;
|
|
57
|
+
tokensIn: number;
|
|
58
|
+
tokensOut: number;
|
|
59
|
+
measuredRuns: number;
|
|
60
|
+
totalRuns: number;
|
|
61
|
+
}>;
|
|
62
|
+
} | null;
|
|
63
|
+
liveAttendedTerms: (taskId: string, inputs: {
|
|
64
|
+
minutes: number;
|
|
65
|
+
turns: number;
|
|
66
|
+
budgetMicrousd: number;
|
|
67
|
+
expiry?: string;
|
|
68
|
+
parent?: number;
|
|
69
|
+
followup?: string;
|
|
70
|
+
model?: string;
|
|
71
|
+
posture?: string;
|
|
72
|
+
}, now: Date) => Promise<{
|
|
73
|
+
ok: true;
|
|
74
|
+
terms: AttendedTerms;
|
|
75
|
+
} | {
|
|
76
|
+
ok: false;
|
|
77
|
+
problem: string;
|
|
78
|
+
}>;
|
|
79
|
+
attendConfirmScreen: (response: ServerResponse, who: Who, terms: AttendedTerms, inputs: {
|
|
80
|
+
minutes: number;
|
|
81
|
+
turns: number;
|
|
82
|
+
budgetMicrousd: number;
|
|
83
|
+
model?: string;
|
|
84
|
+
posture?: string;
|
|
85
|
+
}, digest: string, nonce: string, csrf: string) => void;
|
|
86
|
+
liveRunIds: (rows: readonly (Pick<Run, "id" | "outcome" | "leaseId" | "taskRef">)[]) => Set<number>;
|
|
87
|
+
};
|