@milpa/comal 0.1.4 → 0.1.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/package.json +1 -1
- package/src/tui/controller.mjs +6 -1
package/README.md
CHANGED
|
@@ -28,7 +28,7 @@ comal --help
|
|
|
28
28
|
|
|
29
29
|
Keep the PATH line in your shell startup file if you use that prefix. If your Node manager already provides a user prefix, you can omit `--prefix "$HOME/.local"`. The package registers the `comal` executable; you do not need to create a shell alias.
|
|
30
30
|
|
|
31
|
-
You can pin a version with `npx @milpa/comal@0.1.
|
|
31
|
+
You can pin a version with `npx @milpa/comal@0.1.5` or `npm install --global @milpa/comal@0.1.5`. The local release manifest preserves SHA-256 and SHA-512 integrity is checked against npm at publish time. No independent publisher signature is claimed.
|
|
32
32
|
|
|
33
33
|
## Test without account or model
|
|
34
34
|
|
package/package.json
CHANGED
package/src/tui/controller.mjs
CHANGED
|
@@ -233,7 +233,12 @@ export class InteractiveController {
|
|
|
233
233
|
if(failure){const state=this.connections.get(id);this.ui.notice(t(state.message),true);await this.recoverConnection(id,requested);}
|
|
234
234
|
}
|
|
235
235
|
scheduleConnectionRecovery(id,action){
|
|
236
|
-
|
|
236
|
+
const runner=this.runner;
|
|
237
|
+
// Finishing a queued control persists its outcome asynchronously. Wait for
|
|
238
|
+
// that boundary; one event-loop tick can still find the runner occupied.
|
|
239
|
+
Promise.resolve(runner.processing).catch(()=>{}).then(()=>{
|
|
240
|
+
if(this.runner===runner)setImmediate(()=>this.recoverConnection(id,action).catch(()=>{}));
|
|
241
|
+
});
|
|
237
242
|
}
|
|
238
243
|
async recoverConnection(id,action){
|
|
239
244
|
if(this.closed || this.ui.busy || this.runner.processing || this.modalOverlay() || this.ui.permission)return;
|