/** * Resolves which projects one coding harness touched while answering a single message. * * The runtime log streams what the harness really did, so a project counts as touched when the * harness named it in a tool invocation — reading, searching, running, or editing files inside * `projects//`. Only tool payloads are inspected: tool results and assistant * narration are ignored so a project merely mentioned in the conversation is never reported. * * Every candidate is matched against the projects that really exist, which both filters prompt * placeholders such as `projects//` and keeps the reported names canonical. * * @param options - Raw runtime log content and the project directory names of the agent. * @returns Touched project names in the canonical spelling, ordered by first appearance. * @private internal utility of the agent-message runtime */ export declare function resolveAgentMessageTouchedProjectNames(options: { readonly logText: string | null | undefined; readonly knownProjectNames: ReadonlyArray; }): ReadonlyArray;