Skip to content

Settle the Jobs migration open questions (pruner reach, name length, lint scope) #432

Description

@ayuskauskas

Note

The Jobs migration (#223) merged to main in #459 on 2026-08-15. The
feature/package-as-jobs branch has been deleted — base this work on main,
which now executes packages as Jobs.

Part of #223. Refs #411 ("Open questions for the epic"). Each item is a question to settle; some may resolve as "intentional, no change".

Checklist

  • pruneFailedAttempts is invoked only from handleActiveJob, never from the terminal handlers, so archives beyond the intended one can survive on a Job that goes terminal before the pruner sees the last attempt — intentional?
  • Job names use generateSafeName(63, ...) with the same inputs as the old pod names, so a raw pod and its Job can share a name across an upgrade, and child-pod names run to roughly 69 characters — check that against any consumer assuming 63 (CLI, chainsaw fixtures, label values).
  • Removing the // Code generated by gen_nodewright; DO NOT EDIT. markers means golangci-lint now applies dupl, gocyclo, goconst, unparam, and unused to api/nodewright/v1alpha1/*.go for the first time — verify make lint is clean (unverified; the cross-review ran no tooling).

Metadata

Metadata

Assignees

No one assigned

    Labels

    component/operatorSkyhook operator (controller-manager)

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions