bigbang_validate
Validate a Big Bang values.yaml against DoD IL compliance requirements. Get compliance score, violations, and hardened values.
Instructions
Validate a Platform One Big Bang values.yaml against DoD IL compliance requirements. Returns compliance score, specific violations, and hardened values.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| valuesYaml | Yes | Paste your values.yaml content | |
| targetLevel | No | IL compliance target (default: il4) | |
| bigbangVersion | No | Big Bang version e.g. "2.31.0" |
Implementation Reference
- The handler function `handleBigbangValidate` that executes the Big Bang validation tool logic. It calls `runTool` with the Zod schema, validates the prompt via the Anthropic API using the Platform One system prompt, and returns the AI-generated compliance response.
export async function handleBigbangValidate(args: unknown): Promise<string> { return runTool('bigbang_validate', args, Schema, async ({ valuesYaml, targetLevel, bigbangVersion }) => { const response = await anthropic.messages.create({ model: MODEL, max_tokens: getTokenBudget('bigbang_validate'), system: PLATFORM_ONE_SYSTEM, messages: [ { role: 'user', content: `Validate this Big Bang values.yaml for ${targetLevel} compliance. ${bigbangVersion ? `Big Bang Version: ${bigbangVersion}` : ''} \`\`\`yaml ${valuesYaml} \`\`\` Provide: 1. **IL Compliance Score** (0-100) with scoring breakdown 2. **Critical Violations** (blocking deployment approval at ${targetLevel}) - Non-Iron Bank images (must use registry1.dso.mil) - Disabled required security addons - mTLS not enforced - Network policies missing - Insecure default credentials not rotated 3. **Image Policy Violations** — list each non-IB image with its Iron Bank replacement path 4. **Missing Required Addons** for ${targetLevel} with justification 5. **Network Policy Gaps** (Istio, NetworkPolicy, Calico) 6. **mTLS Configuration Issues** (Istio PeerAuthentication) 7. **Hardened values.yaml** with ALL violations corrected 8. **Line references** from the original values pointing to specific violations Reference specific Iron Bank image paths (registry1.dso.mil/ironbank/...) for all replacements.`, }, ], }); return response.content[0].type === 'text' ? response.content[0].text : ''; }); } - Tool definition object `bigbangValidateTool` including name 'bigbang_validate', description, and inputSchema (object with valuesYaml, targetLevel enum il2/il4/il5, bigbangVersion).
export const bigbangValidateTool = { name: 'bigbang_validate', description: 'Validate a Platform One Big Bang values.yaml against DoD IL compliance requirements. Returns compliance score, specific violations, and hardened values.', inputSchema: { type: 'object' as const, properties: { valuesYaml: { type: 'string', description: 'Paste your values.yaml content' }, targetLevel: { type: 'string', enum: ['il2', 'il4', 'il5'], description: 'IL compliance target (default: il4)', }, bigbangVersion: { type: 'string', description: 'Big Bang version e.g. "2.31.0"' }, }, required: ['valuesYaml'], }, }; - Zod validation schema that enforces valuesYaml as string (1-20000 chars), targetLevel as enum defaulting to 'il4', and optional bigbangVersion up to 500 chars.
const Schema = z.object({ valuesYaml: z.string().min(1).max(20000), targetLevel: z.enum(['il2', 'il4', 'il5']).default('il4'), bigbangVersion: z.string().max(500).optional(), }); - src/tools/index.ts:15-15 (registration)Import of `bigbangValidateTool` and `handleBigbangValidate` from the implementation file.
import { bigbangValidateTool, handleBigbangValidate } from './platform-one/bigbang-validate.js'; - src/tools/index.ts:45-45 (registration)Registration of `bigbangValidateTool` in the `allTools` array for MCP tool listing.
bigbangValidateTool, - src/tools/index.ts:74-74 (registration)Routing: case 'bigbang_validate' in handleToolCall switch statement dispatches to `handleBigbangValidate(args)`.
case 'bigbang_validate': return handleBigbangValidate(args); - src/utils/tool-runner.ts:24-24 (helper)Token budget configuration: bigbang_validate gets 3072 max_tokens.
bigbang_validate: 3072, - src/utils/tool-runner.ts:42-42 (helper)Timeout configuration: bigbang_validate gets 30000ms timeout.
bigbang_validate: 30000, - Response quality validation: bigbang_validate minimum length of 300 characters.
bigbang_validate: 300,