mirror of
https://github.com/affaan-m/ECC.git
synced 2026-08-17 21:15:40 +02:00
* feat(install): add guided Claude plugin setup * fix: support Claude command shims on Windows * feat: support safe Claude plugin scope migration * fix(install): preserve interactive setup terminal * fix(install): auto-migrate setup scope changes * feat(install): add guided multi-harness installer * fix(install): sync Yarn binary metadata * fix(install): handle wizard EOF on Node 18 * ci: allow installer matrix tests to finish * test(install): allow slower PowerShell delegation * fix(install): harden guided provider reconciliation * test(install): harden packaged and local compatibility * chore: prepare guided installer release 2.2.0 * fix(install): report refreshed Codex marketplace state * fix(install): verify managed content provenance * test(install): allow empty Yarn smoke fixture * test(install): invoke Windows package shims safely * fix(install): close cross-platform release gaps * fix(install): require trusted GitHub origins * fix(install): preserve hook profile precedence * refactor(install): centralize trusted GitHub origins * ci: retrigger workflow run after merge of main Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> --------- Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
27 lines
785 B
JavaScript
27 lines
785 B
JavaScript
'use strict';
|
|
|
|
const assert = require('assert');
|
|
const { EventEmitter } = require('events');
|
|
const { questionWithCancellation } = require('../../scripts/setup');
|
|
|
|
async function run() {
|
|
const terminal = new EventEmitter();
|
|
terminal.question = () => new Promise(() => {});
|
|
|
|
const pendingAnswer = questionWithCancellation(terminal, 'Choose: ');
|
|
terminal.emit('close');
|
|
|
|
await assert.rejects(
|
|
pendingAnswer,
|
|
error => error.code === 'ABORT_ERR' && /readline was closed/i.test(error.message)
|
|
);
|
|
console.log(' ✓ readline close rejects an otherwise unresolved question');
|
|
console.log('\nResults: Passed: 1, Failed: 0');
|
|
}
|
|
|
|
run().catch(error => {
|
|
console.log(` ✗ ${error.message}`);
|
|
console.log('\nResults: Passed: 0, Failed: 1');
|
|
process.exitCode = 1;
|
|
});
|