# Stalwart-migrate fails in run stage with misleading error message for Account object \[v0.16 to v1.0\]

**URL:** https://support.stalw.art/t/stalwart-migrate-fails-in-run-stage-with-misleading-error-message-for-account-object-v0-16-to-v1-0/2164
**Category:** Issues
**Created:** [November 2, 2026, 7:55am UTC](https://support.stalw.art/t/stalwart-migrate-fails-in-run-stage-with-misleading-error-message-for-account-object-v0-16-to-v1-0/2164 "2026-11-02T07:55:26Z")
**Posts on this page:** 2
**Page:** 1

<div class="post-metadata">

### Author: ![Maus](https://support.stalw.art/letter_avatar_proxy/v4/letter/m/898d66/32.png) [@Maus](https://support.stalw.art/u/Maus)
#### Post date: [November 2, 2026, 7:55am UTC](https://support.stalw.art/t/stalwart-migrate-fails-in-run-stage-with-misleading-error-message-for-account-object-v0-16-to-v1-0/2164/1 "2026-11-02T07:55:26Z")

</div>

### Issue Description

When running `stalwart-migrate` v1.0.5 to migrate a stalwart 0.16.27 installation to 1.0.1, preparation works well and seems to produce sensible output. But the `stalwart-migrate run` step fails with an odd error message on migrating an Account object.

```auto
ERROR migrate::orchestrator::account: account failed account_id=3 error=account error: account 3 does not exist in v1 because its Account object was not written; fix the registry errors reported for it and run again

```

### Expected Behavior

The migration tool should report errors in a way that helps operators to solve the situation, by giving all necessary information like IDs or problem details.

### Actual Behavior

The migration tool emits this error message:

```auto
ERROR migrate::orchestrator::account: account failed account_id=3 error=account error: account 3 does not exist in v1 because its Account object was not written; fix the registry errors reported for it and run again

```

This is not helpful because:

- the given ID is out of context; the operator would look in the _source_ installation for an object with the given ID but it is not available there
- the resolution hint references _registry errors reported_ but there are none, neither in the `run` step nor in `prepare`

### Reproduction Steps

I am not sure how to reproduce this.

### Relevant Log Output

```auto
2026-11-02T07:52:09.928807Z ERROR migrate::orchestrator::account: account failed account_id=3 error=account error: account 3 does not exist in v1 because its Account object was not written; fix the registry errors reported for it and run again
2026-11-02T07:52:09.960248Z ERROR migrate::orchestrator: run finished with failed accounts failed_accounts=1

```

There is _no other_ relevant log output, even when setting the log level to `trace`.

### Stalwart Version

v0.16.x

### Installation Method

Binary (Linux)

### Database Backend

RocksDB

### Blob Storage

RocksDB

### Search Engine

Internal

### Directory Backend

Internal

### Additional Context

My installation is a very tiny default RocksDB enterprise one with very demanding users.

### I have reviewed the documentation and FAQ and confirm that my issue is NOT addressed there.

on

### I have searched this support forum (open and closed topics) and confirm this is not a duplicate.

on

### I understand that topics in this category are triaged by a bot first but a human reply will follow up. If I’d prefer a human-only reply, I’ll add the no-ai tag to my topic.

on

---

<div class="post-metadata">

### Author: ![Maus](https://support.stalw.art/letter_avatar_proxy/v4/letter/m/898d66/32.png) [@Maus](https://support.stalw.art/u/Maus)
#### Post date: [November 2, 2026, 7:58am UTC](https://support.stalw.art/t/stalwart-migrate-fails-in-run-stage-with-misleading-error-message-for-account-object-v0-16-to-v1-0/2164/2 "2026-11-02T07:58:26Z")

</div>

Actually, there is [another similar topic](https://support.stalw.art/t/error-migrate-account-failed-account-id-12-error-account-error-account-12-does-not-exist-in-v1-because-its-account-object-was-not-written-fix-the-registry-errors-reported-for-it-and-run-again/2146) now that I didn’t see yesterday. I’ll investigate and try to mark it as a duplicate if it doesn’t give additional information.

Information for those who run into this:

- Stalwart(-CLI) ID references are in _JMAP style_, those of the migration tool are not, so `1` means `a` and `3` means `c` and so on
- `stalwart-migrate report --state <your state dir> --severity error` may help to find more error context
