merge: integrate lightweight dashboard candidate queries

# Conflicts:
#	control-plane/src/task-service.ts
This commit is contained in:
inman committed 2026-09-09 18:54:16 +08:00
commit b11dc7b771
4 files changed
+181 -5

No files matched your search

@@ -90,6 +90,38 @@ test('table filters use a bounded single-connection read and default to 20 rows'
assert.match(dashboardQuery, /SET LOCAL statement_timeout/);
assert.match(dashboardQuery, /SELECT \$\{search \? taskSearchSelect : taskCandidateSelect\}/);
assert.match(dashboardQuery, /CASE WHEN t\.business_route_id IS NULL THEN t\.original_text_ciphertext ELSE NULL END/);
const baseSelect = dashboardQuery.slice(
dashboardQuery.indexOf('const taskBaseSelect'),
dashboardQuery.indexOf('const taskLegacyOperationSelect')
);
const legacyOperationSelect = dashboardQuery.slice(
dashboardQuery.indexOf('const taskLegacyOperationSelect'),
dashboardQuery.indexOf('const taskDetailSelect')
);
const detailSelect = dashboardQuery.slice(
dashboardQuery.indexOf('const taskDetailSelect'),
dashboardQuery.indexOf('const taskSearchSelect')
);
const searchSelect = dashboardQuery.slice(
dashboardQuery.indexOf('const taskSearchSelect'),
dashboardQuery.indexOf('const taskCandidateSelect')
);
const candidateSelect = dashboardQuery.slice(
dashboardQuery.indexOf('const taskCandidateSelect'),
dashboardQuery.indexOf('try {', dashboardQuery.indexOf('const taskCandidateSelect'))
);
assert.doesNotMatch(baseSelect, /t\.operation/);
assert.match(legacyOperationSelect, /'action', t\.operation -> 'action'/);
assert.match(legacyOperationSelect, /'kind', t\.operation #> '\{data,existing_refs,kind\}'/);
assert.match(legacyOperationSelect, /'mode', t\.operation #> '\{data,arrangement,mode\}'/);
assert.match(detailSelect, /t\.operation, t\.original_text_ciphertext/);
assert.match(searchSelect, /t\.operation, t\.original_text_ciphertext/);
assert.doesNotMatch(candidateSelect, /t\.operation/);
assert.doesNotMatch(candidateSelect, /taskLegacyOperationSelect/);
assert.match(dashboardQuery, /filter\(\(\{ projection \}\) => !projection\.task\.business_route_id\)/);
assert.match(dashboardQuery, /'legacy_classification'/);
assert.match(dashboardQuery, /SELECT t\.id, \$\{taskLegacyOperationSelect\}/);
assert.match(dashboardQuery, /legacyOperationById/);
assert.match(dashboardQuery, /'search_messages'/);
assert.match(dashboardQuery, /filter\(\(\{ directSearchMatch \}\) => !directSearchMatch\)/);
assert.doesNotMatch(dashboardQuery, /const pool = getPool\(this\.config\)/);