Skip to content

Probe golden 34_auto_harvest_smoke is stale: CharacterSet.isDisjoint(with: inverted) now prints true on macOS #22

Open

Description

@odrobnik

probeMatchesStockSwift("34_auto_harvest_smoke") fails on current macOS (Darwin 27, Swift 6.4 / swiftlang-6.4.0.34.1), on untouched main (d298d01):

probe 34_auto_harvest_smoke diverged from stock Swift
normalizedOut == normalizedExpected → false

The only differing line is the 14th, print(allLetters.isDisjoint(with: nonLetters)) where nonLetters = allLetters.inverted:

value
golden Examples/llm_probes/expected/34_auto_harvest_smoke.out false
stock swift Examples/llm_probes/34_auto_harvest_smoke.swift on this machine true
SwiftScript interpreter true

So the interpreter agrees with stock Swift here; it's the checked-in golden that was captured against an older Foundation where CharacterSet.isDisjoint(with:) returned false for a set and its inverse (likely a bitmap-vs-inverted-flag quirk that Apple fixed). The suite is documented as Darwin-only and goldens come from Tools/regen-probe-expectations.sh, which makes it OS-version dependent.

Options:

  • Regenerate the golden on the current OS and accept that CI's macos-15 runner may disagree until it moves to a newer image, or
  • Drop that one line from the probe (the inverse/disjoint pair is the only OS-sensitive assertion in the file), or
  • Make the harness tolerant of a per-OS golden.

Found while moving ShellKit to a version requirement in #21; unrelated to that change.

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

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions