WIP: Explain protected Save As destination collisions #47
Draft
Codex-9e8r6t
wants to merge 6 commits from
codex/save-as-diagnostics-01a0d717-20261001 into codex/compact-context-01a0d717-20260925
pull from: codex/save-as-diagnostics-01a0d717-20261001
merge into: :codex/compact-context-01a0d717-20260925
:main
:codex/navigation-help-save-01a0d717-20261002
:codex/navigation-validation-01a0d717-20261001
:codex/focus-workspace-experiment-01a0d717-20261001
:codex/save-as-diagnostics-01a0d717-20261001
:codex/wrapped-label-experiment-01a0d717-20261001
:codex/label-cue-experiment-01a0d717-20261001
:codex/diagram-readability-01a0d717-20260925
:codex/compact-context-01a0d717-20260925
:codex/projection-navigation-ytr83r-20260925
:codex/grid-cache-01a0d6fd-20260925
:codex/state-label-layout-ytr83r-20260924
:codex/drag-out-01a0d6fd-20260925
:codex/connection-icons-ytr83r-20260925
:codex/scenario-multiselect-9e8r6t-20260924
:codex/release1-956atf
:codex/auto-layout-ytr83r-20260925
:codex/analysis-mixed-cli-956atf-20260925
:codex/analysis-public-read-956atf-20260925
:codex/ordinary-source8-956atf-20260925
:codex/analysis-mixed-acceptance-956atf-20260925
:codex/arrange-reset-ytr83r-20260925
:codex/analysis-entry-producers-956atf-20260925
:codex/analysis-text-producers-956atf-20260925
:codex/analysis-mixed-emission-956atf-20260925
:codex/analysis-carried-phase-956atf-20260925
:codex/behavior-anchor-plan-ytr83r-20260912
:codex/analysis-mixed-rename-plan-956atf-20260924
:codex/analysis-ordinary-index-956atf-20260924
:codex/prerelease-package-qa-9e8r6t-20260924
:codex/analysis-mixed-index-956atf-20260924
:codex/prerelease-integrated-956atf-20260924
:codex/state-picker-test-ytr83r-20260924
:codex/analysis-mixed-project-956atf-20260923
:codex/scenario-planner-first-gate-9e8r6t-20260924
:codex/prerelease-test-import-ytr83r-20260924
:codex/multiselect-allocation-9e8r6t-20260923
:codex/picker-escape-ytr83r-20260923
:codex/multiselect-union-956atf-20260923
:codex/multiselect-process-9e8r6t-20260923
:codex/analysis-mixed-syntax-956atf-20260923
:codex/peer-union-956atf-20260923
:codex/multiselect-state-9e8r6t-20260923
:codex/allocation-drawing-ytr83r-20260923
:codex/multiselect-9e8r6t-20260923
:codex/analysis-original-span-956atf-20260923
:codex/analysis-s3-evidence-956atf-20260922
:codex/transition-lifecycle-9e8r6t
:codex/traceability-view-ytr83r-20260923
:codex/state-bends-ytr83r-20260923
:codex/edge-anchors-escape-ytr83r-20260923
:codex/edge-anchors-ytr83r-20260922
:codex/scenario-inspector-actions-ytr83r-20260922
:codex/analysis-s2c-evidence-956atf-20260922
:codex/analysis-s3-index-956atf-20260922
:codex/ordinary-text-union-9e8r6t
:codex/scenario-spacing-ytr83r-20260913
:codex/scenario-validation-ytr83r-20260913
:codex/text-defaults-9e8r6t
:codex/metamodel-assessment-9e8r6t
:codex/rename-scroll-native-evidence-956atf-20260913
:codex/text-union-956atf-20260913
:codex/scenario-label-lookup-ytr83r-20260913
:codex/scenario-label-fields-ytr83r-20260913
:codex/scenario-details-ytr83r-20260913
:codex/navigation-native-440-evidence-20260913
:codex/rename-details-scroll-956atf-20260913
:codex/scenario-spacing-fixes-ytr83r-20260913
:codex/navigation-440-evidence-956atf-20260913
:codex/text-diagnostics-9e8r6t
:codex/analysis-s2b-evidence-publication-20260913
:codex/text-workspace-9e8r6t
:codex/scenario-workspace-ytr83r-20260913
:codex/scenario-renderer-bridge-ytr83r-20260913
:codex/scenario-layout-ytr83r-20260913
:codex/scenario-direct
:codex/release1-ytr83r
:codex/release1-engineering
:codex/release1-continuation
:codex/release1-9e8r6t
:codex/palette-authoring-20260910
:codex/navigation-repair-prerelease-source-20260911
:codex/navigation-rename-union-ytr83r-20260912
:codex/integration-transfer-20260911
:codex/integration-transfer-20260910
:codex/diagram-delete-956atf-20260912
:codex/diagram-coverage-fixes-ytr83r-20260912
:codex/contextual-prerelease-source-20260911
:codex/canvas-union-ytr83r-20260911
:codex/behavior-transfer-20260910
:codex/behavior-layout-scene-ytr83r-20260912
:codex/behavior-canvas-956atf-20260911
:codex/behavior-authoring-20260910
:codex/authoring-prerelease-source-20260911
:codex/analysis-source8-956atf-20260913
:codex/analysis-core-956atf-20260911
:codex/data-contract-integration
:codex/data-linux-review
:codex/hosted-desktop
:codex/semantic-review
:codex/process-direct
:codex/transition-probe
:codex/state-integration
:codex/state-linux-review
:codex/behavior-draft-lifecycle
:codex/port-placement
:codex/state-diagram-core
:codex/typed-port-contracts
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Saving a source project under a new entry name in the same directory can collide with its existing included files. The desktop now identifies protected destination files and explains fresh-directory Save As or existing-entry Save All recovery; genuine observed external edits retain their external-change diagnostic. No save guard, transaction, core/server API or schema changes.
Tested production source:
0e83157e09. Headef28f1784eincorporates the published compact Help evidence without changing the tested production inputs. Validation, retained first compile failure and independent review.Windows validation: 29 targeted tests pass; strict desktop/all-target Clippy and matching GUI build pass. Native normal/minimum-window checks cover collision refusal, preserved dirty state, both save recovery paths and real external-edit refusal/restoration. All eight complete 37-file byte checkpoints and the full parsed-Project name-only oracle pass. Independent final review finds no material blocker in this bounded contribution. No new full-suite, Linux or packaged-release claim. The published compact Help ZIP remains unchanged and retains the earlier wording.
Review comparison for issue #46; retarget to the coordinated follow-up integration branch before merging. Preserve published milestone branches/tags and assets. No broader OA/SA release acceptance is implied.
View command line instructions
Checkout
From your project repository, check out a new branch and test the changes.