faf-cli 3.4.7 → 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/README.md +59 -41
  2. package/dist/cli.d.ts.map +1 -1
  3. package/dist/cli.js +60 -3
  4. package/dist/cli.js.map +1 -1
  5. package/dist/commands/antigravity.d.ts +16 -0
  6. package/dist/commands/antigravity.d.ts.map +1 -0
  7. package/dist/commands/antigravity.js +398 -0
  8. package/dist/commands/antigravity.js.map +1 -0
  9. package/dist/commands/conductor.js +1 -1
  10. package/dist/commands/conductor.js.map +1 -1
  11. package/dist/commands/demo.js +2 -2
  12. package/dist/commands/demo.js.map +1 -1
  13. package/dist/commands/gemini.js +1 -1
  14. package/dist/commands/gemini.js.map +1 -1
  15. package/dist/commands/go.d.ts +23 -0
  16. package/dist/commands/go.d.ts.map +1 -0
  17. package/dist/commands/go.js +277 -0
  18. package/dist/commands/go.js.map +1 -0
  19. package/dist/commands/init.d.ts +1 -0
  20. package/dist/commands/init.d.ts.map +1 -1
  21. package/dist/commands/init.js +24 -1
  22. package/dist/commands/init.js.map +1 -1
  23. package/dist/commands/status.d.ts +2 -1
  24. package/dist/commands/status.d.ts.map +1 -1
  25. package/dist/commands/status.js +35 -1
  26. package/dist/commands/status.js.map +1 -1
  27. package/dist/compiler/faf-compiler.d.ts.map +1 -1
  28. package/dist/compiler/faf-compiler.js +8 -2
  29. package/dist/compiler/faf-compiler.js.map +1 -1
  30. package/dist/engines/c-mirror/core/mirror-engine.d.ts +1 -0
  31. package/dist/engines/c-mirror/core/mirror-engine.d.ts.map +1 -1
  32. package/dist/engines/c-mirror/core/mirror-engine.js +45 -3
  33. package/dist/engines/c-mirror/core/mirror-engine.js.map +1 -1
  34. package/dist/engines/c-mirror/faf-extensions/faf-mirror.d.ts +2 -0
  35. package/dist/engines/c-mirror/faf-extensions/faf-mirror.d.ts.map +1 -1
  36. package/dist/engines/c-mirror/faf-extensions/faf-mirror.js +19 -5
  37. package/dist/engines/c-mirror/faf-extensions/faf-mirror.js.map +1 -1
  38. package/dist/engines/execution-context.d.ts +75 -0
  39. package/dist/engines/execution-context.d.ts.map +1 -0
  40. package/dist/engines/execution-context.js +308 -0
  41. package/dist/engines/execution-context.js.map +1 -0
  42. package/dist/smart-faf.d.ts +16 -5
  43. package/dist/smart-faf.d.ts.map +1 -1
  44. package/dist/smart-faf.js +124 -52
  45. package/dist/smart-faf.js.map +1 -1
  46. package/dist/systems/question-system.d.ts +122 -0
  47. package/dist/systems/question-system.d.ts.map +1 -0
  48. package/dist/systems/question-system.js +411 -0
  49. package/dist/systems/question-system.js.map +1 -0
  50. package/dist/utils/conductor-parser.js +2 -1
  51. package/dist/utils/conductor-parser.js.map +1 -1
  52. package/package.json +2 -2
  53. package/project.faf +1 -1
