Skip to content

Doctor: seeded memories state the settled signing shape; a finding names a rule the project may disable - #142

Merged
foscomputerservices merged 2 commits into
mainfrom
fix/seeded-memory-xcode16
Sep 2, 2026
Merged

Doctor: seeded memories state the settled signing shape; a finding names a rule the project may disable#142
foscomputerservices merged 2 commits into
mainfrom
fix/seeded-memory-xcode16

Conversation

@foscomputerservices

Copy link
Copy Markdown
Owner

Summary

Two commits, both from the first doctor run against a project the scaffolder never created.

Seeded memories state the settled signing shape. The scaffold's entitlement-is-a-symptom.md and xcode16-dynamic-spm-packages.md carried an unratified evaluation that called disable-library-validation a required companion of ENABLE_DEBUG_DYLIB and floated retiring SPMLibraries. Both now state the shape the templates ship and fosmvvm-doctor audits: one SPMLibraries doorway, app-only embed with re-sign, hardened runtime off in Debug only, ENABLE_DEBUG_DYLIB unset, no entitlement.

A doctor finding can name a rule the project may disable. Finding.rule (DisableableRule, one case: app_sandbox) marks the few findings a project may hold on purpose, such as an ops app that runs unsandboxed to reach local infrastructure. The JSON carries the identifier on those findings only; the text report prints it under the finding. fosmvvm-review gains doctor.disabled_rules in .fosmvvm-review.yml (rule, target, reason), SwiftLint's vocabulary: a matched finding reports at warning with the reason beside it and no longer halts tier 2. Doctor's own verdict is unchanged. Design addendum in docs/work/fosmvvm-doctor-design.md, DocC in CreatingAProject, plugin 2.64.0.

Verification

  • swift test --filter FOSMVVMBootstrapTests: 90 tests in 14 suites pass (two new: the withheld sandbox names its rule; a missing network.client does not).
  • The JSON contract test round-trips the identifier and confirms the key is absent on findings without one.
  • Text and JSON reports confirmed against a real pre-0.14 client-server project: exactly one finding carries app_sandbox.
  • swiftformat and swiftlint clean on the changed Swift files.

The two seeded memory files carried an unratified evaluation that called
disable-library-validation a required companion of ENABLE_DEBUG_DYLIB and
floated retiring SPMLibraries. Both now state the shape the templates ship
and fosmvvm-doctor audits: one SPMLibraries doorway, app-only embed with
re-sign, hardened runtime off in Debug only, ENABLE_DEBUG_DYLIB unset, no
entitlement. The index lines follow.
… fosmvvm-review honors it

Finding gains an optional rule (DisableableRule, one case: app_sandbox) on
the findings a project may hold on purpose, named in SwiftLint's vocabulary.
The JSON carries the identifier on those findings only; the text report
prints it under the finding. The review skill's .fosmvvm-review.yml gains
doctor.disabled_rules (rule, target, reason): a matched finding reports at
warning with the reason and no longer halts tier 2. Doctor's own verdict is
unchanged. Design addendum, DocC, and plugin 2.64.0.
@foscomputerservices
foscomputerservices merged commit 9cbfc39 into main Sep 2, 2026
15 checks passed
@foscomputerservices
foscomputerservices deleted the fix/seeded-memory-xcode16 branch September 2, 2026 17:11
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