tdd-guard
Version:
Automated Test-Driven Development enforcement for Claude Code
48 lines (47 loc) • 1.83 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.LintDataSchema = exports.LintResultSchema = exports.LintIssueSchema = exports.GolangciLintResultSchema = exports.GolangciLintIssueSchema = exports.GolangciLintPositionSchema = exports.ESLintResultSchema = exports.ESLintMessageSchema = void 0;
const zod_1 = require("zod");
exports.ESLintMessageSchema = zod_1.z.object({
line: zod_1.z.number().optional(),
column: zod_1.z.number().optional(),
severity: zod_1.z.number(),
message: zod_1.z.string(),
ruleId: zod_1.z.string().optional(),
});
exports.ESLintResultSchema = zod_1.z.object({
filePath: zod_1.z.string(),
messages: zod_1.z.array(exports.ESLintMessageSchema).optional(),
});
exports.GolangciLintPositionSchema = zod_1.z.object({
Filename: zod_1.z.string(),
Line: zod_1.z.number(),
Column: zod_1.z.number(),
});
exports.GolangciLintIssueSchema = zod_1.z.object({
FromLinter: zod_1.z.string(),
Text: zod_1.z.string(),
Severity: zod_1.z.string(),
Pos: exports.GolangciLintPositionSchema,
});
exports.GolangciLintResultSchema = zod_1.z.object({
Issues: zod_1.z.array(exports.GolangciLintIssueSchema).optional(),
});
exports.LintIssueSchema = zod_1.z.object({
file: zod_1.z.string(),
line: zod_1.z.number(),
column: zod_1.z.number(),
severity: zod_1.z.enum(['error', 'warning']),
message: zod_1.z.string(),
rule: zod_1.z.string().optional(),
});
exports.LintResultSchema = zod_1.z.object({
timestamp: zod_1.z.string(),
files: zod_1.z.array(zod_1.z.string()),
issues: zod_1.z.array(exports.LintIssueSchema),
errorCount: zod_1.z.number(),
warningCount: zod_1.z.number(),
});
exports.LintDataSchema = exports.LintResultSchema.extend({
hasNotifiedAboutLintIssues: zod_1.z.boolean(),
});