{"record":{"id":"51a6ab39550b9a35","repo":"router-for-me/CLIProxyAPI","slug":"home-plugins-goarch-is-required","errorCode":null,"errorMessage":"home plugins: goarch is required","messagePattern":"home plugins: goarch is required","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"internal/homeplugins/sync.go","lineNumber":138,"sourceCode":"}\n\nfunc SyncWithReport(ctx context.Context, cfg *config.Config, pluginRuntime PluginRuntime) (SyncReport, error) {\n\treturn SyncPlatformWithReport(ctx, cfg, pluginRuntime, CurrentPlatform())\n}\n\nfunc SyncPlatformWithReport(ctx context.Context, cfg *config.Config, pluginRuntime PluginRuntime, platform Platform) (SyncReport, error) {\n\tif cfg == nil || !cfg.Home.Enabled || !cfg.Plugins.Enabled {\n\t\treturn newSyncReport(platform), nil\n\t}\n\tplatform = NormalizePlatform(platform)\n\treport := newSyncReport(platform)\n\tif platform.GOOS == \"\" {\n\t\terrPlatform := fmt.Errorf(\"home plugins: goos is required\")\n\t\tfinishReport(&report, errPlatform)\n\t\treturn report, errPlatform\n\t}\n\tif platform.GOARCH == \"\" {\n\t\terrPlatform := fmt.Errorf(\"home plugins: goarch is required\")\n\t\tfinishReport(&report, errPlatform)\n\t\treturn report, errPlatform\n\t}\n\treport.Platform = platform\n\troot, errResolvePluginsDir := config.ResolvePluginsDir(cfg.Plugins.Dir)\n\tif errResolvePluginsDir != nil {\n\t\terrPluginsDir := fmt.Errorf(\"home plugins: %w\", errResolvePluginsDir)\n\t\tfinishReport(&report, errPluginsDir)\n\t\treturn report, errPluginsDir\n\t}\n\tclient := newPluginStoreClient(cfg)\n\tvar syncErrors []error\n\tids := make([]string, 0, len(cfg.Plugins.Configs))\n\tfor id := range cfg.Plugins.Configs {\n\t\tids = append(ids, id)\n\t}\n\tsort.Strings(ids)\n\tfor _, id := range ids {","sourceCodeStart":120,"sourceCodeEnd":156,"githubUrl":"https://github.com/router-for-me/CLIProxyAPI/blob/78f0c4079e3e6273d65d03b5549cffc898703264/internal/homeplugins/sync.go#L120-L156","documentation":"Error \"home plugins: goarch is required\" thrown in router-for-me/CLIProxyAPI.","triggerScenarios":"Thrown at internal/homeplugins/sync.go:138 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Set the goarch value (target architecture) before syncing home plugins.","Verify the runtime architecture detection or provide the value explicitly."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"78f0c4079e3e6273d65d03b5549cffc898703264","analyzedAt":"2026-08-15T12:26:37.444Z","schemaVersion":2},"datasetVersion":"2026-08-15T22:17:37.221Z"}