Skip to content

check-gitlinks.sh reports clean with a modified submodule working tree #74

Description

@tinic

tools/check-gitlinks.sh reported gitlinks_worktree=clean entries=10 for a playhouse3 clone whose third_party/netxduo working tree had an uncommitted 38-line edit (common/src/nx_udp_packet_receive.c: the #38 5353 diagnostic patch with AMINETXDUO_DEBUG_MCAST_FANOUT 1). The gitlink, i.e. the checked-out submodule commit, matched the pin, so the check passed.

Effect: that clone built a bsdsocket.library of 363320 B (sha256 887c88c4…) containing the debug prints. The clean build of the same SHA (ef4fb4b) is 362760 B (0e8e7f6c…). The build looked valid for release evidence. It was caught only because the hashes differed across hosts.

Ask: a dirty tracked file in any submodule working tree should read as dirty/FAIL, e.g. git submodule foreach --recursive 'git diff --quiet HEAD' or git status --porcelain --ignore-submodules=none in the superproject. Untracked build artefacts can stay allowed.

Evidence: the saved diff is in playhouse2 ~/Archives/frozen-ef4fb4b2/ph3-netxduo-debug/netxduo-debug-from-anxd-b0a5.patch.

🤖 Generated with Claude Code

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