multica-ai/multica · error

get label: %w

Error message

get label: %w

What it means

Wraps a failed GET /api/labels/{labelID} in `multica label get`, executed after the reference was already resolved. This is a straight fetch-by-ID, so a failure here means the resolved ID is no longer valid on the server, or the request failed on transport/auth grounds.

Source

Thrown at server/cmd/multica/cmd_label.go:144

	return nil
}

func runLabelGet(cmd *cobra.Command, args []string) error {
	client, err := newAPIClient(cmd)
	if err != nil {
		return err
	}
	ctx, cancel := cli.APIContext(context.Background())
	defer cancel()

	labelRef, err := resolveLabelID(ctx, client, args[0])
	if err != nil {
		return fmt.Errorf("resolve label: %w", err)
	}

	var label map[string]any
	if err := client.GetJSON(ctx, "/api/labels/"+labelRef.ID, &label); err != nil {
		return fmt.Errorf("get label: %w", err)
	}

	output, _ := cmd.Flags().GetString("output")
	if output == "table" {
		headers := []string{"ID", "NAME", "COLOR", "CREATED"}
		created := strVal(label, "created_at")
		if len(created) >= 10 {
			created = created[:10]
		}
		rows := [][]string{{
			strVal(label, "id"),
			strVal(label, "name"),
			strVal(label, "color"),
			created,
		}}
		cli.PrintTable(os.Stdout, headers, rows)
		return nil
	}

View on GitHub (pinned to 2c0912b6ec)

Solutions

  1. Re-run `multica label list` to confirm the label still exists
  2. Re-authenticate if the wrapped error indicates 401
  3. Retry once for transient failures; use fresh references in long-running scripts instead of cached IDs
Defensive patterns

Strategy: retry

Try / catch

if err := client.GetJSON(ctx, "/api/labels/"+id, &label); err != nil {
	if isNotFound(err) { /* label vanished: re-list and warn */ }
	if isTransient(err) { retry once }
	return fmt.Errorf("get label: %w", err)
}

Prevention

When it happens

Trigger: Label deleted between resolution and fetch (race); 401/403 from an expired token or missing permissions; server 5xx; network drop mid-request.

Common situations: Concurrent sessions deleting labels; long-lived scripts with stale resolved IDs; token expiry mid-run.

Related errors


AI-assisted analysis of multica-ai/multica@2c0912b6ec (2026-08-15). Data as JSON: /api/errors/0bf4a4fb47ca675d. Report an issue: GitHub.