Skip to content

ARC0002: Command-like class is not decorated

A concrete class has a public instance field and an instance handle() but no @command(). Rule: arc-core/arc0002. Abstract classes, static handlers, and classes ending in Helper or Extensions are excluded. With type information, a handler taking an Arc command is left to ARC0003.

Arc does not discover an undecorated command; handle() alone is not a route. A service with no public instance fields is not assumed to be a command.

export class Register { title!: string; handle() {} }
@command()
export class Register { @field(String) title!: string; handle() {} }

If the class is a service rather than a command, no decorator is needed.