Originally created by: TheoV823
Context
The site deploy script performs a delta upload using Git diff against the site-deployed tag. The current diff filter only includes added, copied, and modified files:
_git(['diff', '--name-only', '--diff-filter=ACM', f'{since_sha}..HEAD', '--', ':(top)site/'], SCRIPT_DIR)
This excludes renamed files. A previous deploy issue showed that a rename such as site/demo.html -> site/demo/index.html can be missed by the delta upload, leaving the new path absent from the cPanel host.
Desired improvement
Make delta deploys handle renamed site files safely.
Possible approach:
- Include renamed files in the diff filter, likely
--diff-filter=ACMR.
- Ensure the new path in a rename is uploaded.
- Separately consider whether old renamed/deleted paths should be removed from the remote host or left in place intentionally.
- Add a small test or documented manual verification case for
site/foo.html -> site/foo/index.html.
Non-goals
- Do not change Mneme core package code.
- Do not change Retriever, Evaluator, benchmark, or governance behavior.
- Do not combine this with WAF, Cloudflare, or cache-rule changes unless strictly necessary.
Acceptance criteria
- Renamed site files are included in delta deploy uploads.
- A rename from a flat HTML page to an extensionless directory route uploads the new
index.html.
- Deploy output makes skipped/deleted files clear.
- Existing full deploy behavior remains unchanged.
Priority
Small deployment reliability improvement. Separate from Mneme core and benchmark work.