// Governance Notifier — SPIRE Notifier plugin. // // Runs in SPIRE Server. Notifies the Guildhouse GovernanceService of credential // lifecycle events (issue, rotate, revoke) and submits MutationEnvelopes to the // NotaryService for merkle anchoring. package main import ( "fmt" "os" ) func main() { // TODO: wire up go-plugin serve with SPIRE Notifier interface // The plugin will: // 1. Receive credential lifecycle notifications from SPIRE Server // 2. Construct a CreateIntentRequest for the credential event // 3. Call GovernanceService.CreateIntent // 4. If ceremony required, monitor CeremonyService for resolution // 5. Construct MutationEnvelope (RFC 8785 JCS → domain-separated SHA-256) // 6. Submit merkle leaf to NotaryService.CreateAnchor fmt.Fprintln(os.Stderr, "governance-notifier: SPIRE Notifier plugin (not yet implemented)") os.Exit(1) }