Skip to content

Retain Swift UserDefaults persistence qualification blocker - #247

Merged
DavidBakerEffendi merged 2 commits into
mainfrom
dave/swift-persistence-qualification-220
Sep 23, 2026
Merged

DavidBakerEffendi merged 2 commits into
mainfrom
dave/swift-persistence-qualification-220

Conversation

@DavidBakerEffendi

Copy link
Copy Markdown
Collaborator

The independent UserDefaults control resolves the real calls and same-key literal arguments, but observes only the direct raw baseline flow. The required same-key positive and scoped manual-summary engagement are missing. Retain this qualification blocker; the canonical persistence pair remains unrun.

Key Changes:

  • Preregister and retain direct, real same-key, real other-key, and local constant-body owner controls with both real keys initialized clean. Record resolved declaration identities and native AST literal-key evidence separately from summary ports, simple/read/store edges, and flow.
  • Add portable integrity and mutation checks preserving the missing positive and empty scoped model observations. Treat this as a bounded qualification gap, without a whole-tool unsupported claim or custom keyed-transfer workaround.

Touch Points:

  • adapters/codeql/swift-persistence-v1/queries/
  • evidence/swift-persistence-qualification-v1/
  • scripts/run-swift-persistence-control.py
  • scripts/verify-swift-persistence-control.py, scripts/test-swift-persistence-control.py
  • .github/workflows/ci.yml, .gitattributes, Swift qualification documentation

Validation: three test methods with eight semantic and four copied-evidence mutations passed, including from a clean Git export. All prior native-family and pending integration verifiers, cargo fmt --check, and diff checks passed. Extraction completed in 89.670 seconds; all seven queries and their decodes succeeded under the 150-second extraction / 60-second query / 2048 MiB diagnostic request. Aggregate memory compliance and semantic completeness remain unproven. CI pending.

Refs #220 and #215. Both issues remain open; acceptance is incomplete. Append, sanitizer, summary and Joern blockers remain independent. No fixture runtime execution, full-corpus run, scored activation, freeze, or publication.

@DavidBakerEffendi
DavidBakerEffendi merged commit bb8b02e into main Sep 23, 2026
4 checks passed
@DavidBakerEffendi
DavidBakerEffendi deleted the dave/swift-persistence-qualification-220 branch September 23, 2026 17:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant