@junctionpanel/server 0.1.81 → 0.1.83
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/server/server/agent/agent-manager.d.ts +2 -0
- package/dist/server/server/agent/agent-manager.d.ts.map +1 -1
- package/dist/server/server/agent/agent-manager.js +115 -2
- package/dist/server/server/agent/agent-manager.js.map +1 -1
- package/dist/server/server/agent/agent-sdk-types.d.ts +2 -0
- package/dist/server/server/agent/agent-sdk-types.d.ts.map +1 -1
- package/dist/server/server/agent/agent-sdk-types.js.map +1 -1
- package/dist/server/server/agent/harness/context.d.ts +21 -0
- package/dist/server/server/agent/harness/context.d.ts.map +1 -0
- package/dist/server/server/agent/harness/context.js +541 -0
- package/dist/server/server/agent/harness/context.js.map +1 -0
- package/dist/server/server/agent/harness/memory.d.ts +17 -0
- package/dist/server/server/agent/harness/memory.d.ts.map +1 -0
- package/dist/server/server/agent/harness/memory.js +261 -0
- package/dist/server/server/agent/harness/memory.js.map +1 -0
- package/dist/server/server/agent/harness/types.d.ts +114 -0
- package/dist/server/server/agent/harness/types.d.ts.map +1 -0
- package/dist/server/server/agent/harness/types.js +3 -0
- package/dist/server/server/agent/harness/types.js.map +1 -0
- package/dist/server/server/agent/providers/gemini-agent.d.ts +1 -1
- package/dist/server/server/agent/providers/gemini-agent.d.ts.map +1 -1
- package/dist/server/server/agent/providers/gemini-agent.js +26 -13
- package/dist/server/server/agent/providers/gemini-agent.js.map +1 -1
- package/dist/server/server/agent/providers/tool-call-detail-primitives.d.ts.map +1 -1
- package/dist/server/server/exports.d.ts +1 -0
- package/dist/server/server/exports.d.ts.map +1 -1
- package/dist/server/server/exports.js +1 -0
- package/dist/server/server/exports.js.map +1 -1
- package/dist/server/server/persisted-config.d.ts +4 -4
- package/dist/server/shared/messages.d.ts +20 -20
- package/dist/server/shared/switchboard.d.ts +174 -0
- package/dist/server/shared/switchboard.d.ts.map +1 -0
- package/dist/server/shared/switchboard.js +172 -0
- package/dist/server/shared/switchboard.js.map +1 -0
- package/package.json +2 -2
|
@@ -1825,10 +1825,10 @@ export declare const SubscribeCheckoutDiffRequestSchema: z.ZodObject<{
|
|
|
1825
1825
|
mode: z.ZodEnum<["uncommitted", "base", "staged", "unstaged"]>;
|
|
1826
1826
|
baseRef: z.ZodOptional<z.ZodString>;
|
|
1827
1827
|
}, "strip", z.ZodTypeAny, {
|
|
1828
|
-
mode: "
|
|
1828
|
+
mode: "base" | "uncommitted" | "staged" | "unstaged";
|
|
1829
1829
|
baseRef?: string | undefined;
|
|
1830
1830
|
}, {
|
|
1831
|
-
mode: "
|
|
1831
|
+
mode: "base" | "uncommitted" | "staged" | "unstaged";
|
|
1832
1832
|
baseRef?: string | undefined;
|
|
1833
1833
|
}>;
|
|
1834
1834
|
detail: z.ZodOptional<z.ZodEnum<["summary", "full"]>>;
|
|
@@ -1839,7 +1839,7 @@ export declare const SubscribeCheckoutDiffRequestSchema: z.ZodObject<{
|
|
|
1839
1839
|
requestId: string;
|
|
1840
1840
|
subscriptionId: string;
|
|
1841
1841
|
compare: {
|
|
1842
|
-
mode: "
|
|
1842
|
+
mode: "base" | "uncommitted" | "staged" | "unstaged";
|
|
1843
1843
|
baseRef?: string | undefined;
|
|
1844
1844
|
};
|
|
1845
1845
|
detail?: "summary" | "full" | undefined;
|
|
@@ -1849,7 +1849,7 @@ export declare const SubscribeCheckoutDiffRequestSchema: z.ZodObject<{
|
|
|
1849
1849
|
requestId: string;
|
|
1850
1850
|
subscriptionId: string;
|
|
1851
1851
|
compare: {
|
|
1852
|
-
mode: "
|
|
1852
|
+
mode: "base" | "uncommitted" | "staged" | "unstaged";
|
|
1853
1853
|
baseRef?: string | undefined;
|
|
1854
1854
|
};
|
|
1855
1855
|
detail?: "summary" | "full" | undefined;
|
|
@@ -3804,10 +3804,10 @@ export declare const SessionInboundMessageSchema: z.ZodDiscriminatedUnion<"type"
|
|
|
3804
3804
|
mode: z.ZodEnum<["uncommitted", "base", "staged", "unstaged"]>;
|
|
3805
3805
|
baseRef: z.ZodOptional<z.ZodString>;
|
|
3806
3806
|
}, "strip", z.ZodTypeAny, {
|
|
3807
|
-
mode: "
|
|
3807
|
+
mode: "base" | "uncommitted" | "staged" | "unstaged";
|
|
3808
3808
|
baseRef?: string | undefined;
|
|
3809
3809
|
}, {
|
|
3810
|
-
mode: "
|
|
3810
|
+
mode: "base" | "uncommitted" | "staged" | "unstaged";
|
|
3811
3811
|
baseRef?: string | undefined;
|
|
3812
3812
|
}>;
|
|
3813
3813
|
detail: z.ZodOptional<z.ZodEnum<["summary", "full"]>>;
|
|
@@ -3818,7 +3818,7 @@ export declare const SessionInboundMessageSchema: z.ZodDiscriminatedUnion<"type"
|
|
|
3818
3818
|
requestId: string;
|
|
3819
3819
|
subscriptionId: string;
|
|
3820
3820
|
compare: {
|
|
3821
|
-
mode: "
|
|
3821
|
+
mode: "base" | "uncommitted" | "staged" | "unstaged";
|
|
3822
3822
|
baseRef?: string | undefined;
|
|
3823
3823
|
};
|
|
3824
3824
|
detail?: "summary" | "full" | undefined;
|
|
@@ -3828,7 +3828,7 @@ export declare const SessionInboundMessageSchema: z.ZodDiscriminatedUnion<"type"
|
|
|
3828
3828
|
requestId: string;
|
|
3829
3829
|
subscriptionId: string;
|
|
3830
3830
|
compare: {
|
|
3831
|
-
mode: "
|
|
3831
|
+
mode: "base" | "uncommitted" | "staged" | "unstaged";
|
|
3832
3832
|
baseRef?: string | undefined;
|
|
3833
3833
|
};
|
|
3834
3834
|
detail?: "summary" | "full" | undefined;
|
|
@@ -31005,10 +31005,10 @@ export declare const WSSessionInboundSchema: z.ZodObject<{
|
|
|
31005
31005
|
mode: z.ZodEnum<["uncommitted", "base", "staged", "unstaged"]>;
|
|
31006
31006
|
baseRef: z.ZodOptional<z.ZodString>;
|
|
31007
31007
|
}, "strip", z.ZodTypeAny, {
|
|
31008
|
-
mode: "
|
|
31008
|
+
mode: "base" | "uncommitted" | "staged" | "unstaged";
|
|
31009
31009
|
baseRef?: string | undefined;
|
|
31010
31010
|
}, {
|
|
31011
|
-
mode: "
|
|
31011
|
+
mode: "base" | "uncommitted" | "staged" | "unstaged";
|
|
31012
31012
|
baseRef?: string | undefined;
|
|
31013
31013
|
}>;
|
|
31014
31014
|
detail: z.ZodOptional<z.ZodEnum<["summary", "full"]>>;
|
|
@@ -31019,7 +31019,7 @@ export declare const WSSessionInboundSchema: z.ZodObject<{
|
|
|
31019
31019
|
requestId: string;
|
|
31020
31020
|
subscriptionId: string;
|
|
31021
31021
|
compare: {
|
|
31022
|
-
mode: "
|
|
31022
|
+
mode: "base" | "uncommitted" | "staged" | "unstaged";
|
|
31023
31023
|
baseRef?: string | undefined;
|
|
31024
31024
|
};
|
|
31025
31025
|
detail?: "summary" | "full" | undefined;
|
|
@@ -31029,7 +31029,7 @@ export declare const WSSessionInboundSchema: z.ZodObject<{
|
|
|
31029
31029
|
requestId: string;
|
|
31030
31030
|
subscriptionId: string;
|
|
31031
31031
|
compare: {
|
|
31032
|
-
mode: "
|
|
31032
|
+
mode: "base" | "uncommitted" | "staged" | "unstaged";
|
|
31033
31033
|
baseRef?: string | undefined;
|
|
31034
31034
|
};
|
|
31035
31035
|
detail?: "summary" | "full" | undefined;
|
|
@@ -32100,7 +32100,7 @@ export declare const WSSessionInboundSchema: z.ZodObject<{
|
|
|
32100
32100
|
requestId: string;
|
|
32101
32101
|
subscriptionId: string;
|
|
32102
32102
|
compare: {
|
|
32103
|
-
mode: "
|
|
32103
|
+
mode: "base" | "uncommitted" | "staged" | "unstaged";
|
|
32104
32104
|
baseRef?: string | undefined;
|
|
32105
32105
|
};
|
|
32106
32106
|
detail?: "summary" | "full" | undefined;
|
|
@@ -32632,7 +32632,7 @@ export declare const WSSessionInboundSchema: z.ZodObject<{
|
|
|
32632
32632
|
requestId: string;
|
|
32633
32633
|
subscriptionId: string;
|
|
32634
32634
|
compare: {
|
|
32635
|
-
mode: "
|
|
32635
|
+
mode: "base" | "uncommitted" | "staged" | "unstaged";
|
|
32636
32636
|
baseRef?: string | undefined;
|
|
32637
32637
|
};
|
|
32638
32638
|
detail?: "summary" | "full" | undefined;
|
|
@@ -48659,10 +48659,10 @@ export declare const WSInboundMessageSchema: z.ZodDiscriminatedUnion<"type", [z.
|
|
|
48659
48659
|
mode: z.ZodEnum<["uncommitted", "base", "staged", "unstaged"]>;
|
|
48660
48660
|
baseRef: z.ZodOptional<z.ZodString>;
|
|
48661
48661
|
}, "strip", z.ZodTypeAny, {
|
|
48662
|
-
mode: "
|
|
48662
|
+
mode: "base" | "uncommitted" | "staged" | "unstaged";
|
|
48663
48663
|
baseRef?: string | undefined;
|
|
48664
48664
|
}, {
|
|
48665
|
-
mode: "
|
|
48665
|
+
mode: "base" | "uncommitted" | "staged" | "unstaged";
|
|
48666
48666
|
baseRef?: string | undefined;
|
|
48667
48667
|
}>;
|
|
48668
48668
|
detail: z.ZodOptional<z.ZodEnum<["summary", "full"]>>;
|
|
@@ -48673,7 +48673,7 @@ export declare const WSInboundMessageSchema: z.ZodDiscriminatedUnion<"type", [z.
|
|
|
48673
48673
|
requestId: string;
|
|
48674
48674
|
subscriptionId: string;
|
|
48675
48675
|
compare: {
|
|
48676
|
-
mode: "
|
|
48676
|
+
mode: "base" | "uncommitted" | "staged" | "unstaged";
|
|
48677
48677
|
baseRef?: string | undefined;
|
|
48678
48678
|
};
|
|
48679
48679
|
detail?: "summary" | "full" | undefined;
|
|
@@ -48683,7 +48683,7 @@ export declare const WSInboundMessageSchema: z.ZodDiscriminatedUnion<"type", [z.
|
|
|
48683
48683
|
requestId: string;
|
|
48684
48684
|
subscriptionId: string;
|
|
48685
48685
|
compare: {
|
|
48686
|
-
mode: "
|
|
48686
|
+
mode: "base" | "uncommitted" | "staged" | "unstaged";
|
|
48687
48687
|
baseRef?: string | undefined;
|
|
48688
48688
|
};
|
|
48689
48689
|
detail?: "summary" | "full" | undefined;
|
|
@@ -49754,7 +49754,7 @@ export declare const WSInboundMessageSchema: z.ZodDiscriminatedUnion<"type", [z.
|
|
|
49754
49754
|
requestId: string;
|
|
49755
49755
|
subscriptionId: string;
|
|
49756
49756
|
compare: {
|
|
49757
|
-
mode: "
|
|
49757
|
+
mode: "base" | "uncommitted" | "staged" | "unstaged";
|
|
49758
49758
|
baseRef?: string | undefined;
|
|
49759
49759
|
};
|
|
49760
49760
|
detail?: "summary" | "full" | undefined;
|
|
@@ -50286,7 +50286,7 @@ export declare const WSInboundMessageSchema: z.ZodDiscriminatedUnion<"type", [z.
|
|
|
50286
50286
|
requestId: string;
|
|
50287
50287
|
subscriptionId: string;
|
|
50288
50288
|
compare: {
|
|
50289
|
-
mode: "
|
|
50289
|
+
mode: "base" | "uncommitted" | "staged" | "unstaged";
|
|
50290
50290
|
baseRef?: string | undefined;
|
|
50291
50291
|
};
|
|
50292
50292
|
detail?: "summary" | "full" | undefined;
|
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
export declare const SWITCHBOARD_WORKFLOW_FILE = "SWITCHBOARD.md";
|
|
3
|
+
export declare const SWITCHBOARD_MANAGED_BY_LABEL = "junction:managed-by";
|
|
4
|
+
export declare const SWITCHBOARD_MANAGED_BY_VALUE = "switchboard";
|
|
5
|
+
export declare const SWITCHBOARD_PROJECT_ID_LABEL = "junction:switchboard-project-id";
|
|
6
|
+
export declare const SWITCHBOARD_PROJECT_KEY_LABEL = "junction:switchboard-project-key";
|
|
7
|
+
export declare const SWITCHBOARD_RUN_ID_LABEL = "junction:switchboard-run-id";
|
|
8
|
+
export declare const SWITCHBOARD_ISSUE_LABEL = "junction:switchboard-issue";
|
|
9
|
+
export declare const SwitchboardWorkflowSchema: z.ZodObject<{
|
|
10
|
+
version: z.ZodLiteral<1>;
|
|
11
|
+
project: z.ZodDefault<z.ZodObject<{
|
|
12
|
+
name: z.ZodOptional<z.ZodString>;
|
|
13
|
+
tracker: z.ZodDefault<z.ZodObject<{
|
|
14
|
+
provider: z.ZodDefault<z.ZodEnum<["manual", "linear"]>>;
|
|
15
|
+
teamKey: z.ZodOptional<z.ZodString>;
|
|
16
|
+
projectId: z.ZodOptional<z.ZodString>;
|
|
17
|
+
defaultStateName: z.ZodOptional<z.ZodString>;
|
|
18
|
+
}, "strict", z.ZodTypeAny, {
|
|
19
|
+
provider: "manual" | "linear";
|
|
20
|
+
teamKey?: string | undefined;
|
|
21
|
+
projectId?: string | undefined;
|
|
22
|
+
defaultStateName?: string | undefined;
|
|
23
|
+
}, {
|
|
24
|
+
provider?: "manual" | "linear" | undefined;
|
|
25
|
+
teamKey?: string | undefined;
|
|
26
|
+
projectId?: string | undefined;
|
|
27
|
+
defaultStateName?: string | undefined;
|
|
28
|
+
}>>;
|
|
29
|
+
}, "strict", z.ZodTypeAny, {
|
|
30
|
+
tracker: {
|
|
31
|
+
provider: "manual" | "linear";
|
|
32
|
+
teamKey?: string | undefined;
|
|
33
|
+
projectId?: string | undefined;
|
|
34
|
+
defaultStateName?: string | undefined;
|
|
35
|
+
};
|
|
36
|
+
name?: string | undefined;
|
|
37
|
+
}, {
|
|
38
|
+
name?: string | undefined;
|
|
39
|
+
tracker?: {
|
|
40
|
+
provider?: "manual" | "linear" | undefined;
|
|
41
|
+
teamKey?: string | undefined;
|
|
42
|
+
projectId?: string | undefined;
|
|
43
|
+
defaultStateName?: string | undefined;
|
|
44
|
+
} | undefined;
|
|
45
|
+
}>>;
|
|
46
|
+
defaults: z.ZodDefault<z.ZodObject<{
|
|
47
|
+
agentProvider: z.ZodDefault<z.ZodString>;
|
|
48
|
+
baseBranch: z.ZodOptional<z.ZodString>;
|
|
49
|
+
remoteName: z.ZodOptional<z.ZodString>;
|
|
50
|
+
worktreePrefix: z.ZodDefault<z.ZodString>;
|
|
51
|
+
maxConcurrentRuns: z.ZodDefault<z.ZodNumber>;
|
|
52
|
+
}, "strict", z.ZodTypeAny, {
|
|
53
|
+
agentProvider: string;
|
|
54
|
+
worktreePrefix: string;
|
|
55
|
+
maxConcurrentRuns: number;
|
|
56
|
+
baseBranch?: string | undefined;
|
|
57
|
+
remoteName?: string | undefined;
|
|
58
|
+
}, {
|
|
59
|
+
baseBranch?: string | undefined;
|
|
60
|
+
remoteName?: string | undefined;
|
|
61
|
+
agentProvider?: string | undefined;
|
|
62
|
+
worktreePrefix?: string | undefined;
|
|
63
|
+
maxConcurrentRuns?: number | undefined;
|
|
64
|
+
}>>;
|
|
65
|
+
prompt: z.ZodObject<{
|
|
66
|
+
system: z.ZodString;
|
|
67
|
+
successDefinition: z.ZodOptional<z.ZodString>;
|
|
68
|
+
includeIssueDescription: z.ZodDefault<z.ZodBoolean>;
|
|
69
|
+
includeIssueIdentifier: z.ZodDefault<z.ZodBoolean>;
|
|
70
|
+
}, "strict", z.ZodTypeAny, {
|
|
71
|
+
system: string;
|
|
72
|
+
includeIssueDescription: boolean;
|
|
73
|
+
includeIssueIdentifier: boolean;
|
|
74
|
+
successDefinition?: string | undefined;
|
|
75
|
+
}, {
|
|
76
|
+
system: string;
|
|
77
|
+
successDefinition?: string | undefined;
|
|
78
|
+
includeIssueDescription?: boolean | undefined;
|
|
79
|
+
includeIssueIdentifier?: boolean | undefined;
|
|
80
|
+
}>;
|
|
81
|
+
labels: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
82
|
+
automation: z.ZodDefault<z.ZodObject<{
|
|
83
|
+
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
84
|
+
autoStart: z.ZodDefault<z.ZodBoolean>;
|
|
85
|
+
pollIntervalSeconds: z.ZodDefault<z.ZodNumber>;
|
|
86
|
+
}, "strict", z.ZodTypeAny, {
|
|
87
|
+
enabled: boolean;
|
|
88
|
+
autoStart: boolean;
|
|
89
|
+
pollIntervalSeconds: number;
|
|
90
|
+
}, {
|
|
91
|
+
enabled?: boolean | undefined;
|
|
92
|
+
autoStart?: boolean | undefined;
|
|
93
|
+
pollIntervalSeconds?: number | undefined;
|
|
94
|
+
}>>;
|
|
95
|
+
}, "strict", z.ZodTypeAny, {
|
|
96
|
+
labels: Record<string, string>;
|
|
97
|
+
version: 1;
|
|
98
|
+
project: {
|
|
99
|
+
tracker: {
|
|
100
|
+
provider: "manual" | "linear";
|
|
101
|
+
teamKey?: string | undefined;
|
|
102
|
+
projectId?: string | undefined;
|
|
103
|
+
defaultStateName?: string | undefined;
|
|
104
|
+
};
|
|
105
|
+
name?: string | undefined;
|
|
106
|
+
};
|
|
107
|
+
prompt: {
|
|
108
|
+
system: string;
|
|
109
|
+
includeIssueDescription: boolean;
|
|
110
|
+
includeIssueIdentifier: boolean;
|
|
111
|
+
successDefinition?: string | undefined;
|
|
112
|
+
};
|
|
113
|
+
defaults: {
|
|
114
|
+
agentProvider: string;
|
|
115
|
+
worktreePrefix: string;
|
|
116
|
+
maxConcurrentRuns: number;
|
|
117
|
+
baseBranch?: string | undefined;
|
|
118
|
+
remoteName?: string | undefined;
|
|
119
|
+
};
|
|
120
|
+
automation: {
|
|
121
|
+
enabled: boolean;
|
|
122
|
+
autoStart: boolean;
|
|
123
|
+
pollIntervalSeconds: number;
|
|
124
|
+
};
|
|
125
|
+
}, {
|
|
126
|
+
version: 1;
|
|
127
|
+
prompt: {
|
|
128
|
+
system: string;
|
|
129
|
+
successDefinition?: string | undefined;
|
|
130
|
+
includeIssueDescription?: boolean | undefined;
|
|
131
|
+
includeIssueIdentifier?: boolean | undefined;
|
|
132
|
+
};
|
|
133
|
+
labels?: Record<string, string> | undefined;
|
|
134
|
+
project?: {
|
|
135
|
+
name?: string | undefined;
|
|
136
|
+
tracker?: {
|
|
137
|
+
provider?: "manual" | "linear" | undefined;
|
|
138
|
+
teamKey?: string | undefined;
|
|
139
|
+
projectId?: string | undefined;
|
|
140
|
+
defaultStateName?: string | undefined;
|
|
141
|
+
} | undefined;
|
|
142
|
+
} | undefined;
|
|
143
|
+
defaults?: {
|
|
144
|
+
baseBranch?: string | undefined;
|
|
145
|
+
remoteName?: string | undefined;
|
|
146
|
+
agentProvider?: string | undefined;
|
|
147
|
+
worktreePrefix?: string | undefined;
|
|
148
|
+
maxConcurrentRuns?: number | undefined;
|
|
149
|
+
} | undefined;
|
|
150
|
+
automation?: {
|
|
151
|
+
enabled?: boolean | undefined;
|
|
152
|
+
autoStart?: boolean | undefined;
|
|
153
|
+
pollIntervalSeconds?: number | undefined;
|
|
154
|
+
} | undefined;
|
|
155
|
+
}>;
|
|
156
|
+
export type SwitchboardWorkflow = z.infer<typeof SwitchboardWorkflowSchema>;
|
|
157
|
+
export type SwitchboardWorkflowParseResult = {
|
|
158
|
+
status: "valid";
|
|
159
|
+
workflow: SwitchboardWorkflow;
|
|
160
|
+
sourceBlock: string;
|
|
161
|
+
} | {
|
|
162
|
+
status: "missing_block" | "invalid_json" | "invalid_schema";
|
|
163
|
+
message: string;
|
|
164
|
+
};
|
|
165
|
+
export declare const SWITCHBOARD_WORKFLOW_TEMPLATE = "# Switchboard\n\nThis repository is operated by Junction Switchboard.\n\n```switchboard\n{\n \"version\": 1,\n \"project\": {\n \"tracker\": {\n \"provider\": \"manual\"\n }\n },\n \"defaults\": {\n \"agentProvider\": \"codex\",\n \"worktreePrefix\": \"switchboard\",\n \"maxConcurrentRuns\": 1\n },\n \"prompt\": {\n \"system\": \"Own the issue end-to-end. Make the code changes, run the relevant checks, and leave the branch ready for review.\",\n \"successDefinition\": \"The issue is implemented, relevant checks pass, and the branch is ready for a Junction code review.\",\n \"includeIssueDescription\": true,\n \"includeIssueIdentifier\": true\n },\n \"labels\": {},\n \"automation\": {\n \"enabled\": true,\n \"autoStart\": false,\n \"pollIntervalSeconds\": 300\n }\n}\n```\n";
|
|
166
|
+
export declare function parseSwitchboardWorkflowFile(content: string): SwitchboardWorkflowParseResult;
|
|
167
|
+
export declare function buildSwitchboardRunPrompt(input: {
|
|
168
|
+
workflow: SwitchboardWorkflow;
|
|
169
|
+
issueIdentifier?: string | null;
|
|
170
|
+
issueTitle: string;
|
|
171
|
+
issueDescription?: string | null;
|
|
172
|
+
}): string;
|
|
173
|
+
export declare function sanitizeSwitchboardSlugPart(value: string): string;
|
|
174
|
+
//# sourceMappingURL=switchboard.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"switchboard.d.ts","sourceRoot":"","sources":["../../../src/shared/switchboard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,yBAAyB,mBAAmB,CAAC;AAC1D,eAAO,MAAM,4BAA4B,wBAAwB,CAAC;AAClE,eAAO,MAAM,4BAA4B,gBAAgB,CAAC;AAC1D,eAAO,MAAM,4BAA4B,oCAAoC,CAAC;AAC9E,eAAO,MAAM,6BAA6B,qCAAqC,CAAC;AAChF,eAAO,MAAM,wBAAwB,gCAAgC,CAAC;AACtE,eAAO,MAAM,uBAAuB,+BAA+B,CAAC;AAsCpE,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyB3B,CAAC;AAEZ,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE5E,MAAM,MAAM,8BAA8B,GACtC;IACE,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,mBAAmB,CAAC;IAC9B,WAAW,EAAE,MAAM,CAAC;CACrB,GACD;IACE,MAAM,EAAE,eAAe,GAAG,cAAc,GAAG,gBAAgB,CAAC;IAC5D,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEN,eAAO,MAAM,6BAA6B,s0BA+BzC,CAAC;AAUF,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,MAAM,GACd,8BAA8B,CAwChC;AAED,wBAAgB,yBAAyB,CAAC,KAAK,EAAE;IAC/C,QAAQ,EAAE,mBAAmB,CAAC;IAC9B,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAClC,GAAG,MAAM,CA4BT;AAED,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAQjE"}
|
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
export const SWITCHBOARD_WORKFLOW_FILE = "SWITCHBOARD.md";
|
|
3
|
+
export const SWITCHBOARD_MANAGED_BY_LABEL = "junction:managed-by";
|
|
4
|
+
export const SWITCHBOARD_MANAGED_BY_VALUE = "switchboard";
|
|
5
|
+
export const SWITCHBOARD_PROJECT_ID_LABEL = "junction:switchboard-project-id";
|
|
6
|
+
export const SWITCHBOARD_PROJECT_KEY_LABEL = "junction:switchboard-project-key";
|
|
7
|
+
export const SWITCHBOARD_RUN_ID_LABEL = "junction:switchboard-run-id";
|
|
8
|
+
export const SWITCHBOARD_ISSUE_LABEL = "junction:switchboard-issue";
|
|
9
|
+
const SwitchboardTrackerSchema = z
|
|
10
|
+
.object({
|
|
11
|
+
provider: z.enum(["manual", "linear"]).default("manual"),
|
|
12
|
+
teamKey: z.string().trim().min(1).max(32).optional(),
|
|
13
|
+
projectId: z.string().trim().min(1).max(128).optional(),
|
|
14
|
+
defaultStateName: z.string().trim().min(1).max(100).optional(),
|
|
15
|
+
})
|
|
16
|
+
.strict();
|
|
17
|
+
const SwitchboardDefaultsSchema = z
|
|
18
|
+
.object({
|
|
19
|
+
agentProvider: z.string().trim().min(1).max(64).default("codex"),
|
|
20
|
+
baseBranch: z.string().trim().min(1).max(255).optional(),
|
|
21
|
+
remoteName: z.string().trim().min(1).max(255).optional(),
|
|
22
|
+
worktreePrefix: z.string().trim().min(1).max(64).default("switchboard"),
|
|
23
|
+
maxConcurrentRuns: z.number().int().min(1).max(20).default(1),
|
|
24
|
+
})
|
|
25
|
+
.strict();
|
|
26
|
+
const SwitchboardPromptSchema = z
|
|
27
|
+
.object({
|
|
28
|
+
system: z.string().trim().min(1),
|
|
29
|
+
successDefinition: z.string().trim().min(1).optional(),
|
|
30
|
+
includeIssueDescription: z.boolean().default(true),
|
|
31
|
+
includeIssueIdentifier: z.boolean().default(true),
|
|
32
|
+
})
|
|
33
|
+
.strict();
|
|
34
|
+
const SwitchboardAutomationSchema = z
|
|
35
|
+
.object({
|
|
36
|
+
enabled: z.boolean().default(true),
|
|
37
|
+
autoStart: z.boolean().default(false),
|
|
38
|
+
pollIntervalSeconds: z.number().int().min(30).max(3600).default(300),
|
|
39
|
+
})
|
|
40
|
+
.strict();
|
|
41
|
+
export const SwitchboardWorkflowSchema = z
|
|
42
|
+
.object({
|
|
43
|
+
version: z.literal(1),
|
|
44
|
+
project: z
|
|
45
|
+
.object({
|
|
46
|
+
name: z.string().trim().min(1).max(255).optional(),
|
|
47
|
+
tracker: SwitchboardTrackerSchema.default({ provider: "manual" }),
|
|
48
|
+
})
|
|
49
|
+
.strict()
|
|
50
|
+
.default({
|
|
51
|
+
tracker: { provider: "manual" },
|
|
52
|
+
}),
|
|
53
|
+
defaults: SwitchboardDefaultsSchema.default({
|
|
54
|
+
agentProvider: "codex",
|
|
55
|
+
worktreePrefix: "switchboard",
|
|
56
|
+
maxConcurrentRuns: 1,
|
|
57
|
+
}),
|
|
58
|
+
prompt: SwitchboardPromptSchema,
|
|
59
|
+
labels: z.record(z.string().trim().min(1).max(255)).default({}),
|
|
60
|
+
automation: SwitchboardAutomationSchema.default({
|
|
61
|
+
enabled: true,
|
|
62
|
+
autoStart: false,
|
|
63
|
+
pollIntervalSeconds: 300,
|
|
64
|
+
}),
|
|
65
|
+
})
|
|
66
|
+
.strict();
|
|
67
|
+
export const SWITCHBOARD_WORKFLOW_TEMPLATE = `# Switchboard
|
|
68
|
+
|
|
69
|
+
This repository is operated by Junction Switchboard.
|
|
70
|
+
|
|
71
|
+
\`\`\`switchboard
|
|
72
|
+
{
|
|
73
|
+
"version": 1,
|
|
74
|
+
"project": {
|
|
75
|
+
"tracker": {
|
|
76
|
+
"provider": "manual"
|
|
77
|
+
}
|
|
78
|
+
},
|
|
79
|
+
"defaults": {
|
|
80
|
+
"agentProvider": "codex",
|
|
81
|
+
"worktreePrefix": "switchboard",
|
|
82
|
+
"maxConcurrentRuns": 1
|
|
83
|
+
},
|
|
84
|
+
"prompt": {
|
|
85
|
+
"system": "Own the issue end-to-end. Make the code changes, run the relevant checks, and leave the branch ready for review.",
|
|
86
|
+
"successDefinition": "The issue is implemented, relevant checks pass, and the branch is ready for a Junction code review.",
|
|
87
|
+
"includeIssueDescription": true,
|
|
88
|
+
"includeIssueIdentifier": true
|
|
89
|
+
},
|
|
90
|
+
"labels": {},
|
|
91
|
+
"automation": {
|
|
92
|
+
"enabled": true,
|
|
93
|
+
"autoStart": false,
|
|
94
|
+
"pollIntervalSeconds": 300
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
\`\`\`
|
|
98
|
+
`;
|
|
99
|
+
function extractSwitchboardCodeBlock(content) {
|
|
100
|
+
const match = content.match(/```switchboard\s*\n([\s\S]*?)\n```/i);
|
|
101
|
+
if (!match) {
|
|
102
|
+
return null;
|
|
103
|
+
}
|
|
104
|
+
return match[1]?.trim() ?? null;
|
|
105
|
+
}
|
|
106
|
+
export function parseSwitchboardWorkflowFile(content) {
|
|
107
|
+
const sourceBlock = extractSwitchboardCodeBlock(content);
|
|
108
|
+
if (!sourceBlock) {
|
|
109
|
+
return {
|
|
110
|
+
status: "missing_block",
|
|
111
|
+
message: "`SWITCHBOARD.md` must contain a ```switchboard fenced code block with JSON workflow settings.",
|
|
112
|
+
};
|
|
113
|
+
}
|
|
114
|
+
let parsed;
|
|
115
|
+
try {
|
|
116
|
+
parsed = JSON.parse(sourceBlock);
|
|
117
|
+
}
|
|
118
|
+
catch (error) {
|
|
119
|
+
return {
|
|
120
|
+
status: "invalid_json",
|
|
121
|
+
message: error instanceof Error ? error.message : "Invalid JSON in `SWITCHBOARD.md`.",
|
|
122
|
+
};
|
|
123
|
+
}
|
|
124
|
+
const result = SwitchboardWorkflowSchema.safeParse(parsed);
|
|
125
|
+
if (!result.success) {
|
|
126
|
+
const issues = result.error.issues
|
|
127
|
+
.map((issue) => {
|
|
128
|
+
const path = issue.path.length > 0 ? issue.path.join(".") : "root";
|
|
129
|
+
return `${path}: ${issue.message}`;
|
|
130
|
+
})
|
|
131
|
+
.join("; ");
|
|
132
|
+
return {
|
|
133
|
+
status: "invalid_schema",
|
|
134
|
+
message: issues || "Invalid `SWITCHBOARD.md` workflow schema.",
|
|
135
|
+
};
|
|
136
|
+
}
|
|
137
|
+
return {
|
|
138
|
+
status: "valid",
|
|
139
|
+
workflow: result.data,
|
|
140
|
+
sourceBlock,
|
|
141
|
+
};
|
|
142
|
+
}
|
|
143
|
+
export function buildSwitchboardRunPrompt(input) {
|
|
144
|
+
const sections = [input.workflow.prompt.system.trim()];
|
|
145
|
+
const issueLines = [];
|
|
146
|
+
if (input.workflow.prompt.includeIssueIdentifier && input.issueIdentifier?.trim()) {
|
|
147
|
+
issueLines.push(`Issue: ${input.issueIdentifier.trim()}`);
|
|
148
|
+
}
|
|
149
|
+
issueLines.push(`Title: ${input.issueTitle.trim()}`);
|
|
150
|
+
if (input.workflow.prompt.includeIssueDescription) {
|
|
151
|
+
const description = input.issueDescription?.trim();
|
|
152
|
+
if (description) {
|
|
153
|
+
issueLines.push(`Description:\n${description}`);
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
sections.push(issueLines.join("\n"));
|
|
157
|
+
const successDefinition = input.workflow.prompt.successDefinition?.trim();
|
|
158
|
+
if (successDefinition) {
|
|
159
|
+
sections.push(`Success definition:\n${successDefinition}`);
|
|
160
|
+
}
|
|
161
|
+
sections.push("Use the repository's existing Junction configuration and keep the worktree ready for review when you finish.");
|
|
162
|
+
return sections.join("\n\n");
|
|
163
|
+
}
|
|
164
|
+
export function sanitizeSwitchboardSlugPart(value) {
|
|
165
|
+
const normalized = value
|
|
166
|
+
.trim()
|
|
167
|
+
.toLowerCase()
|
|
168
|
+
.replace(/[^a-z0-9]+/g, "-")
|
|
169
|
+
.replace(/^-+|-+$/g, "");
|
|
170
|
+
return normalized.length > 0 ? normalized.slice(0, 48) : "run";
|
|
171
|
+
}
|
|
172
|
+
//# sourceMappingURL=switchboard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"switchboard.js","sourceRoot":"","sources":["../../../src/shared/switchboard.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@junctionpanel/server",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.83",
|
|
4
4
|
"description": "Junction backend server",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"publishConfig": {
|
|
@@ -70,7 +70,7 @@
|
|
|
70
70
|
"ws": "^8.14.2",
|
|
71
71
|
"zod": "^3.25.76",
|
|
72
72
|
"zod-to-json-schema": "^3.25.1",
|
|
73
|
-
"@junctionpanel/relay": "0.1.
|
|
73
|
+
"@junctionpanel/relay": "0.1.83"
|
|
74
74
|
},
|
|
75
75
|
"devDependencies": {
|
|
76
76
|
"@playwright/test": "^1.56.1",
|