// engine/elicitation/non-interactive-defaults.ts — SPEC-724: Default answers for non-interactive mode.
// Synthesises a complete ParsedAnswers deterministically from ElicitRequirementsInput,
// reusing the hasDatabase / isApi heuristics already present in elicit-requirements-handler.ts.
/**
 * Build default answers for an elicitation session without any user interaction.
 * Called when mode === 'non-interactive' and answers is empty.
 */
export function buildDefaultAnswers(input) {
    const desc = input.description.toLowerCase();
    const title = input.title;
    const hasDatabase = desc.includes('data') || desc.includes('store') || desc.includes('database');
    const isApi = desc.includes('api') || desc.includes('endpoint');
    const answers = {
        users: `End users of the ${title} feature`,
        success: `The ${title} feature works correctly and meets the described requirements`,
        scope: input.description,
        edge_cases: 'Handle empty states, invalid input, and network errors gracefully',
        performance: 'Response time under 2 seconds for typical operations',
    };
    if (hasDatabase) {
        answers.data = `Data for ${title} is persisted reliably with proper validation and error handling`;
    }
    if (isApi) {
        answers.api_contract = `API endpoints for ${title} follow RESTful conventions with proper status codes`;
    }
    return answers;
}
//# sourceMappingURL=non-interactive-defaults.js.map