Debugging and validation
An ordinary Cordis plugin uses ordinary test tooling. Cover at least:
- strict TypeScript typecheck and lint;
- a real Cordis
Contextmounting required services and the entry; - native dsh command/projection/tool behavior;
- exact registry Agent identity through
mayflyCurrentAgent, including null, selection changes, and disposal; - pane/status/overlay/editor-extension definitions and render output;
- complete registration, listener, and timer cleanup on Fiber disposal;
- async callback abort, timeout, and late results;
- bounded UI at 20/40/80/120 columns.
Package gate:
sh
npm pack --dry-runInstall the real tarball into an empty directory, import its public entry, and verify exports, types, files, peer resolution, and absence of leaked workspace:, link:, or machine-local paths.
Finally install the file snapshot into a dedicated profile and accept startup, the primary workflow, narrow width, session switching, unload, and restart.