Skip to content

mill gives its own clones no git identity #20

Description

@slowernet

Mill::Repo.prepare writes gc.auto and maintenance.auto to the clone (repo.rb:71) and no identity. git clone copies no config, so a clone has no identity of its own. Stages commit inside worktrees of that clone, and prompts/implement.md tells the implement stage to make a commit per task.

On a server whose account has no ~/.gitconfig — the ubuntu-latest shape mill's own CI runs on, and the deployment target the design doc describes — that first commit fails, the stage is charged a strike, and the run burns its attempts on something the machine did to it. Nothing tests this and Mill::Doctor does not check it.

Decided 2026-08-20, written up in the design doc under "Setting up, and preparing a repo". You are the author and mill is the committer, named mill at the author's address, set through GIT_COMMITTER_NAME/GIT_COMMITTER_EMAIL in Mill::Rules.env_for (rules.rb:89). It is mill's own setting, not a .mill.yml key, because that file lives in the repo being worked on and its base branch would decide what name your credentials push under. Unset, the author falls back to the machine's git config, so a laptop needs nothing.

Not implemented. Needs: Repo.prepare writing the identity beside gc.auto (repo.rb:72), the two committer variables in env_for, a doctor check that fails when nothing resolves, and a test that a prepared clone commits with the right author and committer.

Every commit mill has made so far is authored as the operator, indistinguishable in git log and git blame from work typed by hand.

Context: docs/notes/2026-08-20-plan-3a-review-triage.md, blocker zero.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions