14 lines
759 B
TypeScript
14 lines
759 B
TypeScript
import { maintenancePolicies } from './policies.js';
|
|
import { watchdogOverview, watchdogTick } from './recovery.js';
|
|
import { maintenanceTick, plutoniumStatus } from './runtime.js';
|
|
import type { MaintenanceOverview } from '../../maintenance.js';
|
|
|
|
export function maintenanceOverview(): MaintenanceOverview {
|
|
return { policies: maintenancePolicies(), recovery: watchdogOverview(), runtime: plutoniumStatus() };
|
|
}
|
|
export async function runMaintenance(): Promise<void> {
|
|
// One failing observer must not prevent the other capabilities from reconciling.
|
|
const results = await Promise.allSettled([maintenanceTick(), watchdogTick()]);
|
|
for (const result of results) if (result.status === 'rejected') console.error('[maintenance]', result.reason);
|
|
}
|