@@ -0,0 +1,122 @@
1
+ /**
2
+ * FAF Unified Question System
3
+ *
4
+ * Provides a unified interface for asking questions that works across:
5
+ * - Terminal (inquirer prompts)
6
+ * - Claude Code (AskUserQuestion structured output)
7
+ * - MCP (JSON response for AI handling)
8
+ *
9
+ * This enables "faf go" to guide users to Gold Code regardless of context.
10
+ *
11
+ * @since v3.5.0
12
+ */
13
+ import { ExecutionContextInfo } from '../engines/execution-context';
14
+ /**
15
+ * Question types supported by the system
16
+ */
17
+ export type QuestionType = 'text' | 'select' | 'multiselect' | 'confirm';
18
+ /**
19
+ * Option for select/multiselect questions
20
+ */
21
+ export interface QuestionOption {
22
+ label: string;
23
+ value: string;
24
+ description?: string;
25
+ }
26
+ /**
27
+ * A single question in the unified format
28
+ */
29
+ export interface FafQuestion {
30
+ /** Unique identifier for the question */
31
+ id: string;
32
+ /** The full question text */
33
+ question: string;
34
+ /** Short header/label (max 12 chars, for Claude Code chips) */
35
+ header: string;
36
+ /** The .faf field path this question populates (e.g., "project.goal") */
37
+ field: string;
38
+ /** Question type */
39
+ type: QuestionType;
40
+ /** Options for select/multiselect */
41
+ options?: QuestionOption[];
42
+ /** Is this question required? */
43
+ required: boolean;
44
+ /** Default value if any */
45
+ defaultValue?: string;
46
+ /** Validation function */
47
+ validate?: (value: string) => boolean | string;
48
+ /** Help text shown below the question */
49
+ helpText?: string;
50
+ }
51
+ /**
52
+ * Result from asking questions
53
+ */
54
+ export interface QuestionResult {
55
+ /** How were questions answered? */
56
+ mode: 'interactive' | 'structured' | 'skipped';
57
+ /** Collected answers (for interactive mode) */
58
+ answers?: Record<string, string | string[]>;
59
+ /** Questions to present (for structured mode / Claude Code) */
60
+ questions?: FafQuestion[];
61
+ /** Was the flow cancelled? */
62
+ cancelled?: boolean;
63
+ }
64
+ /**
65
+ * Structured output format for Claude Code / MCP
66
+ */
67
+ export interface StructuredQuestionOutput {
68
+ needsInput: true;
69
+ context: string;
70
+ currentScore?: number;
71
+ targetScore: number;
72
+ questions: Array<{
73
+ question: string;
74
+ header: string;
75
+ field: string;
76
+ type: QuestionType;
77
+ options?: Array<{
78
+ label: string;
79
+ description: string;
80
+ }>;
81
+ required: boolean;
82
+ }>;
83
+ }
84
+ /**
85
+ * Registry of questions for .faf fields
86
+ * These are the questions asked during "faf go"
87
+ */
88
+ export declare const QUESTION_REGISTRY: Record<string, Omit<FafQuestion, 'id' | 'field'>>;
89
+ /**
90
+ * Build a FafQuestion from a field path
91
+ */
92
+ export declare function buildQuestion(field: string): FafQuestion | null;
93
+ /**
94
+ * Build questions for a list of missing fields
95
+ */
96
+ export declare function buildQuestionsForFields(fields: string[]): FafQuestion[];
97
+ /**
98
+ * Get all available questions (for full interview)
99
+ */
100
+ export declare function getAllQuestions(): FafQuestion[];
101
+ /**
102
+ * Get questions for reaching Gold Code (most important fields)
103
+ */
104
+ export declare function getGoldCodeQuestions(): FafQuestion[];
105
+ /**
106
+ * Ask questions using the appropriate method for the current context
107
+ */
108
+ export declare function askQuestions(questions: FafQuestion[], context?: ExecutionContextInfo): Promise<QuestionResult>;
109
+ /**
110
+ * Ask a single question
111
+ */
112
+ export declare function askQuestion(question: FafQuestion, context?: ExecutionContextInfo): Promise<QuestionResult>;
113
+ /**
114
+ * Format questions as structured output for Claude Code
115
+ * This is what Claude Code sees and uses with AskUserQuestion
116
+ */
117
+ export declare function formatForClaudeCode(questions: FafQuestion[], currentScore?: number): StructuredQuestionOutput;
118
+ /**
119
+ * Print structured output for Claude Code to consume
120
+ */
121
+ export declare function outputForClaudeCode(questions: FafQuestion[], currentScore?: number): void;
122
+ //# sourceMappingURL=question-system.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"question-system.d.ts","sourceRoot":"","sources":["../../src/systems/question-system.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,411 @@
1
+ "use strict";
2
+ /**
3
+ * FAF Unified Question System
4
+ *
5
+ * Provides a unified interface for asking questions that works across:
6
+ * - Terminal (inquirer prompts)
7
+ * - Claude Code (AskUserQuestion structured output)
8
+ * - MCP (JSON response for AI handling)
9
+ *
10
+ * This enables "faf go" to guide users to Gold Code regardless of context.
11
+ *
12
+ * @since v3.5.0
13
+ */
14
+ var __importDefault = (this && this.__importDefault) || function (mod) {
15
+ return (mod && mod.__esModule) ? mod : { "default": mod };
16
+ };
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.QUESTION_REGISTRY = void 0;
19
+ exports.buildQuestion = buildQuestion;
20
+ exports.buildQuestionsForFields = buildQuestionsForFields;
21
+ exports.getAllQuestions = getAllQuestions;
22
+ exports.getGoldCodeQuestions = getGoldCodeQuestions;
23
+ exports.askQuestions = askQuestions;
24
+ exports.askQuestion = askQuestion;
25
+ exports.formatForClaudeCode = formatForClaudeCode;
26
+ exports.outputForClaudeCode = outputForClaudeCode;
27
+ const inquirer_1 = __importDefault(require("inquirer"));
28
+ const execution_context_1 = require("../engines/execution-context");
29
+ // ============================================================================
30
+ // Question Registry - Maps .faf fields to human-friendly questions
31
+ // ============================================================================
32
+ /**
33
+ * Registry of questions for .faf fields
34
+ * These are the questions asked during "faf go"
35
+ */
36
+ exports.QUESTION_REGISTRY = {
37
+ // Project section
38
+ 'project.name': {
39
+ question: 'What is the name of this project?',
40
+ header: 'Name',
41
+ type: 'text',
42
+ required: true,
43
+ helpText: 'The project name as it appears in package.json or the main identifier',
44
+ },
45
+ 'project.goal': {
46
+ question: 'What does this project do? (one sentence)',
47
+ header: 'Goal',
48
+ type: 'text',
49
+ required: true,
50
+ helpText: 'A clear, concise description of what the project accomplishes',
51
+ },
52
+ 'project.main_language': {
53
+ question: 'What is the primary programming language?',
54
+ header: 'Language',
55
+ type: 'select',
56
+ required: true,
57
+ options: [
58
+ { label: 'TypeScript', value: 'TypeScript', description: 'JavaScript with types' },
59
+ { label: 'JavaScript', value: 'JavaScript', description: 'Vanilla JS or Node.js' },
60
+ { label: 'Python', value: 'Python', description: 'Python 3.x' },
61
+ { label: 'Rust', value: 'Rust', description: 'Systems programming' },
62
+ { label: 'Go', value: 'Go', description: 'Golang' },
63
+ { label: 'Java', value: 'Java', description: 'JVM language' },
64
+ { label: 'C#', value: 'C#', description: '.NET ecosystem' },
65
+ { label: 'Other', value: 'Other', description: 'Specify manually' },
66
+ ],
67
+ },
68
+ // Human context section (the 6 Ws)
69
+ 'human_context.who': {
70
+ question: 'Who uses this project? (target audience)',
71
+ header: 'Who',
72
+ type: 'text',
73
+ required: false,
74
+ helpText: 'Developers, end users, specific teams, etc.',
75
+ },
76
+ 'human_context.what': {
77
+ question: 'What problem does this solve?',
78
+ header: 'What',
79
+ type: 'text',
80
+ required: false,
81
+ helpText: 'The core problem or need this project addresses',
82
+ },
83
+ 'human_context.why': {
84
+ question: 'Why does this project exist?',
85
+ header: 'Why',
86
+ type: 'text',
87
+ required: true,
88
+ helpText: 'The motivation, business case, or reason for building this',
89
+ },
90
+ 'human_context.where': {
91
+ question: 'Where does this run? (environment)',
92
+ header: 'Where',
93
+ type: 'text',
94
+ required: false,
95
+ helpText: 'Cloud, local, browser, mobile, edge, etc.',
96
+ },
97
+ 'human_context.when': {
98
+ question: 'When was this started or what phase is it in?',
99
+ header: 'When',
100
+ type: 'text',
101
+ required: false,
102
+ helpText: 'MVP, production, maintenance, etc.',
103
+ },
104
+ 'human_context.how': {
105
+ question: 'How should AI assist with this project?',
106
+ header: 'How',
107
+ type: 'text',
108
+ required: false,
109
+ helpText: 'Coding style, review preferences, areas to focus on',
110
+ },
111
+ // Stack section
112
+ 'stack.frontend': {
113
+ question: 'What frontend framework do you use?',
114
+ header: 'Frontend',
115
+ type: 'select',
116
+ required: false,
117
+ options: [
118
+ { label: 'React', value: 'React', description: 'React.js' },
119
+ { label: 'Vue', value: 'Vue', description: 'Vue.js' },
120
+ { label: 'Svelte', value: 'Svelte', description: 'Svelte/SvelteKit' },
121
+ { label: 'Angular', value: 'Angular', description: 'Angular framework' },
122
+ { label: 'Next.js', value: 'Next.js', description: 'React framework' },
123
+ { label: 'None', value: 'None', description: 'No frontend / backend only' },
124
+ { label: 'Other', value: 'Other', description: 'Specify manually' },
125
+ ],
126
+ },
127
+ 'stack.backend': {
128
+ question: 'What backend framework do you use?',
129
+ header: 'Backend',
130
+ type: 'select',
131
+ required: false,
132
+ options: [
133
+ { label: 'Express', value: 'Express', description: 'Node.js Express' },
134
+ { label: 'Fastify', value: 'Fastify', description: 'Node.js Fastify' },
135
+ { label: 'Django', value: 'Django', description: 'Python Django' },
136
+ { label: 'FastAPI', value: 'FastAPI', description: 'Python FastAPI' },
137
+ { label: 'Rails', value: 'Rails', description: 'Ruby on Rails' },
138
+ { label: 'Spring', value: 'Spring', description: 'Java Spring Boot' },
139
+ { label: 'None', value: 'None', description: 'No backend / frontend only' },
140
+ { label: 'Other', value: 'Other', description: 'Specify manually' },
141
+ ],
142
+ },
143
+ 'stack.database': {
144
+ question: 'What database do you use?',
145
+ header: 'Database',
146
+ type: 'select',
147
+ required: false,
148
+ options: [
149
+ { label: 'PostgreSQL', value: 'PostgreSQL', description: 'Relational database' },
150
+ { label: 'MySQL', value: 'MySQL', description: 'Relational database' },
151
+ { label: 'MongoDB', value: 'MongoDB', description: 'Document database' },
152
+ { label: 'SQLite', value: 'SQLite', description: 'File-based database' },
153
+ { label: 'Redis', value: 'Redis', description: 'In-memory store' },
154
+ { label: 'Supabase', value: 'Supabase', description: 'Postgres + auth + realtime' },
155
+ { label: 'None', value: 'None', description: 'No database' },
156
+ { label: 'Other', value: 'Other', description: 'Specify manually' },
157
+ ],
158
+ },
159
+ 'stack.hosting': {
160
+ question: 'Where is this hosted/deployed?',
161
+ header: 'Hosting',
162
+ type: 'select',
163
+ required: false,
164
+ options: [
165
+ { label: 'Vercel', value: 'Vercel', description: 'Frontend/serverless' },
166
+ { label: 'Netlify', value: 'Netlify', description: 'Frontend/serverless' },
167
+ { label: 'AWS', value: 'AWS', description: 'Amazon Web Services' },
168
+ { label: 'GCP', value: 'GCP', description: 'Google Cloud Platform' },
169
+ { label: 'Cloudflare', value: 'Cloudflare', description: 'Workers/Pages' },
170
+ { label: 'Railway', value: 'Railway', description: 'App hosting' },
171
+ { label: 'Fly.io', value: 'Fly.io', description: 'Edge deployment' },
172
+ { label: 'Self-hosted', value: 'Self-hosted', description: 'Own infrastructure' },
173
+ { label: 'Local only', value: 'Local', description: 'Not deployed' },
174
+ { label: 'Other', value: 'Other', description: 'Specify manually' },
175
+ ],
176
+ },
177
+ 'stack.build': {
178
+ question: 'What build tool do you use?',
179
+ header: 'Build',
180
+ type: 'select',
181
+ required: false,
182
+ options: [
183
+ { label: 'Vite', value: 'Vite', description: 'Fast dev server & bundler' },
184
+ { label: 'Webpack', value: 'Webpack', description: 'Module bundler' },
185
+ { label: 'esbuild', value: 'esbuild', description: 'Fast bundler' },
186
+ { label: 'Rollup', value: 'Rollup', description: 'ES module bundler' },
187
+ { label: 'Turbopack', value: 'Turbopack', description: 'Next.js bundler' },
188
+ { label: 'tsc', value: 'tsc', description: 'TypeScript compiler' },
189
+ { label: 'None', value: 'None', description: 'No build step' },
190
+ { label: 'Other', value: 'Other', description: 'Specify manually' },
191
+ ],
192
+ },
193
+ 'stack.cicd': {
194
+ question: 'What CI/CD system do you use?',
195
+ header: 'CI/CD',
196
+ type: 'select',
197
+ required: false,
198
+ options: [
199
+ { label: 'GitHub Actions', value: 'GitHub Actions', description: 'GitHub workflow automation' },
200
+ { label: 'GitLab CI', value: 'GitLab CI', description: 'GitLab pipelines' },
201
+ { label: 'CircleCI', value: 'CircleCI', description: 'Cloud CI/CD' },
202
+ { label: 'Jenkins', value: 'Jenkins', description: 'Self-hosted CI' },
203
+ { label: 'None', value: 'None', description: 'No CI/CD configured' },
204
+ { label: 'Other', value: 'Other', description: 'Specify manually' },
205
+ ],
206
+ },
207
+ };
208
+ // ============================================================================
209
+ // Question Builder
210
+ // ============================================================================
211
+ /**
212
+ * Build a FafQuestion from a field path
213
+ */
214
+ function buildQuestion(field) {
215
+ const template = exports.QUESTION_REGISTRY[field];
216
+ if (!template)
217
+ return null;
218
+ return {
219
+ id: field.replace(/\./g, '_'),
220
+ field,
221
+ ...template,
222
+ };
223
+ }
224
+ /**
225
+ * Build questions for a list of missing fields
226
+ */
227
+ function buildQuestionsForFields(fields) {
228
+ return fields
229
+ .map(buildQuestion)
230
+ .filter((q) => q !== null);
231
+ }
232
+ /**
233
+ * Get all available questions (for full interview)
234
+ */
235
+ function getAllQuestions() {
236
+ return Object.keys(exports.QUESTION_REGISTRY).map((field) => buildQuestion(field));
237
+ }
238
+ /**
239
+ * Get questions for reaching Gold Code (most important fields)
240
+ */
241
+ function getGoldCodeQuestions() {
242
+ const goldFields = [
243
+ 'project.goal',
244
+ 'human_context.why',
245
+ 'human_context.who',
246
+ 'human_context.what',
247
+ 'stack.database',
248
+ 'stack.hosting',
249
+ ];
250
+ return buildQuestionsForFields(goldFields);
251
+ }
252
+ // ============================================================================
253
+ // Question Execution
254
+ // ============================================================================
255
+ /**
256
+ * Convert FafQuestion to inquirer format
257
+ * Returns a plain object that inquirer.prompt() can use
258
+ */
259
+ function toInquirerQuestion(q) {
260
+ switch (q.type) {
261
+ case 'text':
262
+ return {
263
+ name: q.field,
264
+ message: q.question,
265
+ type: 'input',
266
+ default: q.defaultValue,
267
+ validate: q.validate,
268
+ };
269
+ case 'select':
270
+ return {
271
+ name: q.field,
272
+ message: q.question,
273
+ type: 'list',
274
+ choices: q.options?.map((opt) => ({
275
+ name: `${opt.label}${opt.description ? ` - ${opt.description}` : ''}`,
276
+ value: opt.value,
277
+ })) || [],
278
+ default: q.defaultValue,
279
+ };
280
+ case 'multiselect':
281
+ return {
282
+ name: q.field,
283
+ message: q.question,
284
+ type: 'checkbox',
285
+ choices: q.options?.map((opt) => ({
286
+ name: `${opt.label}${opt.description ? ` - ${opt.description}` : ''}`,
287
+ value: opt.value,
288
+ })) || [],
289
+ default: q.defaultValue?.split(','),
290
+ };
291
+ case 'confirm':
292
+ return {
293
+ name: q.field,
294
+ message: q.question,
295
+ type: 'confirm',
296
+ default: q.defaultValue === 'true',
297
+ };
298
+ default:
299
+ return {
300
+ name: q.field,
301
+ message: q.question,
302
+ type: 'input',
303
+ };
304
+ }
305
+ }
306
+ /**
307
+ * Convert FafQuestion to Claude Code AskUserQuestion format
308
+ */
309
+ function toClaudeCodeQuestion(q) {
310
+ return {
311
+ question: q.question,
312
+ header: q.header,
313
+ field: q.field,
314
+ type: q.type,
315
+ required: q.required,
316
+ options: q.options?.map((opt) => ({
317
+ label: opt.label,
318
+ description: opt.description || opt.value,
319
+ })),
320
+ };
321
+ }
322
+ /**
323
+ * Ask questions using the appropriate method for the current context
324
+ */
325
+ async function askQuestions(questions, context) {
326
+ const ctx = context || (0, execution_context_1.detectExecutionContext)();
327
+ // No questions? Skip.
328
+ if (questions.length === 0) {
329
+ return { mode: 'skipped', answers: {} };
330
+ }
331
+ // Interactive terminal: use inquirer
332
+ if ((0, execution_context_1.canPromptInteractively)(ctx)) {
333
+ try {
334
+ const inquirerQuestions = questions.map(toInquirerQuestion);
335
+ // Use type assertion for inquirer v12 compatibility
336
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
337
+ const answers = await inquirer_1.default.prompt(inquirerQuestions);
338
+ return { mode: 'interactive', answers };
339
+ }
340
+ catch (error) {
341
+ // User cancelled (Ctrl+C)
342
+ return { mode: 'interactive', cancelled: true };
343
+ }
344
+ }
345
+ // Claude Code / MCP: return structured questions
346
+ if ((0, execution_context_1.shouldReturnStructuredQuestions)(ctx)) {
347
+ return {
348
+ mode: 'structured',
349
+ questions,
350
+ };
351
+ }
352
+ // Non-interactive, non-AI context: output JSON and exit
353
+ const output = {
354
+ needsInput: true,
355
+ context: 'faf go',
356
+ targetScore: 100,
357
+ questions: questions.map((q) => ({
358
+ question: q.question,
359
+ header: q.header,
360
+ field: q.field,
361
+ type: q.type,
362
+ options: q.options?.map((opt) => ({
363
+ label: opt.label,
364
+ description: opt.description || opt.value,
365
+ })),
366
+ required: q.required,
367
+ })),
368
+ };
369
+ console.log(JSON.stringify(output, null, 2));
370
+ return { mode: 'structured', questions };
371
+ }
372
+ /**
373
+ * Ask a single question
374
+ */
375
+ async function askQuestion(question, context) {
376
+ return askQuestions([question], context);
377
+ }
378
+ // ============================================================================
379
+ // Output Formatting for Claude Code
380
+ // ============================================================================
381
+ /**
382
+ * Format questions as structured output for Claude Code
383
+ * This is what Claude Code sees and uses with AskUserQuestion
384
+ */
385
+ function formatForClaudeCode(questions, currentScore) {
386
+ return {
387
+ needsInput: true,
388
+ context: 'faf go - guided path to Gold Code',
389
+ currentScore,
390
+ targetScore: 100,
391
+ questions: questions.map((q) => ({
392
+ question: q.question,
393
+ header: q.header,
394
+ field: q.field,
395
+ type: q.type,
396
+ options: q.options?.map((opt) => ({
397
+ label: opt.label,
398
+ description: opt.description || opt.value,
399
+ })),
400
+ required: q.required,
401
+ })),
402
+ };
403
+ }
404
+ /**
405
+ * Print structured output for Claude Code to consume
406
+ */
407
+ function outputForClaudeCode(questions, currentScore) {
408
+ const output = formatForClaudeCode(questions, currentScore);
409
+ console.log(JSON.stringify(output, null, 2));
410
+ }
411
+ //# sourceMappingURL=question-system.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"question-system.js","sourceRoot":"","sources":["../../src/systems/question-system.ts"],"names":[],"mappings":"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"}
@@ -270,8 +270,9 @@ async function detectConductor(basePath) {
270
270
  const conductorPath = path_1.default.join(basePath, 'conductor');
271
271
  try {
272
272
  const stat = await fs_1.promises.stat(conductorPath);
273
- if (!stat.isDirectory())
273
+ if (!stat.isDirectory()) {
274
274
  return false;
275
+ }
275
276
  }
276
277
  catch {
277
278
  return false;
@@ -1 +1 @@
1
- {"version":3,"file":"conductor-parser.js","sourceRoot":"","sources":["../../src/utils/conductor-parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"conductor-parser.js","sourceRoot":"","sources":["../../src/utils/conductor-parser.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "faf-cli",
3
- "version": "3.4.7",
4
- "description": "Anthropic-Approved codebase that powers claude-faf-mcpPersistent project context, on-demandFormat-driven CLI Open Source Universal Standard MIT License",
3
+ "version": "4.0.0",
4
+ "description": "The Persistent AI Context StandardFoundation Layer for AIIANA-RegisteredAnthropic-Approved project.faf = AI's foundation",
5
5
  "icon": "https://faf.one/orange-smiley.svg",
6
6
  "logo": "https://faf.one/orange-smiley.svg",
7
7
  "banner": "https://raw.githubusercontent.com/Wolfe-Jam/faf/main/cli/faf-banner.png",
package/project.faf CHANGED
@@ -78,7 +78,7 @@ preferences:
78
78
  documentation: as_needed
79
79
  state:
80
80
  phase: development
81
- version: 3.4.6
81
+ version: 3.4.8
82
82
  focus: production_deployment
83
83
  status: green_flag
84
84
  next_milestone: npm_publication