UNPKG

@puls-atlas/cli

Version:

The Puls Atlas CLI tool for managing Atlas projects

36 lines 1.49 kB
import { logger } from '../../utils/logger.js'; import { createAtlasAiArtifacts, createVerificationFindings, logAiVerifyOutcome } from './artifactsRuntime.js'; export const runAiVerify = async (options = {}, dependencies = {}, cwd = process.cwd()) => { const loggerImpl = dependencies.logger ?? logger; const { consoleImpl = console } = dependencies; let spinner; try { spinner = loggerImpl.spinner('Verifying Atlas AI context...'); const artifacts = createAtlasAiArtifacts(options, dependencies, cwd, 'atlas ai sync'); const findings = createVerificationFindings(artifacts, options, dependencies); const result = { artifacts, findings: findings.records, issues: findings.issues, warnings: findings.warnings, status: findings.issues.length > 0 ? 'drift' : findings.warnings.length > 0 ? 'warning' : 'valid' }; spinner.succeed(result.status === 'valid' ? 'Atlas AI context is valid.' : result.status === 'warning' ? 'Atlas AI context is valid with warnings.' : 'Atlas AI context drift was detected.'); logAiVerifyOutcome(loggerImpl, result); if (options.json) { consoleImpl.log(JSON.stringify({ findings: result.findings, issues: result.issues, warnings: result.warnings, status: result.status }, null, 4)); } return result; } catch (error) { spinner?.fail('Failed to verify Atlas AI context.'); loggerImpl.error(error.message); return null; } };