{"record":{"id":"c51614f74de40ed9","repo":"sipeed/picoclaw","slug":"pico-client-url-is-required","errorCode":null,"errorMessage":"pico_client url is required","messagePattern":"pico_client url is required","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"pkg/channels/pico/client.go","lineNumber":39,"sourceCode":"\n// PicoClientChannel connects to a remote Pico Protocol WebSocket server.\ntype PicoClientChannel struct {\n\t*channels.BaseChannel\n\tconfig *config.PicoClientSettings\n\tconn   *picoConn\n\tmu     sync.Mutex\n\tctx    context.Context\n\tcancel context.CancelFunc\n}\n\n// NewPicoClientChannel creates a new Pico Protocol client channel.\nfunc NewPicoClientChannel(\n\tbc *config.Channel,\n\tcfg *config.PicoClientSettings,\n\tmessageBus *bus.MessageBus,\n) (*PicoClientChannel, error) {\n\tif cfg.URL == \"\" {\n\t\treturn nil, fmt.Errorf(\"pico_client url is required\")\n\t}\n\n\tbase := channels.NewBaseChannel(\"pico_client\", cfg, messageBus, bc.AllowFrom)\n\n\treturn &PicoClientChannel{\n\t\tBaseChannel: base,\n\t\tconfig:      cfg,\n\t}, nil\n}\n\n// Start dials the remote server and begins reading.\nfunc (c *PicoClientChannel) Start(ctx context.Context) error {\n\tlogger.InfoC(\"pico_client\", \"Starting Pico Client channel\")\n\tc.ctx, c.cancel = context.WithCancel(ctx)\n\n\tif err := c.dial(); err != nil {\n\t\tc.cancel()\n\t\treturn fmt.Errorf(\"pico_client initial connect: %w\", err)","sourceCodeStart":21,"sourceCodeEnd":57,"githubUrl":"https://github.com/sipeed/picoclaw/blob/49183d7e8daed0dba89ddbb6fcb60089401d9680/pkg/channels/pico/client.go#L21-L57","documentation":"Error \"pico_client url is required\" thrown in sipeed/picoclaw.","triggerScenarios":"Thrown at pkg/channels/pico/client.go:39 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"49183d7e8daed0dba89ddbb6fcb60089401d9680","analyzedAt":"2026-08-15T21:55:41.315Z","schemaVersion":2},"datasetVersion":"2026-08-15T22:17:37.221Z"}