Importing a spreadsheet
Preview, review and commit, and what gets held.
Your spreadsheet is usually the real system of record. Suvi imports it rather than asking you to abandon it, and can keep it in sync afterwards.
Preview, then commit
Every import runs in two phases. Preview shows what would change: which columns mapped to which fields, which rows are new, which are updates, and which would be rejected and why. Nothing is written.
Commit applies it. Commits are idempotent: rows are hashed, so running the same import twice does not duplicate anything.
Sheet understanding
Real spreadsheets carry conventions that are not in the headers. A blank cell meaning "same as above". A colour meaning sold. A units column that is sometimes grams and sometimes carats.
Suvi runs a one-time pass per tab to learn those conventions, then caches what it learned. If it gets one wrong, correct it and the correction sticks.
Live sync
Register a sheet once and edits flow into Suvi as you make them. Syncs are versioned, so a bad edit can be reverted.
What gets held
Sync will stop rather than apply a change that looks like data loss:
| What did Suvi see? | What happens |
|---|---|
| A tab reading far below its usual row count | Reconcile blocked, held for review |
| A tab reading zero rows | Archiving blocked, held for review |
| A sync already running on the same sheet | Second sync refused |
These guards exist because these things happened
Each was added after a real incident on a customer instance, not in anticipation. A hold means Suvi noticed something wrong and stopped. Open the review queue, confirm it is intended, and release it.