File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -31,8 +31,11 @@ const ResolveTriageBody = z.object({
3131export async function handleResolveTriage ( c : Context < GastownEnv > , _params : { rigId : string } ) {
3232 // In production, agentId comes from the verified JWT. In development
3333 // (where authMiddleware is skipped), fall back to the identity header
34- // the container client sends with every request.
35- const agentId = getEnforcedAgentId ( c ) || c . req . header ( 'X-Gastown-Agent-Id' ) ;
34+ // the container client sends with every request. The fallback is gated
35+ // on ENVIRONMENT to prevent header spoofing in production.
36+ const agentId =
37+ getEnforcedAgentId ( c ) ||
38+ ( c . env . ENVIRONMENT === 'development' ? c . req . header ( 'X-Gastown-Agent-Id' ) : null ) ;
3639 if ( ! agentId ) {
3740 return c . json ( resError ( 'Agent authentication required' ) , 401 ) ;
3841 }
Original file line number Diff line number Diff line change @@ -204,6 +204,7 @@ const AlarmStatusOutput = z.object({
204204 beads : z . object ( {
205205 open : z . number ( ) ,
206206 inProgress : z . number ( ) ,
207+ inReview : z . number ( ) ,
207208 failed : z . number ( ) ,
208209 triageRequests : z . number ( ) ,
209210 } ) ,
Original file line number Diff line number Diff line change @@ -148,7 +148,13 @@ export function TerminalBar({ townId }: TerminalBarProps) {
148148type AlarmStatus = {
149149 alarm : { nextFireAt : string | null ; intervalMs : number ; intervalLabel : string } ;
150150 agents : { working : number ; idle : number ; stalled : number ; dead : number ; total : number } ;
151- beads : { open : number ; inProgress : number ; failed : number ; triageRequests : number } ;
151+ beads : {
152+ open : number ;
153+ inProgress : number ;
154+ inReview : number ;
155+ failed : number ;
156+ triageRequests : number ;
157+ } ;
152158 patrol : {
153159 guppWarnings : number ;
154160 guppEscalations : number ;
@@ -372,6 +378,11 @@ function AlarmStatusPane({ townId }: { townId: string }) {
372378 value = { data . beads . inProgress }
373379 highlight = { data . beads . inProgress > 0 }
374380 />
381+ < StatusRow
382+ label = "In Review"
383+ value = { data . beads . inReview }
384+ highlight = { data . beads . inReview > 0 }
385+ />
375386 < StatusRow label = "Failed" value = { data . beads . failed } warn = { data . beads . failed > 0 } />
376387 < StatusRow
377388 label = "Triage"
Original file line number Diff line number Diff line change @@ -316,6 +316,7 @@ export declare const gastownRouter: import('@trpc/server').TRPCBuiltRouter<
316316 beads : {
317317 open : number ;
318318 inProgress : number ;
319+ inReview : number ;
319320 failed : number ;
320321 triageRequests : number ;
321322 } ;
@@ -914,6 +915,7 @@ export declare const wrappedGastownRouter: import('@trpc/server').TRPCBuiltRoute
914915 beads : {
915916 open : number ;
916917 inProgress : number ;
918+ inReview : number ;
917919 failed : number ;
918920 triageRequests : number ;
919921 } ;
You can’t perform that action at this time.
0 commit comments