@healflow/ingestion
v0.1.3
Published
HealFlow report and CI ingestion parsers
Readme
@healflow/ingestion
Parsers for Playwright JSON reports, CI logs, and trace artifacts.
Overview
Normalizes failure data from multiple sources into HealFlow's FailureEvent format. Used by the CLI (healflow ingest) and the NestJS ingestion service.
Published to npm as a transitive dependency of @healflow/cli.
Installation
npm install @healflow/ingestionUsage
Playwright JSON report
import { parsePlaywrightReport } from '@healflow/ingestion';
import { FailureSource } from '@healflow/shared';
const failures = parsePlaywrightReport('test-results/results.json', {
organizationId: 'my-org',
repositoryId: 'my-repo',
source: FailureSource.REPORT,
});CI logs
import { parseCiLog, detectCiProvider } from '@healflow/ingestion';
const provider = detectCiProvider(logContent);
const failures = parseCiLog(logContent, {
organizationId: 'my-org',
repositoryId: 'my-repo',
provider,
});Supported CI providers: GitHub Actions, Jenkins (GitLab CI and CircleCI detection included).
Trace artifacts
import { parseTraceLog, parseTraceZip } from '@healflow/ingestion';
const fromLog = parseTraceLog('trace.log', context);
const fromZip = await parseTraceZip('trace.zip', context);CLI integration
Upload failures to a HealFlow backend:
npx healflow ingest test-results/results.jsonRequires backend.url, organizationId, and repositoryId in healflow.yml.
API
| Export | Description |
| ----------------------- | ------------------------------------- |
| parsePlaywrightReport | Parse Playwright JSON reporter output |
| parseCiLog | Extract failures from CI log output |
| detectCiProvider | Detect GitHub Actions, Jenkins, etc. |
| parseTraceLog | Parse plain trace log files |
| parseTraceZip | Parse Playwright trace.zip archives |
Development
pnpm --filter @healflow/ingestion build
pnpm --filter @healflow/ingestion typecheckRelated packages
- @healflow/cli —
healflow ingestcommand - @healflow/classification — classifies parsed failures
License
MIT
