Skip to content

feat(incident-detective): define P2-001 contracts - #5

Merged
margrop merged 1 commit into
mainfrom
agent/p2-001-incident-contracts
Jul 25, 2026
Merged

margrop merged 1 commit into
mainfrom
agent/p2-001-incident-contracts

Conversation

@margrop

@margrop margrop commented Jul 25, 2026

Copy link
Copy Markdown
Owner

Summary

  • add strict v1 schemas for public synthetic Incident Detective scenarios and per-session attempts
  • model bounded Prometheus metrics, Loki logs, MySQL tables, runbooks, topology, evidence budgets, unlock prerequisites, and progressively revealed timelines
  • add deterministic TypeScript validation for unique/cross-object references, evidence DAGs, budget reachability, time windows/order, table width, topology, and attempt reconciliation
  • keep root-cause answers, scoring rubrics, and AI explanations out of the public contracts
  • add minimal synthetic fixtures, 15 focused boundary tests, contract documentation, and P2-001 roadmap updates

Privacy and safety

  • accepts repository-owned synthetic data only; no real monitoring or database integration
  • rejects Secret, email, hardware identifiers, and network identifiers outside example.com / RFC 5737 ranges without echoing values
  • performs no network, storage, logging, restart, write, or delete action
  • safety actions in attempts are inert game choices for later deterministic scoring

Validation

  • ASTRO_TELEMETRY_DISABLED=1 npm run validate
  • 12 test files / 146 tests passed
  • Astro check: 0 errors, 0 warnings, 0 hints
  • site build and all 29 static page contracts passed

Scope

This PR defines contracts only. The fixture is not a full playable incident; P2-002 will build the first complete MySQL + Prometheus + Loki synthetic case.

@margrop
margrop marked this pull request as ready for review July 25, 2026 07:10
@margrop
margrop merged commit b57ff0e into main Jul 25, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant