Plan maintenance and the next change
A backup keeps another copy; restoration proves that copy can be opened and used.
Why this milestone?
Record startup, backups and the next task so you can resume later.
Start here1 step · Follow in order
0101Continue next time without starting overTo checkOpen this stepClose this step
01What do you need, and what should you keep?
Your working project, data location and unfinished tasks.
The next session can find the project and next task.
Which files should AI read and save in this step?
In your tool’s project chat, ask it to open the files below. If a file is missing, follow the link back to the step that creates it.
Ask AI to read these materials first: docs/release.md
Ask AI to save the result to: docs/handoff.md
Missing these materials? Return to the step that creates them →
02What will this step help you do?
Record startup, backups and the next task so you can resume later.
Understand it, then judge for yourself
What does this concept mean?
A backup keeps another copy; restoration proves that copy can be opened and used.
How would you decide in a different situation?
Can code alone restore data entered later?
See a reference answer
Usually not. User data may live in a database, service or browser; back up and test restoration separately.
Answer in your own words; if unsure, compare the explanation above and check it against your own project.
03What exactly should you do in this step?
OpenClose
The original project and task notes
Send one action at a time: select and copy its prompt (⌘C on Mac, Ctrl+C on Windows), switch to your tool’s project chat, paste it, replace bracketed fields and send. Wait for the reply and check the stated result before continuing.
Distinguish code, application data and learning drafts. Follow the database backup and restoration actions only when your project uses a database. Otherwise back up its actual files, then continue to the final handoff action.OpenClose
Suggested prompt:
List code and actual data locations and how/where each is backed up. A commit does not replace a database backup.
Afterwards, you should see: Each backup source and destination is clear.
Create a new dated backup without overwriting older files.OpenClose
Suggested prompt:
Use the database’s supported consistent-backup method. Report source, destination and current record count, then output size. Preserve original data.
Afterwards, you should see: A nonempty backup exists at the reported location.
Restore into a separate test location and actually read the records.OpenClose
Suggested prompt:
Restore to a separate test destination. Show source and target paths first. Start only a test service connected to the copy and give its URL. Never overwrite the source.
Afterwards, you should see: The restored copy opens with records from the backup.
Open the restored copy’s URL and save “restore test 001”. Give its ID to the tool and check that it is absent from the original database. If saving fails, report the error instead of claiming success.OpenClose
Suggested prompt:
I added “restore test 001” only to the restored copy, with ID [fill in]. Check the copy’s old and new records, and read-only verify that the original does not contain this addition. Record backup location, restoration method and actual results in docs/handoff.md, then stop the test service. Do not modify the original database.
Afterwards, you should see: The copy saves new records, the original is unchanged, and restoration instructions are saved.
Record where to resume next time.OpenClose
Suggested prompt:
Update docs/handoff.md with location, revision, startup, open issues and next task. A new chat should read it rather than recreate the project.
Afterwards, you should see: The next session can find the project and next task.
Practice: personal journal (frontend + backend + database)
Use the same learning-journal project throughout this example. For your own project, compare applicable requirements without creating another project.
Back up the database as documented, restore to an isolated directory, verify the record and read the handoff next time.
- What should you see after this step?
- The backup restores successfully without overwriting the original.
- What should you do first if you get stuck?
- Copying an actively written database may be incomplete; use SQLite backup or a verified stopped-service copy.
04Not sure how? Follow each action
OpenClose
Distinguish code, application data and learning drafts. Follow the database backup and restoration actions only when your project uses a database. Otherwise back up its actual files, then continue to the final handoff action.
- What should you see after this action?
- Each backup source and destination is clear.
- What should you do if that result is missing?
- Ask for data storage if only a repository is listed.
Create a new dated backup without overwriting older files.
- What should you see after this action?
- A nonempty backup exists at the reported location.
- What should you do if that result is missing?
- Check space, path and permissions on failure.
Restore into a separate test location and actually read the records.
- What should you see after this action?
- The restored copy opens with records from the backup.
- What should you do if that result is missing?
- Stop if the paths match or are uncertain.
Open the restored copy’s URL and save “restore test 001”. Give its ID to the tool and check that it is absent from the original database. If saving fails, report the error instead of claiming success.
- What should you see after this action?
- The copy saves new records, the original is unchanged, and restoration instructions are saved.
- What should you do if that result is missing?
- Preserve mismatches and inspect backup time/paths.
Record where to resume next time.
- What should you see after this action?
- The next session can find the project and next task.
- What should you do if that result is missing?
- Describe new scope and update requirements/plans first.
05Words in this step
OpenClose
Backup ↗
A data copy retained for recovery.
Keep a spare ledger and check it can be read.
Monitoring ↗
Ongoing observation of system behavior.
Watch operating gauges over time.
Database migration ↗
A tracked change to database structure or data.
Add a ledger column while handling existing records.
06How should you handle a problem here?
OpenClose
AI wants to start over in a new chat
- Where should you look to understand the problem?
- Check that the new conversation belongs to the original folder.
- Follow these steps to resolve the problem
- Ask it to read idea.md, requirements, README, and tasks, then restate the state. Continue only the next unfinished item after a correct restatement.
- Expected recovery
- Original work is preserved and the next task is identifiable.
Edit the template with actual material, confirm, then copy into the current project conversation. Mark unknowns as undecided and replace examples as needed.
Confirmed · personalized content ready to copy
I am at “Continue next time without starting over”. Expected: Know the file and task to resume, and how records are backed up.. Actual screen/error: [add here]. Inspect existing files first. Give one reversible action at a time, its location, and expected result. Do not recreate the project or delete existing work.07Material for this step (fill or copy)
OpenClose
If you completed the individual prompts above, do not resend this full template. Use it to organize this step’s material when needed; replace bracketed fields, confirm and copy into the project chat.
Edit the template with actual material, confirm, then copy into the current project conversation. Mark unknowns as undecided and replace examples as needed.
Confirmed · personalized content ready to copy
First check access to docs/release.md. If missing or inaccessible, identify the prerequisite and owner action, then stop rather than invent prior work.
Read the project, README, task list and release record. Prepare the maintenance handoff and verify backup/restore in the authorized test environment without recreating the project. Save docs/handoff.md with actual location, revision, entry, verified/unverified status and next task. Add applicable maintenance rows: owner, frequency, console/file entry, action, normal result and failure response for backup/test restore, billing, logs, updates and expiry. Sync README and task status. Restore only in an authorized test environment; mark unavailable trials unverified. For new scope, propose affected documents/tests and wait for confirmation before development.Journal practice: fill or supplement this step
For this full-stack practice only: use this combined prompt, fill its fields and send it once instead of also sending the generic template. It does not authorize later steps.
Edit the template with actual material, confirm, then copy into the current project conversation. Mark unknowns as undecided and replace examples as needed.
Confirmed · personalized content ready to copy
First check access to docs/release.md. If missing or inaccessible, identify the prerequisite and owner action, then stop rather than invent prior work.
Read the project, README, task list and release record. Prepare the maintenance handoff and verify backup/restore in the authorized test environment without recreating the project. Save docs/handoff.md with actual location, revision, entry, verified/unverified status and next task. Add applicable maintenance rows: owner, frequency, console/file entry, action, normal result and failure response for backup/test restore, billing, logs, updates and expiry. Sync README and task status. Restore only in an authorized test environment; mark unavailable trials unverified. For new scope, propose affected documents/tests and wait for confirmation before development.
I selected the full-stack journal practice.
Use SQLite backup/restore in an authorized isolated test directory, verify IDs/counts and never overwrite the original. Handoff records commands, absolute database path, dependencies and next task; unperformed restore remains unverified.
Report separate full paths for source, dated backup and restored copy, with baseline count and sample IDs. Create a consistent backup and run the restored copy with JOURNAL_DB on a free port. Check old records, insert a restore-only item and verify the source has no new item. Stop the test service; record actual commands, paths, baseline, results, untested items and next task in docs/handoff.md. Guide backups and commits do not replace database backups.08Check this before continuing
Know the file and task to resume, and how records are backed up.
09What should you do if the expected result is missing?
OpenClose
Ask for data storage if only a repository is listed.
Compare with an example (illustration, not your result)
Backup example: weekly, owner, service backup entry, restore in test and compare records; preserve the source on failure. Adjust frequency to acceptable loss.
Words in this milestoneIn order of appearance; open for the full explanation
More troubleshooting references
Stuck? Start with what actually happens
2 situationsThese paths synthesize official docs and public reports, not frequency data. Check the symptom and verify the result.
Costs rise after release
Observed symptom: An overage bill arrives without an obvious cause.
- What should you check first?
Inspect per-service usage, time range, recent changes, and subscription versus metered charges.
- Then resolve
Configure alerts or supported hard limits per platform. Investigate logs for loops or abuse before changing behavior.
- Verify the result
Major costs are explained; alerts are checked and service-pausing limits are identified.
Edit the template with actual material, confirm, then copy into the current project conversation. Mark unknowns as undecided and replace examples as needed.
Confirmed · personalized content ready to copy
I am blocked at: Costs rise after release.
Project and tool: [name, version, and project path]
Observed behavior: [steps, exact error, or screenshot; remove secrets and personal data]
Expected result: [actual goal]
First inspect: Inspect per-service usage, time range, recent changes, and subscription versus metered charges.
Proposed approach: Configure alerts or supported hard limits per platform. Investigate logs for loops or abuse before changing behavior.
Explain the evidence and cause before making the smallest relevant fix. Preserve existing changes and do not add features. If I must act, give one precise action at a time and its expected visible result.
Success criteria: Major costs are explained; alerts are checked and service-pausing limits are identified.
Report actual checks, unchecked items, and the next step.ReferencesVercel · Spend Management ↗
Git cannot restore deleted user data
Observed symptom: Restoring code does not restore database records.
- What should you check first?
Inspect code history, database backups, file-storage backups, and recovery points separately.
- Then resolve
Restore a backup in an isolated test environment and verify records. Do not practice on production. Database backups may exclude uploaded files.
- Verify the result
A tested restoration procedure identifies recovery time and file coverage.
Edit the template with actual material, confirm, then copy into the current project conversation. Mark unknowns as undecided and replace examples as needed.
Confirmed · personalized content ready to copy
I am blocked at: Git cannot restore deleted user data.
Project and tool: [name, version, and project path]
Observed behavior: [steps, exact error, or screenshot; remove secrets and personal data]
Expected result: [actual goal]
First inspect: Inspect code history, database backups, file-storage backups, and recovery points separately.
Proposed approach: Restore a backup in an isolated test environment and verify records. Do not practice on production. Database backups may exclude uploaded files.
Explain the evidence and cause before making the smallest relevant fix. Preserve existing changes and do not add features. If I must act, give one precise action at a time and its expected visible result.
Success criteria: A tested restoration procedure identifies recovery time and file coverage.
Report actual checks, unchecked items, and the next step.ReferencesSupabase · Database backups ↗
References for this milestone
Open these when the question arises; they are not extra required actions.
- How can the project stay usable and evolve?
After delivery or before another change.
My project material and backups
Material stays in this browser, not in project files or AI chat. Chinese and English template drafts are separate; project selection and progress are shared. Do not enter passwords or API keys here.
Includes idea, progress, template drafts, personal checks and selection conditions, but not project code. Restore creates a new draft and preserves existing projects.
Download/import unavailable? Restore backup text
Draft and progress stay in this browser.
Complete the actions in order; expand the matching checks and remedies if you get stuck.