diff --git a/TESTING.md b/TESTING.md index 0109c8a9..12adaece 100644 --- a/TESTING.md +++ b/TESTING.md @@ -2006,7 +2006,7 @@ the connection's `total_changes` is 0 at close and the data reads back unchanged `-shm` bytes are not compared: every WAL reader rewrites its read marks there, so no reader can keep it byte-identical (`test_health_check_never_writes`). -Recorded deviations (plan D60–D66 and D81 renumbered D92–D98 and D113; D121–D127 assigned; D-NEW-S4-2 awaits its number): +Recorded deviations (plan D60–D66 and D81 renumbered D92–D98 and D113; D121–D128 assigned): - **D92** (shell): no "Sample configuration" chip. The Save status is truthful: "No unsaved changes.", "Unsaved changes.", "Saved in this browser." / "Saved to the server @@ -2102,7 +2102,7 @@ Recorded deviations (plan D60–D66 and D81 renumbered D92–D98 and D113; D121 again."; neither adds anything. The concept dialog does no check, so `invalid source shows the server reason` (workspace-system-sources.spec) pins it. -- **D-NEW-S4-2** (Sources): states the concept's sample rows never show. A source the +- **D128** (Sources): states the concept's sample rows never show. A source the running monitor still watches after "Watch for new outputs" was saved off reads " · watching until restart" (still "Scan changes"), and the save's status adds "Restart ComfyUI to apply: Watch for new outputs." from `restart_required_fields`. A diff --git a/tests/browser/system-concept.spec.mjs b/tests/browser/system-concept.spec.mjs index b373057c..9317a197 100644 --- a/tests/browser/system-concept.spec.mjs +++ b/tests/browser/system-concept.spec.mjs @@ -584,7 +584,7 @@ function measureSources(mainSelector) { }; } -// D-NEW-S4-2: "watching until restart" after monitoring was switched off while the observer still runs. +// D128: "watching until restart" after monitoring was switched off while the observer still runs. const WATCH_TEXT = { watching: 'watching', stopping: 'watching until restart', manual: 'manual scan', restart_pending: 'restart pending' }; const WATCHED = new Set(['watching', 'stopping']); // D98: the operation Sources adds after the concept's own, as production renders it. diff --git a/tests/browser/workspace-system-sources.spec.mjs b/tests/browser/workspace-system-sources.spec.mjs index a0d2c73a..6450344a 100644 --- a/tests/browser/workspace-system-sources.spec.mjs +++ b/tests/browser/workspace-system-sources.spec.mjs @@ -255,7 +255,7 @@ test('Watch for new outputs saves monitoring_enabled; a restart applies it', asy await saveButton(page).click(); const answer = await (await saved).json(); expect(answer.restart_required_fields).toEqual(['monitoring_enabled']); - // D-NEW-S4-2: saved for the next start, and the status says a restart applies it. + // D128: saved for the next start, and the status says a restart applies it. await expect(statusOf(page)).toHaveText('Saved to the server configuration. Restart ComfyUI to apply: Watch for new outputs.'); // The running observer keeps watching until ComfyUI restarts, and the list says so. const { settings, monitor } = await serverJson(request, SETTINGS_URL); diff --git a/tests/js/workspace-system-sources.test.js b/tests/js/workspace-system-sources.test.js index 533241f6..53e46634 100644 --- a/tests/js/workspace-system-sources.test.js +++ b/tests/js/workspace-system-sources.test.js @@ -126,7 +126,7 @@ test('Refresh files toasts the rescan counts, or says it finished when they are assert.equal(refreshedText(null), 'Files refreshed.'); }); -test('monitoring switched off: a source still watched says so until the restart (D-NEW-S4-2)', async () => { +test('monitoring switched off: a source still watched says so until the restart (D128)', async () => { const { sourceRows } = await sourcesModule; const sources = { ...STATUS, effective: [{ ...STATUS.effective[0], watch: 'stopping' }, STATUS.effective[1]] }; const { rows } = sourceRows({ sources, saved: ['output', 'input'], current: ['output', 'input'] }); @@ -134,7 +134,7 @@ test('monitoring switched off: a source still watched says so until the restart [['output · watching until restart', 'Scan changes'], ['input · manual scan', 'Scan folder']]); }); -test('a valid configured source missing from the effective list is another spelling of a listed folder (D-NEW-S4-2)', async () => { +test('a valid configured source missing from the effective list is another spelling of a listed folder (D128)', async () => { const { sourceRows, DUPLICATE_SOURCE } = await sourcesModule; assert.equal(DUPLICATE_SOURCE, 'same folder as another source'); const sources = { ...STATUS, configured: [...STATUS.configured, diff --git a/tests/js/workspace-system-state.test.js b/tests/js/workspace-system-state.test.js index 05b39032..f7e611e9 100644 --- a/tests/js/workspace-system-state.test.js +++ b/tests/js/workspace-system-state.test.js @@ -318,7 +318,7 @@ test('host read state says whether the server settings could be read', async () assert.equal(drafts.hostState(), 'loaded'); }); -test('a host save names the settings that apply after a restart (D-NEW-S4-2)', async () => { +test('a host save names the settings that apply after a restart (D128)', async () => { const { statusText, RESTART_LABELS } = await source; assert.deepEqual(RESTART_LABELS, { monitoring_enabled: 'Watch for new outputs' }); const saved = { browser: 'clean', host: 'saved', runtime: 'clean' }; diff --git a/web/js/workspace/system-sources.mjs b/web/js/workspace/system-sources.mjs index 5403409d..a204f073 100644 --- a/web/js/workspace/system-sources.mjs +++ b/web/js/workspace/system-sources.mjs @@ -21,7 +21,7 @@ * ComfyUI's output folder is used instead; "restart pending" for a source the running monitor does not watch yet; the * "Refresh files" operation (`/gallery/rescan`) closes the surface. D127: the add dialog's field is "Folder path", * starts empty and says the server's reason in place; its action is "Add", and Enter adds too. - * D-NEW-S4-2: "watching until restart" for a source the running monitor still watches after monitoring was switched off; + * D128: "watching until restart" for a source the running monitor still watches after monitoring was switched off; * "same folder as another source" for a configured source the effective list already holds under another spelling; a * save refused for one source (`invalid-source`) marks that row and the status says the server's reason. */ @@ -306,7 +306,7 @@ export function mountSources(container, { api, activity, scope, drafts, notify = actions.push(remove); } const node = el('div', undefined, 'operation'); - // D-NEW-S4-2: the source the last save was refused for; the status says why. + // D128: the source the last save was refused for; the status says why. if (row.remove !== null && row.remove === drafts.invalidSource?.()) node.setAttribute('aria-invalid', 'true'); const text = el('div'); text.append(el('h3', row.title), el('p', row.description)); diff --git a/web/js/workspace/system-state.mjs b/web/js/workspace/system-state.mjs index cdedba40..a0d29ffa 100644 --- a/web/js/workspace/system-state.mjs +++ b/web/js/workspace/system-state.mjs @@ -34,11 +34,11 @@ export const SETTINGS_STATUS = Object.freeze({ partial: 'Some changes were not saved. Review the highlighted settings.', tabOnly: 'Saved for this tab only; browser storage is unavailable.', conflict: 'Settings changed elsewhere. Reload this section to see them.', - // D-NEW-S4-2: a saved setting the running server applies only after a restart. + // D128: a saved setting the running server applies only after a restart. restart: 'Restart ComfyUI to apply:', }); -/** D-NEW-S4-2: the settings a host save can report in `restart_required_fields`, by their row label. */ +/** D128: the settings a host save can report in `restart_required_fields`, by their row label. */ export const RESTART_LABELS = Object.freeze({ monitoring_enabled: 'Watch for new outputs' }); export const DRAFT_DOMAINS = Object.freeze(['browser', 'host', 'runtime']); @@ -49,7 +49,7 @@ const ADAPTERS = ['readBrowser', 'readHost', 'readRuntime', 'writeBrowser', 'wri /** * The status copy of one `save()` outcome (`{browser, host, runtime}`, each clean/saved/tab-only/applied/failed/conflict). * `restart` lists the host fields the server applies at its next start, `invalid` the source a refused host save named - * (`{source, message}`): its message is the status (D-NEW-S4-2). + * (`{source, message}`): its message is the status (D128). */ export function statusText(outcome) { const results = DRAFT_DOMAINS.map(domain => outcome?.[domain]);