# Troubleshooting

### “Missing MSB network params”

You must pass both:

* `--msb-bootstrap=<hex32>`
* `--msb-channel=<string>`

When using npm scripts, ensure you include the second `--`:

```sh
npm run peer:run -- --msb-bootstrap=<hex32> --msb-channel=<string>
```

### `zsh: command not found: --msb-channel=...`

This happens when the flag is on a new line without a `\` continuation.

Correct:

```sh
npm run peer:run -- \
  --msb-bootstrap=<hex32> \
  --msb-channel=<string>
```

### “Requester address not found in state”

Your peer MSB address must exist in MSB state and have funds to pay fees.

Fix:

* copy `Peer MSB address: trac1...` from peer logs
* transfer TNK to it from a funded MSB node

### “Subnet deployment broadcast failed”

Common causes:

* peer MSB address has no funds (fee check fails)
* MSB network params are wrong (bootstrap/channel mismatch)

### Subnet is read-only (`Subnet writable: false`)

You started a node with a keypair that does not match the subnet bootstrap writer.

If you intended to create a new subnet:

* delete `stores/<peer-store>/subnet-bootstrap.hex` and rerun

If you intended to join an existing subnet:

* ensure `--subnet-bootstrap` matches the existing subnet bootstrap

### Pear PATH warning

If Pear prints:

> prepend pear bin to PATH

follow the message once so `pear` runs directly.

### “Contract does not support ”

The demo contract supports only `catch`.

If you send another tx type, subnet apply will ignore it and it will not be indexed.
