Execution: reclaim the directories of Ended Tickets after a retention

This commit is contained in:
2026-11-02 01:46:33 +08:00
parent b348d69beb
commit 3bee231da6
18 changed files with 326 additions and 18 deletions
+5 -1
View File
@@ -22,6 +22,7 @@ import type { Store } from './store.ts'
import type { TextCache } from './cache.ts'
import type { LinkTarget, ViewHost } from './views/records.ts'
import type { Variable } from './execution-environment.ts'
import type { Reclaimer } from './reclaim.ts'
import { policyHistory } from './settings-history.ts'
import { overview } from './views/overview.ts'
import { settingsView } from './views/settings.ts'
@@ -46,6 +47,8 @@ export interface HttpHost {
readonly masterId: string
/** When this process started serving, read by the overview's liveness readout. */
readonly startedAt: string
/** Workspace reclaimer, whose summary the overview reports. */
readonly reclaimer: Pick<Reclaimer, 'summary' | 'reclaim'>
/** Resolves once startup finishes or setup determines what is still missing. */
readonly ready: Promise<void>
/** Resolved deployment; throws if read while waiting for setup (`!configured()`). */
@@ -162,7 +165,8 @@ function routes(runtime: HttpHost): Routes {
return {
'GET state': () => stateView(runtime),
'GET overview': () => overview(views(runtime), runtime.health, policyVersion(store.settings()),
executorLoad(store, runtime.executor.activeCount()), runtime.setupProblem ?? runtime.feishuProblem, runtime.startedAt),
executorLoad(store, runtime.executor.activeCount()), runtime.setupProblem ?? runtime.feishuProblem, runtime.startedAt,
runtime.reclaimer.summary),
'GET search': ({ query }) => search(views(runtime), query.q ?? '', runtime.sourceLinks),
'GET sources': () => sourcesStatus(views(runtime), runtime.health, setupState(runtime)),
'GET settings': () => settingsView(store, runtime.sources, runtime.health, setupState(runtime), runtime.machine.stateDir),