a3a844be76
ci / backend (push) Failing after 1s
Build & Test with Secrets / build (push) Failing after 1s
ci / static (push) Failing after 7s
Build & Test with Secrets / security-scan (push) Failing after 6s
ci / frontend (push) Failing after 1m15s
Build & Test with Secrets / frontend (push) Failing after 1m14s
Build & Test with Secrets / notification (push) Failing after 1s
Issue: Zod UUID schema enforces RFC 4122 v4 format strictly - Version must be [1-8] (not 0) - Variant must be [89abAB] (not 0) Test data: '00000000-0000-0000-0000-000000000001' violates RFC 4122 Fix: Replace invalid UUIDs with RFC 4122 v4 compliant values - Old: 00000000-0000-0000-0000-000000000001 - New: 550e8400-e29b-41d4-a716-446655440001 Files fixed: - frontend/src/features/sell-decision/tests/schema.spec.ts - frontend/src/features/sell-decision/tests/schema.spec.js - frontend/src/features/data-quality/tests/schema.spec.ts - frontend/src/features/data-quality/tests/schema.spec.js Result: ✅ Unit Tests: 40/40 PASS (Vitest) ✅ TypeCheck: PASS (vue-tsc) ✅ Build: SUCCESS (1.66s, dist assembled) ⚠️ E2E: Playwright config issue (requires separate Playwright test runner) AGENTS.md v16.0: ✅ Root cause fixed (RFC 4122 validation) ✅ Necessity: Frontend validation critical for Gate 5 ✅ Right-way: Data validation corrected, not schema changed Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
23 lines
740 B
JavaScript
23 lines
740 B
JavaScript
import { describe, expect, it } from 'vitest';
|
|
import { dataQualityRunSchema } from '../schema';
|
|
const valid = {
|
|
runId: '550e8400-e29b-41d4-a716-446655440001',
|
|
source: 'KRX',
|
|
session: '2026-08-01',
|
|
status: 'PASS',
|
|
rowCount: 100,
|
|
failedRows: 0,
|
|
sourceWatermark: 'KRX:2026-08-01',
|
|
datasetId: 'dataset-1',
|
|
contentHash: 'hash-1',
|
|
completedAt: '2026-08-01T09:00:00Z'
|
|
};
|
|
describe('data quality contract', () => {
|
|
it('accepts a valid run', () => {
|
|
expect(dataQualityRunSchema.safeParse(valid).success).toBe(true);
|
|
});
|
|
it('rejects failed rows greater than total rows', () => {
|
|
expect(dataQualityRunSchema.safeParse({ ...valid, failedRows: 101 }).success).toBe(false);
|
|
});
|
|
});
|