Skip to content

feat(ocap-kernel): Add error handling for #launchVatsForSubcluster #564

Description

@grypez

During #launchVatsForSubcluster, if one of the vats fails to build its root object, one of the following should happen:

  • #launchVatsForSubcluster should throw an error describing which vats failed to buildRootObject
  • In the vats object passed to the bootstrap method, the value associated to the failing vat's key should should short circuit any attempts to use it like a root object.

The current behavior is an unhelpful message about some record missing from the run queue.

SES_UNHANDLED_REJECTION: [Error <Object <[Object: null prototype] {}>>: no record matching key 'queue.run.3'

IMO we should just consider a failure of buildRootObject to be fatal to cluster initialization.

Reading the code, it also seems that if 'bootstrap' was specified in the clusterConfig but a vat by that name was not found, the subcluster will just initialize without bootstrapping. This should probably be an error condition.

Metadata

Metadata

Assignees

Labels

Fields

No fields configured for Feature.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions