# Copilot Instructions

## Project Guidelines
- Use `sqlitemojo.sln` only; do not use `mojoportal-core.sln` for builds in this workspace.
- When runtime-testing the portal, use `phosend.com/Portal` (no protocol prefix) due to possible SSL force behavior.
- Use `.db.config` naming (not `.data.config`) for migration database files in this workspace. In this workspace, `*.db.config` refers specifically to database files located under `Web\Data\sqlitedb`. When describing migration, explicitly refer to specific database files such as `empty.db.config`, `mojo.db.config`, `legacy.db.config`, and `mojo-seed.db.config` to avoid semantic drift and obscuring intent. Avoid abstract phrases when explaining this migration flow; always use fully explicit file references.
- In this workspace conversation, never use the bare word 'config'; always use the dot-prefixed form '.config' or explicit filenames like `empty.db.config`, `mojo.db.config`, `legacy.db.config`, and `mojo-seed.db.config`.
- In this workspace, 'EmptyDb' refers to the rotary switch state for a blank unfilled database in the Siphon migration flow, not the `IOHelper.Empty(DirectoryInfo)` deletion method. All rotary switch and siphon migration actions operate on files in the `Web\Data\sqlitedb` folder. Additionally, 'FilledDb' should be used to refer to the state of a filled database in the same context.
- When changing live migration files in this workspace, stage/mock final content in `.txt` files first to avoid the code watcher updating the project prematurely, then copy finalized files to the desired targets in one step. Production target is `C:\___Fire\SqliteMojo\`, legacy source structure is `C:\___Fire\mojoportal\`. 
- Do not write abstract migration summaries. In this workspace, always name the exact database files: `empty.db.config`, `mojo.db.config`, `legacy.db.config`, and `mojo-seed.db.config`, and use `EmptyDb`/`FilledDb` for rotary states.
- For migration HUD workflow, support URL-driven startup actions (for example click=but1) to speed iterative debug cycles and deliver updates ordinally to the production debug path. If a URL is invalid, automatically correct it to a valid full URL and retry navigation.

## User Preferences
- Keep responses minimal with no summaries; after completing requested work, respond with just 'Done' and include the delivery ordinal number.