/** * Research manifest CRUD operations. * Ports lib/skills/research-manifest.sh. * * Manages the legacy agent-outputs flat-file for backward compatibility. * @deprecated Use pipeline_manifest via `cleo manifest` CLI (T1119 — migration pending; ADR-027 not yet published). * Supports read, append, find, filter, archive, and rotation. * * @epic T4454 * @task T4520 */ import type { ManifestEntry } from '../types.js'; /** * Ensure agent outputs directory and manifest file exist. * @task T4520 */ export declare function ensureOutputs(cwd?: string): { created: string[]; }; /** * Read all manifest entries. * @task T4520 */ export declare function readManifest(cwd?: string): ManifestEntry[]; /** * Append a manifest entry (atomic JSONL append). * @task T4520 */ export declare function appendManifest(entry: ManifestEntry, cwd?: string): void; /** * Find a manifest entry by ID. * @task T4520 */ export declare function findEntry(id: string, cwd?: string): ManifestEntry | null; /** * Filter manifest entries by criteria. * @task T4520 */ export declare function filterEntries(criteria: { status?: string; agentType?: string; topic?: string; linkedTask?: string; actionable?: boolean; }, cwd?: string): ManifestEntry[]; /** * Get entries with pending follow-ups. * @task T4520 */ export declare function getPendingFollowup(cwd?: string): ManifestEntry[]; /** * Get unique follow-up task IDs from all manifest entries. * @task T4520 */ export declare function getFollowupTaskIds(cwd?: string): string[]; /** * Check if a task has linked research. * @task T4520 */ export declare function taskHasResearch(taskId: string, cwd?: string): { hasResearch: boolean; count: number; }; /** * Archive a manifest entry (move to archive status). * @task T4520 */ export declare function archiveEntry(entryId: string, cwd?: string): boolean; /** * Rotate manifest by archiving old entries. * @task T4520 */ export declare function rotateManifest(maxEntries?: number, cwd?: string): number; //# sourceMappingURL=research.d.ts.map