{"contract":"glasscastles.fabric.registry.v2","compatibility":["glasscastles.fabric.registry.v1"],"suite":{"name":"ShatteredCastle(s)","contract":"shatteredcastles.suite.v1","company":"GlassCastle(S)","attack_model":{"name":"Unified Kill Chain","version":"Pols-2017-final","endpoint":"/api/v1/ukc","contract":"shatteredcastles.ukc.model.v1"},"analysis_models":{"sequence":{"name":"Unified Kill Chain","version":"Pols-2017-final","endpoint":"/api/v1/ukc","contract":"shatteredcastles.ukc.model.v1"},"relationship":{"name":"Diamond Model of Intrusion Analysis","version":"Caltagirone-Pendergast-Betz-2013","endpoint":"/api/v1/diamond","contract":"shatteredcastles.diamond.model.v1"}}},"workflow":["scope","discover","assess","validate","impact","remediate"],"stages":[{"stage":"scope","product_id":"scopesentinel","name":"ScopeSentinel","base_url":"https://glasscastles-scopesentinel.vercel.app","capabilities":"/api/v1/capabilities","agent":"/api/v1/agent","openapi":"/openapi.json"},{"stage":"discover","product_id":"kork","name":"Kork","base_url":"https://glasscastles-kork.vercel.app","capabilities":"/api/v1/capabilities","agent":"/api/v1/agent","openapi":"/openapi.json","network":{"enrich":"/api/enrich"}},{"stage":"assess","product_id":"shatterassay","name":"ShatterAssay","base_url":"https://glasscastles-shatterassay.vercel.app","capabilities":"/api/v1/capabilities","agent":"/api/v1/agent","openapi":"/openapi.json","network":{"assess":"/api/scan"}},{"stage":"validate","product_id":"glasswitness","name":"GlassWitness","base_url":"https://glasscastles-glasswitness.vercel.app","capabilities":"/api/v1/capabilities","agent":"/api/v1/agent","openapi":"/openapi.json"},{"stage":"impact","product_id":"blastradial","name":"BlastRadial","base_url":"https://glasscastles-blastradial.vercel.app","capabilities":"/api/v1/capabilities","agent":"/api/v1/agent","openapi":"/openapi.json"},{"stage":"remediate","product_id":"investigation-console","name":"Investigation Console","base_url":"https://glasscastles-investigation-console.vercel.app","capabilities":"/api/v1/capabilities","agent":"/api/v1/agent","openapi":"/openapi.json","network":{"capture_source":"/api/research"}}],"branches":[{"stage":"operations","product_id":"sec-tp","name":"Secret Tunnel / Sec-TP","base_url":"https://glasscastles-sectp.vercel.app","role":"owner-controlled connectivity and audit"},{"stage":"intelligence","product_id":"torus-osint","name":"Torus OSINT / Market SIEM","base_url":"https://glasscastles-torus-osint.vercel.app","role":"source intelligence, correlation, and analyst handoff"},{"stage":"mining","product_id":"mining-co","name":"GlassCastle Mining Co.","base_url":"https://glasscastles-mining.vercel.app","role":"resource measurement and bounded allocation"}],"products":[{"id":"glasscastle-s","name":"GlassCastle(S)","archetypes":["publisher"],"surfaces":[],"public":true},{"id":"scopesentinel","name":"ScopeSentinel","archetypes":["boundary"],"surfaces":["investigation-workspace","evidence-review"],"public":true},{"id":"kork","name":"Kork","archetypes":["investigator"],"surfaces":["investigation-workspace"],"public":true},{"id":"shatterassay","name":"ShatterAssay","archetypes":["assessor"],"surfaces":["investigation-workspace","evidence-review"],"public":true},{"id":"glasswitness","name":"GlassWitness","archetypes":["validator"],"surfaces":["evidence-review"],"public":true},{"id":"blastradial","name":"BlastRadial","archetypes":["modeler"],"surfaces":["investigation-workspace"],"public":true},{"id":"investigation-console","name":"Investigation Console","archetypes":["investigator"],"surfaces":["investigation-workspace","evidence-review"],"public":true},{"id":"sec-tp","name":"Sec-TP / Secret Tunnel","archetypes":["operator"],"surfaces":["operator-console","node-operations","command-center"],"public":true},{"id":"launch-readiness","name":"Launch Readiness","archetypes":["assessor","validator"],"surfaces":["evidence-review"],"public":true},{"id":"torus-osint","name":"Torus OSINT / Market SIEM","archetypes":["investigator","modeler"],"surfaces":["investigation-workspace","threat-hunt-workspace"],"public":true},{"id":"mining-co","name":"GlassCastle Mining Co.","archetypes":["resource"],"surfaces":["operator-console","command-center"],"public":true},{"id":"wallet-investigation-kit","name":"Wallet Investigation Starter Kit","archetypes":["educator","investigator"],"surfaces":["learning","evidence-review"],"public":true},{"id":"web3-triage-pack","name":"Web3 Security Incident Triage Pack","archetypes":["educator","investigator"],"surfaces":["learning","evidence-review"],"public":true}],"handoffs":[{"from":"scopesentinel","to":"shatterassay","artifact":"scope-contract","condition":"Assessment requires bounded authorization.","authority_transferred":false},{"from":"scopesentinel","to":"kork","artifact":"scope-contract","condition":"Investigation needs explicit boundary context.","authority_transferred":false},{"from":"kork","to":"shatterassay","artifact":"evidence-bundle","condition":"A bounded assessment needs collected evidence.","authority_transferred":false},{"from":"kork","to":"glasswitness","artifact":"evidence-bundle","condition":"A claim requires controlled validation.","authority_transferred":false},{"from":"kork","to":"blastradial","artifact":"investigation-topology","condition":"Impact analysis needs relationships.","authority_transferred":false},{"from":"kork","to":"investigation-console","artifact":"investigation-topology","condition":"Case coordination needs the mapped evidence.","authority_transferred":false},{"from":"shatterassay","to":"glasswitness","artifact":"assessment-findings","condition":"A finding needs controlled validation.","authority_transferred":false},{"from":"shatterassay","to":"blastradial","artifact":"assessment-findings","condition":"Validated or candidate impact paths need modeling.","authority_transferred":false},{"from":"shatterassay","to":"investigation-console","artifact":"assessment-findings","condition":"Case review requires consolidated findings.","authority_transferred":false},{"from":"glasswitness","to":"blastradial","artifact":"validation-receipt","condition":"Impact modeling should distinguish validated from candidate findings.","authority_transferred":false},{"from":"glasswitness","to":"investigation-console","artifact":"validation-receipt","condition":"Case disposition needs validation state.","authority_transferred":false},{"from":"blastradial","to":"investigation-console","artifact":"impact-model","condition":"Case coordination needs impact context.","authority_transferred":false},{"from":"sec-tp","to":"investigation-console","artifact":"audit-record","condition":"An operator event requires case/evidence review.","authority_transferred":false},{"from":"launch-readiness","to":"glasswitness","artifact":"readiness-findings","condition":"A readiness claim needs controlled validation.","authority_transferred":false},{"from":"torus-osint","to":"investigation-console","artifact":"intelligence-handoff","condition":"An analyst deliberately transfers intelligence context into a case.","authority_transferred":false},{"from":"wallet-investigation-kit","to":"investigation-console","artifact":"findings-draft","condition":"A real authorized case needs deeper case coordination.","authority_transferred":false},{"from":"web3-triage-pack","to":"investigation-console","artifact":"analyst-handoff","condition":"Incident requires ongoing investigation.","authority_transferred":false}],"artifact_protocol":{"registry":"/artifact-protocols.json","api":"/api/v1/artifact","envelope":"glasscastle.fabric.artifact-envelope.v1","version":"1.0.0","artifact_types":["scope-contract","evidence-bundle","investigation-topology","assessment-findings","validation-receipt","impact-model","audit-record","readiness-findings","intelligence-handoff","findings-draft","analyst-handoff","case-record"],"terminal_artifacts":["case-record"]},"auth":{"public_pure_actions":true,"optional_bearer_for_agent_network_actions":true,"bounded_network_routes":true,"artifact_authority_transferable":false},"semantics":{"transport_is_acceptance":false,"acceptance_is_execution_authority":false,"handoff_transfers_authority":false,"provenance_must_be_preserved":true}}