{"record":{"id":"00929f6bb9231fcc","repo":"multica-ai/multica","slug":"name-is-required-00929f","errorCode":null,"errorMessage":"--name is required","messagePattern":"--name is required","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"warning","filePath":"server/cmd/multica/cmd_squad.go","lineNumber":124,"sourceCode":"\tif inst := strVal(squad, \"instructions\"); inst != \"\" {\n\t\tfmt.Printf(\"Instructions: %s\\n\", inst)\n\t}\n\treturn nil\n}\n\n// ── Create ──────────────────────────────────────────────────────────────────\n\nvar squadCreateCmd = &cobra.Command{\n\tUse:   \"create\",\n\tShort: \"Create a new squad\",\n\tArgs:  cobra.NoArgs,\n\tRunE:  runSquadCreate,\n}\n\nfunc runSquadCreate(cmd *cobra.Command, _ []string) error {\n\tname, _ := cmd.Flags().GetString(\"name\")\n\tif name == \"\" {\n\t\treturn fmt.Errorf(\"--name is required\")\n\t}\n\tleader, _ := cmd.Flags().GetString(\"leader\")\n\tif leader == \"\" {\n\t\treturn fmt.Errorf(\"--leader is required (agent name or ID)\")\n\t}\n\n\tclient, err := newAPIClient(cmd)\n\tif err != nil {\n\t\treturn err\n\t}\n\tctx, cancel := cli.APIContext(context.Background())\n\tdefer cancel()\n\n\tleaderID, err := resolveAgent(ctx, client, leader)\n\tif err != nil {\n\t\treturn fmt.Errorf(\"resolve leader: %w\", err)\n\t}\n","sourceCodeStart":106,"sourceCodeEnd":142,"githubUrl":"https://github.com/multica-ai/multica/blob/2c0912b6ec764b373d44eeea1e80f0d9f11ab417/server/cmd/multica/cmd_squad.go#L106-L142","documentation":"Client-side flag validation in `multica squads create`: the squad's display `--name` is mandatory and was empty. Validation happens before the API client is constructed, so nothing is sent and no side effects occur.","triggerScenarios":"Running `multica squads create --leader alice` without --name; script passes an unset NAME variable; passing `--name \"\"` explicitly.","commonSituations":"CI pipeline creating squads from a matrix where one entry lacks a name field; interactive use where the user assumed a prompt; whitespace-trimmed variable silently empty.","solutions":["Supply a non-empty name: `multica squads create --name \"alpha\" --leader alice`.","In scripts, default or fail fast: `: \"${NAME:?NAME required}\".","Run `multica squads create --help` to see all required flags before composing the command."],"exampleFix":"# before\nmultica squads create --leader agent-1\n\n# after\nmultica squads create --name \"research squad\" --leader agent-1","handlingStrategy":"validation","validationCode":": \"${SQUAD_NAME:?set SQUAD_NAME}\"\nmultica squads create --name \"$SQUAD_NAME\" --leader \"$LEADER\"","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Fail fast on empty variables (: ${VAR:?}) in provisioning scripts.","Validate required flags for the whole command group once (name + leader) before running.","Run `squads create --help` when adding the command to automation."],"tags":["cli","validation","flags","squad"],"backgroundTag":null,"analyzedSha":"2c0912b6ec764b373d44eeea1e80f0d9f11ab417","analyzedAt":"2026-08-15T13:25:18.241Z","schemaVersion":2},"datasetVersion":"2026-08-15T22:17:37.221Z"}