chore: Remove unused imports and variables
Cleanup: - Removed unused SDKSystemMessage import - Removed unused ensureAllDataDirs import - Removed unused userPrompt destructuring in handleInit All TypeScript diagnostics now clear. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -639,7 +639,7 @@ IMPORTANT: This is not the end of the session. You will receive more requests to
|
||||
SELECT COUNT(*) as total
|
||||
FROM user_prompts up
|
||||
JOIN sdk_sessions s ON up.claude_session_id = s.claude_session_id
|
||||
`,c=[],u=[];i&&(o+=" WHERE s.project = ?",l+=" WHERE s.project = ?",c.push(i),u.push(i)),o+=" ORDER BY created_at_epoch DESC LIMIT ? OFFSET ?",c.push(s,r);let f=n.db.prepare(o).all(...c),d=n.db.prepare(l),{total:h}=d.get(...u),m=r+s<h;n.close(),a.json({prompts:f,hasMore:m,total:h,offset:r,limit:s})}catch(r){Y.error("WORKER","Failed to get prompts",{},r),a.status(500).json({error:"Failed to get prompts"})}}handleGetProcessingStatus(e,a){a.json({isProcessing:this.isProcessing})}async handleInit(e,a){let r=parseInt(e.params.sessionDbId,10),{project:s,userPrompt:i}=e.body;Y.info("WORKER","Session init",{sessionDbId:r,project:s});let o=this.getOrCreateSession(r).claudeSessionId,l=new br;l.setWorkerPort(r,Cn());let c=l.db.prepare(`
|
||||
`,c=[],u=[];i&&(o+=" WHERE s.project = ?",l+=" WHERE s.project = ?",c.push(i),u.push(i)),o+=" ORDER BY created_at_epoch DESC LIMIT ? OFFSET ?",c.push(s,r);let f=n.db.prepare(o).all(...c),d=n.db.prepare(l),{total:h}=d.get(...u),m=r+s<h;n.close(),a.json({prompts:f,hasMore:m,total:h,offset:r,limit:s})}catch(r){Y.error("WORKER","Failed to get prompts",{},r),a.status(500).json({error:"Failed to get prompts"})}}handleGetProcessingStatus(e,a){a.json({isProcessing:this.isProcessing})}async handleInit(e,a){let r=parseInt(e.params.sessionDbId,10),{project:s}=e.body;Y.info("WORKER","Session init",{sessionDbId:r,project:s});let n=this.getOrCreateSession(r).claudeSessionId,o=new br;o.setWorkerPort(r,Cn());let l=o.db.prepare(`
|
||||
SELECT
|
||||
up.*,
|
||||
s.sdk_session_id,
|
||||
@@ -649,7 +649,7 @@ IMPORTANT: This is not the end of the session. You will receive more requests to
|
||||
WHERE up.claude_session_id = ?
|
||||
ORDER BY up.created_at_epoch DESC
|
||||
LIMIT 1
|
||||
`).get(o);l.close(),c&&this.broadcastSSE({type:"new_prompt",prompt:{id:c.id,claude_session_id:c.claude_session_id,project:c.project,prompt_number:c.prompt_number,prompt_text:c.prompt_text,created_at_epoch:c.created_at_epoch}}),c&&this.chromaSync.syncUserPrompt(c.id,c.sdk_session_id,c.project,c.prompt_text,c.prompt_number,c.created_at_epoch).catch(u=>{Y.failure("WORKER","Failed to sync user_prompt to Chroma - continuing",{promptId:c.id},u)}),this.broadcastProcessingStatus(!0),Y.success("WORKER","Session initialized",{sessionId:r,port:Cn()}),a.json({status:"initialized",sessionDbId:r,port:Cn()})}handleObservation(e,a){let r=parseInt(e.params.sessionDbId,10),{tool_name:s,tool_input:i,tool_output:n,prompt_number:o}=e.body,l=this.getOrCreateSession(r),c=Y.formatTool(s,i);Y.dataIn("WORKER",`Observation queued: ${c}`,{sessionId:r,queue:l.pendingMessages.length+1}),l.pendingMessages.push({type:"observation",tool_name:s,tool_input:i,tool_output:n,prompt_number:o}),a.json({status:"queued",queueLength:l.pendingMessages.length})}handleSummarize(e,a){let r=parseInt(e.params.sessionDbId,10),{prompt_number:s}=e.body,i=this.getOrCreateSession(r);Y.dataIn("WORKER","Summary requested",{sessionId:r,promptNumber:s,queue:i.pendingMessages.length+1}),i.pendingMessages.push({type:"summarize",prompt_number:s}),a.json({status:"queued",queueLength:i.pendingMessages.length})}handleComplete(e,a){let r=parseInt(e.params.sessionDbId,10);Y.info("WORKER","Session completed - stopping spinner",{sessionId:r}),this.broadcastProcessingStatus(!1),a.json({status:"ok"})}handleStatus(e,a){let r=parseInt(e.params.sessionDbId,10),s=this.sessions.get(r);if(!s){a.status(404).json({error:"Session not found"});return}a.json({sessionDbId:r,sdkSessionId:s.sdkSessionId,project:s.project,pendingMessages:s.pendingMessages.length})}async runSDKAgent(e){Y.info("SDK","Agent starting",{sessionId:e.sessionDbId});let a=a$();Y.info("SDK",`Using Claude executable: ${a}`,{sessionId:e.sessionDbId});try{let r=qb({prompt:this.createMessageGenerator(e),options:{model:Y5,disallowedTools:e$,abortController:e.abortController,pathToClaudeCodeExecutable:a}});for await(let n of r){if(n.type==="assistant"){let o=n.message.content,l=Array.isArray(o)?o.filter(u=>u.type==="text").map(u=>u.text).join(`
|
||||
`).get(n);o.close(),l&&this.broadcastSSE({type:"new_prompt",prompt:{id:l.id,claude_session_id:l.claude_session_id,project:l.project,prompt_number:l.prompt_number,prompt_text:l.prompt_text,created_at_epoch:l.created_at_epoch}}),l&&this.chromaSync.syncUserPrompt(l.id,l.sdk_session_id,l.project,l.prompt_text,l.prompt_number,l.created_at_epoch).catch(c=>{Y.failure("WORKER","Failed to sync user_prompt to Chroma - continuing",{promptId:l.id},c)}),this.broadcastProcessingStatus(!0),Y.success("WORKER","Session initialized",{sessionId:r,port:Cn()}),a.json({status:"initialized",sessionDbId:r,port:Cn()})}handleObservation(e,a){let r=parseInt(e.params.sessionDbId,10),{tool_name:s,tool_input:i,tool_output:n,prompt_number:o}=e.body,l=this.getOrCreateSession(r),c=Y.formatTool(s,i);Y.dataIn("WORKER",`Observation queued: ${c}`,{sessionId:r,queue:l.pendingMessages.length+1}),l.pendingMessages.push({type:"observation",tool_name:s,tool_input:i,tool_output:n,prompt_number:o}),a.json({status:"queued",queueLength:l.pendingMessages.length})}handleSummarize(e,a){let r=parseInt(e.params.sessionDbId,10),{prompt_number:s}=e.body,i=this.getOrCreateSession(r);Y.dataIn("WORKER","Summary requested",{sessionId:r,promptNumber:s,queue:i.pendingMessages.length+1}),i.pendingMessages.push({type:"summarize",prompt_number:s}),a.json({status:"queued",queueLength:i.pendingMessages.length})}handleComplete(e,a){let r=parseInt(e.params.sessionDbId,10);Y.info("WORKER","Session completed - stopping spinner",{sessionId:r}),this.broadcastProcessingStatus(!1),a.json({status:"ok"})}handleStatus(e,a){let r=parseInt(e.params.sessionDbId,10),s=this.sessions.get(r);if(!s){a.status(404).json({error:"Session not found"});return}a.json({sessionDbId:r,sdkSessionId:s.sdkSessionId,project:s.project,pendingMessages:s.pendingMessages.length})}async runSDKAgent(e){Y.info("SDK","Agent starting",{sessionId:e.sessionDbId});let a=a$();Y.info("SDK",`Using Claude executable: ${a}`,{sessionId:e.sessionDbId});try{let r=qb({prompt:this.createMessageGenerator(e),options:{model:Y5,disallowedTools:e$,abortController:e.abortController,pathToClaudeCodeExecutable:a}});for await(let n of r){if(n.type==="assistant"){let o=n.message.content,l=Array.isArray(o)?o.filter(u=>u.type==="text").map(u=>u.text).join(`
|
||||
`):typeof o=="string"?o:"",c=l.length;Y.dataOut("SDK",`Response received (${c} chars)`,{sessionId:e.sessionDbId,promptNumber:e.lastPromptNumber}),Y.debug("SDK","Full response",{sessionId:e.sessionDbId},l),this.handleAgentMessage(e,l,e.lastPromptNumber)}n.type==="result"&&n.subtype}let s=Date.now()-e.startTime;Y.success("SDK","Agent completed",{sessionId:e.sessionDbId,duration:`${(s/1e3).toFixed(1)}s`});let i=new br;i.markSessionCompleted(e.sessionDbId),i.close(),this.sessions.delete(e.sessionDbId)}catch(r){throw r.name==="AbortError"?Y.warn("SDK","Agent aborted",{sessionId:e.sessionDbId}):Y.failure("SDK","Agent error",{sessionId:e.sessionDbId},r),r}}async*createMessageGenerator(e){let a=fE(e.project,e.claudeSessionId,e.userPrompt);for(Y.dataIn("SDK",`Init prompt sent (${a.length} chars)`,{sessionId:e.sessionDbId,claudeSessionId:e.claudeSessionId,project:e.project}),Y.debug("SDK","Full init prompt",{sessionId:e.sessionDbId},a),yield{type:"user",session_id:e.claudeSessionId,parent_tool_use_id:null,message:{role:"user",content:a}};!e.abortController.signal.aborted;){if(e.pendingMessages.length===0){await new Promise(r=>setTimeout(r,r$));continue}for(;e.pendingMessages.length>0;){let r=e.pendingMessages.shift();if(r.type==="summarize"){e.lastPromptNumber=r.prompt_number;let s=new br,i=s.getSessionById(e.sessionDbId);s.close();let n=hE(i);Y.dataIn("SDK",`Summary prompt sent (${n.length} chars)`,{sessionId:e.sessionDbId,promptNumber:r.prompt_number}),Y.debug("SDK","Full summary prompt",{sessionId:e.sessionDbId},n),yield{type:"user",session_id:e.claudeSessionId,parent_tool_use_id:null,message:{role:"user",content:n}}}else if(r.type==="observation"){e.lastPromptNumber=r.prompt_number;let s=mE({id:0,tool_name:r.tool_name,tool_input:r.tool_input,tool_output:r.tool_output,created_at_epoch:Date.now()}),i=Y.formatTool(r.tool_name,r.tool_input);Y.dataIn("SDK",`Observation prompt: ${i}`,{sessionId:e.sessionDbId,promptNumber:r.prompt_number,size:`${s.length} chars`}),Y.debug("SDK","Full observation prompt",{sessionId:e.sessionDbId},s),yield{type:"user",session_id:e.claudeSessionId,parent_tool_use_id:null,message:{role:"user",content:s}}}}}}handleAgentMessage(e,a,r){Y.info("PARSER",`Processing response (${a.length} chars)`,{sessionId:e.sessionDbId,promptNumber:r,preview:a.substring(0,200)});let s=vE(a);s.length>0&&Y.info("PARSER",`Parsed ${s.length} observation(s)`,{sessionId:e.sessionDbId,promptNumber:r,types:s.map(o=>o.type).join(", ")});let i=new br;for(let o of s){let{id:l,createdAtEpoch:c}=i.storeObservation(e.claudeSessionId,e.project,o,r);Y.success("DB","Observation stored",{sessionId:e.sessionDbId,type:o.type,title:o.title,id:l}),this.broadcastSSE({type:"new_observation",observation:{id:l,session_id:e.claudeSessionId,type:o.type,title:o.title,subtitle:o.subtitle,project:e.project,prompt_number:r,created_at_epoch:c}}),this.chromaSync.syncObservation(l,e.claudeSessionId,e.project,o,r,c).then(()=>{Y.success("WORKER","Observation synced to Chroma",{sessionId:e.sessionDbId,observationId:l})}).catch(u=>{Y.error("WORKER","Observation sync failed - continuing",{sessionId:e.sessionDbId,observationId:l},u)})}Y.info("PARSER","Looking for summary tags...",{sessionId:e.sessionDbId});let n=gE(a,e.sessionDbId);if(n){Y.success("PARSER","Summary parsed successfully!",{sessionId:e.sessionDbId,promptNumber:r,hasRequest:!!n.request,hasInvestigated:!!n.investigated,hasLearned:!!n.learned,hasCompleted:!!n.completed,hasNextSteps:!!n.next_steps});let{id:o,createdAtEpoch:l}=i.storeSummary(e.claudeSessionId,e.project,n,r);Y.success("DB","\u{1F4DD} SUMMARY STORED IN DATABASE",{sessionId:e.sessionDbId,promptNumber:r,id:o}),this.broadcastSSE({type:"new_summary",summary:{id:o,session_id:e.claudeSessionId,request:n.request,investigated:n.investigated,learned:n.learned,completed:n.completed,next_steps:n.next_steps,notes:n.notes,project:e.project,prompt_number:r,created_at_epoch:l}}),this.chromaSync.syncSummary(o,e.claudeSessionId,e.project,n,r,l).then(()=>{Y.success("WORKER","Summary synced to Chroma",{sessionId:e.sessionDbId,summaryId:o})}).catch(c=>{Y.error("WORKER","Summary sync failed - continuing",{sessionId:e.sessionDbId,summaryId:o},c)})}else Y.warn("PARSER","NO SUMMARY TAGS FOUND in response",{sessionId:e.sessionDbId,promptNumber:r,contentSample:a.substring(0,500)});i.close(),this.checkAndStopSpinner()}};async function s$(){await new Qc().start(),process.on("SIGINT",()=>{Y.warn("SYSTEM","Shutting down (SIGINT)"),process.exit(0)}),process.on("SIGTERM",()=>{Y.warn("SYSTEM","Shutting down (SIGTERM)"),process.exit(0)})}s$().catch(t=>{Y.failure("SYSTEM","Fatal startup error",{},t),process.exit(1)});0&&(module.exports={WorkerService});
|
||||
/*! Bundled license information:
|
||||
|
||||
|
||||
Reference in New Issue
Block a user