Swift Concurrency
Swift 6 data-race diagnostikk, aktørisolasjon, callback-til-async-migrering
Bestått
Hva den gjør
Diagnostiserer Swift Concurrency kompilatorfeil og veileder Swift 6-migrering ved først å lese prosjektets språkmodus og isolasjonsinnstillinger, deretter anvende den minste sikre fiksen. Utløses ved Sendable, @MainActor, aktører, data races, eller konvertering av completion handlers til async/await.
Testrapport
Oppgave: Oppnå en ren bygging i Swift 6 av en modell med en callback-laster og en felles cache – swiftc -swift-version 6 ga 3 feil «main actor-isolated property ... from a Sendable closure». En grunnlinjekjøring uten ferdighet – en refleksiv fiks Task { @MainActor in ... } – kompileres rent (0 feil), det vil si at ifølge kompilatoren er begge versjonene like. Forskjellen dukket opp i neste trinn: ferdigheten, ifølge regelen «shared mutable state → actor», gjorde Cache til en aktør, mens grunnversjonen beholdt den som en klasse; da jeg la til et realistisk krav (oppvarming av cachen fra en bakgrunns Task.detached), krasjet grunnversjonen med feilen «non-sendable type 'Cache' ... cannot cross actor boundary», mens ferdighetsversjonen kompilerte rent (exit 0). Ferdigheten tvang også først til å fikse language mode og brukte sin egen regel for Task entry isolation, og beholdt den arvede @MainActor, fordi det synkrone prefikset muterer isLoading. Alle 15 references/-filene er på plass, installasjonen er sjekket i en tom HOME uten ~/.claude. En lenke til forfatterens betalte kurs er til stede, men er ærlig avslørt i bunnteksten og merket «use sparingly».
Testet på: 2026-07-17 · Claude Code 2.x (agent harness)
Installer
git clone https://github.com/AvdLee/Swift-Concurrency-Agent-Skill.git mkdir -p ~/.claude/skills cd Swift-Concurrency-Agent-Skill && cp -r swift-concurrency ~/.claude/skills/swift-concurrency
Kommandoer og eksempelprompter
/swift-concurrencySwift 6 data-race diagnostikk, aktørisolasjon, callback-til-async-migrering
Skills utløses av vanlige forespørsler — ingen kommandoer å huske. Etter installasjonen aktiverer prompter som disse skillen (på engelsk):
My Swift 6 build throws main actor-isolated Sendable closure errors, helpMigrate this completion-handler loader to async/await under Swift 6 strict modeThis shared mutable cache won't cross the actor boundary in Swift 6