Skip to content

TEST-PR324 — gitignore operator custom root files

TEST-PR324 — gitignore operator custom root files

Section titled “TEST-PR324 — gitignore operator custom root files”

Created: 2026-03-22 PR: #324 (hotfix/gitignore-operator-files → main) Purpose: Verify the two test-plan items before operator merges PR #324


  • You are in the scaffolder engine root: /mnt/d/scaffolder-engine/
  • You are on the hotfix/gitignore-operator-files branch
  • No uncommitted changes that would be lost (stash if needed)
  • The following files exist locally as operator custom files:
    • CLAUDE.md
    • STANDARDS.md
    • PROJECT-INSTRUCTIONS.md
    • RELEASE-CHECKLIST.md

Test 1 — Branch switch protection after local merge

Section titled “Test 1 — Branch switch protection after local merge”

What we’re testing: After the hotfix .gitignore lands, switching branches no longer overwrites the operator’s custom root files with generic versions.

  1. Record current state of operator files (checksums for comparison):

    Terminal window
    md5sum CLAUDE.md STANDARDS.md PROJECT-INSTRUCTIONS.md RELEASE-CHECKLIST.md

    Save this output — you’ll compare against it at the end.

  2. Checkout main and pull latest:

    Terminal window
    git checkout main
    git pull origin main
  3. Merge the hotfix branch locally (do NOT push):

    Terminal window
    git merge hotfix/gitignore-operator-files --no-edit
  4. Remove the 4 files from git tracking (they’re now gitignored):

    Terminal window
    git rm --cached CLAUDE.md STANDARDS.md PROJECT-INSTRUCTIONS.md RELEASE-CHECKLIST.md
    git commit -m "chore: stop tracking operator custom root files"

    Note: git rm --cached removes from tracking only — files stay on disk.

  5. Verify files still exist on disk:

    Terminal window
    ls -la CLAUDE.md STANDARDS.md PROJECT-INSTRUCTIONS.md RELEASE-CHECKLIST.md
  6. Verify files are untracked:

    Terminal window
    git status

    The 4 files should NOT appear at all (not modified, not staged, not untracked) because .gitignore now hides them.

  7. Switch to dev and back:

    Terminal window
    git checkout dev
    git checkout main
  8. Verify files survived the round-trip — checksums must match step 1:

    Terminal window
    md5sum CLAUDE.md STANDARDS.md PROJECT-INSTRUCTIONS.md RELEASE-CHECKLIST.md
  9. PASS if checksums match. FAIL if any file changed or disappeared.

  10. Clean up — undo the local merge and untrack commit:

    Terminal window
    git reset --hard origin/main
    git checkout hotfix/gitignore-operator-files

Test 2 — Engine-root swap still works with git add -f

Section titled “Test 2 — Engine-root swap still works with git add -f”

What we’re testing: Even though the 4 files are gitignored, git add -f can still force-stage them (needed for the engine-root swap that commits generic product versions for PRs).

  1. Confirm you’re on hotfix/gitignore-operator-files:

    Terminal window
    git branch --show-current
  2. Verify the files are gitignored:

    Terminal window
    git check-ignore CLAUDE.md STANDARDS.md PROJECT-INSTRUCTIONS.md RELEASE-CHECKLIST.md

    All 4 should be listed.

  3. Force-add one file:

    Terminal window
    git add -f CLAUDE.md
  4. Verify it staged:

    Terminal window
    git diff --cached --name-only

    Should show CLAUDE.md.

  5. PASS if the file staged successfully despite being gitignored.

  6. Clean up — unstage without committing:

    Terminal window
    git reset HEAD CLAUDE.md

TestResultNotes
1 — Branch switch protection
2 — Engine-root swap with -f

Report results to operator. Operator merges PR #324 on GitHub, then:

Terminal window
git checkout main
git pull origin main
git rm --cached CLAUDE.md STANDARDS.md PROJECT-INSTRUCTIONS.md RELEASE-CHECKLIST.md
git commit -m "chore: stop tracking operator custom root files"
git push origin main
git checkout dev
git merge main --no-edit
git push origin dev