Architecture
Capabilities
Implemented
Administer application-wide architecture settings Implemented Governance
DefinitionAdministrators can maintain shared settings such as architecture version, home/export markdown, service tech-stack lists, package lists, stakeholder directory, and GitHub export templates.
Purpose / ValueProvides centralized control over repository-wide conventions and presentation settings.
ScopeAdmin-only settings page and related persistence services.
DependenciesSettings page, settings service, stakeholder persistence, role authorization.
MeasuresAdmin settings page persists global configuration and stakeholder list data.
Apply approved proposal changes into current state Implemented Governance
DefinitionKeystone provides a proposal application workflow that steps through diffs, detects conflicts, accepts resolved state, and writes approved changes into current-state entities.
Purpose / ValueTurns architecture proposals into governed changes to the approved repository.
ScopeIncludes sequential diff review, conflict detection, resolved state submission, and proposal status progression.
DependenciesProposal apply page, diff service, entity service, proposal repository.
MeasuresProposal apply page persists applied changes and updates diff/proposal status.
Authenticate users via OpenID Connect providers Implemented Security
DefinitionKeystone supports OpenID Connect authentication with configurable providers, including Keycloak by default and Azure AD configuration support.
Purpose / ValueIntegrates architecture access with enterprise identity providers.
ScopeIncludes sign-in, sign-out, role claim normalization, default role behavior, and profile email initialization.
DependenciesASP.NET authentication middleware, provider configuration, claims mapping logic, profile service.
MeasuresConfigured OIDC provider support exists in application startup and account flows.
Author architecture content in markdown with diagrams and references Implemented Functional
DefinitionKeystone supports markdown-based authoring with rendered Mermaid diagrams, custom reference resolution, and rich content sections on architecture entities.
Purpose / ValueLets teams capture architecture context in a readable form while retaining structured references.
ScopeApplies across entities, proposals, exported HTML, and related detail views.
DependenciesMarkdown service, diagram service, reference resolution logic, UI pages, export templates.
MeasuresMarkdown content renders in entity details and export output; Mermaid content is supported in the app and exported pages.
Browse architecture through a navigator view Implemented Functional
DefinitionKeystone provides a Navigator screen for browsing architecture entities by package, domain, entity type, and specific entity selections.
Purpose / ValueImproves discoverability of architecture structure and relationships.
ScopeIncludes domain filter labels, derived service relationship exploration, and JSON detail endpoints backing navigator interactions.
DependenciesNavigator page model, entity service, relationship data, package/domain filters.
MeasuresNavigator page and filter endpoints are implemented and covered by regression tests.
Capture diff-based proposed changes Implemented Governance
DefinitionKeystone records proposal changes as entity diffs containing base and proposed snapshots, captured metadata, and diff status lifecycle values.
Purpose / ValueProvides a maintainable change model that avoids cloning the entire architecture repository for each proposal.
ScopeIncludes pending, applied, discarded, and conflict diff states.
DependenciesDiff service, proposal entity model, entity service, proposal apply workflow.
MeasuresProposal diffs are persisted with base/proposed snapshots and evaluated during apply workflows.
Capture domain capabilities within Domain entities Implemented Functional
DefinitionDomain entities can store ordered capability records with name, status, type, definition, purpose/value, scope, dependencies, and measures.
Purpose / ValueAllows domains to represent business and technical capabilities directly inside the architecture knowledge graph.
ScopeIncludes create, edit, reorder, render, export, proposal overlay, and MCP management of domain capabilities.
DependenciesDomain entity model, capability editor UI, entity detail rendering, export service, MCP domain capability tools.
MeasuresCapabilities persist on domains and can be queried separately through get_domain_capabilities.
Create and manage ADR-style proposals with decision structure Implemented Governance
DefinitionKeystone supports Proposal entities that function as architecture decision records with context, drivers, options, outcomes, pros/cons, stakeholders, open questions, and use cases.
Purpose / ValueProvides a structured way to capture, socialize, and govern architecture change decisions.
ScopeIncludes create/edit/details/index/apply workflows and stakeholder participation fields.
DependenciesProposal entity model, proposal pages, stakeholder model, repository support, MCP proposal tools.
MeasuresProposal-specific fields and workflows are implemented and persisted.
Enforce role-based access control Implemented Security
DefinitionKeystone enforces role-aware behavior across User, Contributor, and Admin permissions for viewing, editing, governance, and administration workflows.
Purpose / ValueLimits sensitive actions to appropriate roles while preserving broad read access.
ScopeIncludes page authorization, action visibility, edit/create/delete rights, comments, settings, and deleted-items administration.
DependenciesAuthentication configuration, role mapping, Razor Page authorization attributes, UI checks, controller authorization.
MeasuresRole expectations are encoded in the app and validated by regression tests.
Export architecture artifacts as PDF, AsyncAPI, and OpenAPI bundles Implemented Functional
DefinitionKeystone supports additional export formats including PDF output, AsyncAPI export for selected async items, and OpenAPI ZIP export for selected services.
Purpose / ValueAllows architecture content to be reused in downstream documentation and interface distribution workflows.
ScopeApplies to supported service and message-oriented content.
DependenciesExport service, QuestPDF, service/event metadata, selection workflows.
MeasuresExport service exposes dedicated methods for PDF, AsyncAPI, and OpenAPI ZIP outputs.
Export architecture documentation as static HTML and ZIP Implemented Functional
DefinitionKeystone can generate a static HTML documentation site and ZIP package for the current architecture repository, including navigation and cross-links.
Purpose / ValueMakes architecture documentation portable and easy to publish or share outside the live application.
ScopeIncludes full-site HTML generation, preview routes, ZIP export, and export filtering options.
DependenciesExport service, markdown service, diagram service, export templates, entity repository.
MeasuresHTML preview and ZIP export workflows are implemented and documented.
Expose Keystone as an MCP server for machine integration Implemented Technical
DefinitionKeystone exposes a streamable HTTP MCP endpoint with typed tools for searching, reading, creating, updating, and deleting supported entities.
Purpose / ValueEnables agentic and automation scenarios against the live architecture repository.
ScopeIncludes endpoint discovery, tools/list, tools/call, API-key authentication, and entity-specific schemas.
DependenciesMCP controller, entity service, user profile API keys, JSON-RPC handling, tool schema builders.
MeasuresProduction endpoint responds with tool catalog and supports typed domain/entity operations.
Expose specialized MCP operations for domain capability maintenance Implemented Technical
DefinitionKeystone MCP supports targeted operations to read domain capabilities and create or update individual capabilities without replacing unrelated domain properties.
Purpose / ValueMakes requirements and capability management safer and easier for automation clients.
ScopeIncludes get_domain_capabilities, create_domain_capability, and update_domain_capability.
DependenciesMCP controller domain tool definitions, domain capability model, entity persistence.
MeasuresSpecialized domain capability tools are present in the MCP tool catalog.
Maintain audit history for entity lifecycle changes Implemented Governance
DefinitionKeystone records audit information for entity lifecycle actions such as create, update, delete, restore, and related governance events.
Purpose / ValueProvides traceability and operational accountability for architecture maintenance.
ScopeApplies to persisted entities and is visible in detail experiences and via audit-log entity support.
DependenciesEntity service, audit log model/repository, detail pages, MCP CRUD support for audit-log entities.
MeasuresAudit log entity support exists and audit information is loaded for entity details.
Manage comments and threaded discussion on architecture records Implemented Functional
DefinitionKeystone supports comments on entities and proposals, including replies, resolution, and deletion behaviors based on user role.
Purpose / ValueEnables collaborative review and discussion directly in the architecture repository.
ScopeIncludes comment retrieval, add, reply, resolve, delete, and dedicated comments page experiences.
DependenciesComment model, comment service, entity/proposal detail pages, role-based authorization.
MeasuresComment service implements add, reply, resolve, and delete operations.
Model architecture with typed domain entities Implemented Functional
DefinitionKeystone supports architecture modeling using first-class typed entities including Domains, Events, Commands, Queries, Services, Designs, Design Categories, ADR-style Proposals, Stakeholders, and Audit Logs.
Purpose / ValueProvides a structured, consistent repository for architecture knowledge rather than relying on unstructured documents.
ScopeCovers entity type definitions, persistence, CRUD workflows, and cross-type navigation.
DependenciesBase entity model, MongoDB persistence, entity repositories, entity service, Razor Pages UI, MCP CRUD surface.
MeasuresEntity types are exposed in the application model, UI, services, and MCP tool catalog.
Model service interaction patterns Implemented Functional
DefinitionKeystone models relationships among Services, Events, Commands, and Queries, including producers, consumers, handlers, providers, and dependencies.
Purpose / ValueEnables users to document runtime integration patterns and system boundaries in a navigable way.
ScopeIncludes bidirectional references, service dependencies, parent domain assignment, and detail-page relationship views.
DependenciesEntity models, entity service relationship sync, detail pages, navigator, export rendering.
MeasuresRelationship fields exist on service/event/command/query entities and are synchronized across linked entities.
Operate on MongoDB-backed persistence with service-oriented architecture Implemented Non-Functional
DefinitionKeystone is implemented as an ASP.NET Core application using MongoDB persistence, dependency-injected repositories/services, and an extensible entity model intended to support additional entity types over time.
Purpose / ValueProvides a maintainable technical foundation for evolving architecture knowledge management.
ScopeCovers repository abstractions, service-layer business logic, configurable hosting, and deployable web runtime.
DependenciesMongoDB client/database configuration, repositories, services, Razor Pages app composition, Docker/Aspire hosting assets.
MeasuresThe application uses repository/service abstractions, MongoDB persistence, and deployable configuration in code and infrastructure files.
Overlay proposed changes onto current-state architecture Implemented Governance
DefinitionWhen a proposal is active, Keystone can overlay entity diffs onto current-state entities so users can review a proposed architecture without mutating approved records.
Purpose / ValueSeparates approved architecture from in-flight change design while keeping comparison simple.
ScopeApplies to retrieval, detail rendering, editing in proposal mode, and proposal-aware MCP reads.
DependenciesProposal context, diff service, entity service, entity details pages, MCP adrId overlays.
MeasuresEntities can be read with proposal overlays and proposal-mode edits create diffs instead of mutating current state.
Personalize user profile, API keys, and integration preferences Implemented Operational
DefinitionKeystone maintains user profiles with display name, theme, email preferences, API keys, and GitHub export preferences/tokens.
Purpose / ValueSupports secure user-specific integrations and a customizable working experience.
ScopeIncludes profile editing, API key generation/deletion, email notification preferences, and GitHub export settings memory.
DependenciesUser profile model, user profile service, profile page, API key authentication in MCP and export automation APIs.
MeasuresProfiles persist API keys and user settings; MCP authenticates via stored API keys.
Preserve soft-deleted entities with restoration and permanent deletion workflows Implemented Operational
DefinitionKeystone supports soft deletion, deleted-item review, restoration, and permanent deletion for managed entities.
Purpose / ValueImproves safety and recoverability when architecture content is removed.
ScopeIncludes deleted page administration and entity lifecycle state fields.
DependenciesBase entity delete fields, entity service delete/restore/permanent delete methods, deleted page UI.
MeasuresDelete, restore, and permanent delete workflows are implemented and covered in regression scenarios.
Publish static HTML exports to GitHub via UI and automation API Implemented Operational
DefinitionKeystone can publish generated HTML documentation to GitHub repositories using a user-scoped personal access token, either interactively or via an automation API.
Purpose / ValueSupports repeatable publishing of architecture documentation to external repositories.
ScopeIncludes repository/branch/folder selection, PR creation, deletion of non-existing files, and API-key-authenticated automation endpoint.
DependenciesGitHub export service, export automation controller, user profile PAT storage, export service.
MeasuresGitHub export UI and automation controller are implemented and call a dedicated GitHub export service.
Search architecture entities across the repository Implemented Functional
DefinitionKeystone supports repository-wide search across supported architecture entity types by name and content.
Purpose / ValueAllows users to quickly locate relevant architecture records without knowing their exact location.
ScopeIncludes search page workflows and MCP search tools for typed entities.
DependenciesEntity service, search page model, MCP search tooling.
MeasuresSearch endpoints and typed MCP search tools are present for core entity categories.
Store rich technical metadata for architecture entities Implemented Functional
DefinitionKeystone stores technical metadata such as tech stack, Docker image, port, compute sizing, OpenAPI specifications, database schema, message schema structure, payload examples, and topic metadata.
Purpose / ValuePreserves important implementation context needed for architecture communication and governance.
ScopePrimarily applies to Services, Events, Commands, and Queries.
DependenciesTyped entity models, edit forms, markdown/rendering services, navigator JSON endpoints, export service.
MeasuresMetadata fields are editable, persisted, rendered in UI, and included in API/export workflows.
Support AI-assisted architecture authoring and retrieval Implemented Technical
DefinitionKeystone includes AI-assisted chat and edit workflows that use page context, repository retrieval, conversation history, and targeted field editing guidance.
Purpose / ValueImproves author productivity and speeds architecture analysis within the application.
ScopeIncludes AI chat conversations, contextual retrieval, edit prompt history, and field-targeted edit assistance.
DependenciesAI chat service, AI conversation service, AI retrieval service, AI page context service, AI history service, provider configuration.
MeasuresAuthenticated AI chat API and AI-assisted edit UI hooks are implemented.
Support concurrent editing awareness and entity locking Implemented Operational
DefinitionKeystone uses SignalR-backed edit sessions and lock coordination to show who is editing and to reduce conflicting simultaneous edits.
Purpose / ValueImproves operational safety and collaboration during live editing.
ScopeIncludes join session, request/release lock, force release, user list updates, and live entity data updates.
DependenciesEntityHub SignalR hub, entity lock service, edit page scripts.
MeasuresSignalR hub methods exist for collaborative edit session membership and lock management.
Watch entities and notify interested users of changes Implemented Operational
DefinitionUsers can watch architecture entities, see watched items, receive in-app notifications, and optionally receive email notifications when watched content changes.
Purpose / ValueKeeps stakeholders informed when important architecture records are modified.
ScopeIncludes watch toggling, watched-items page, unread notification count, mark-read, and queued email sending.
DependenciesWatcher IDs on base entities, watch service, notification service, notifications API, SMTP/email queue configuration.
MeasuresWatch and notification controllers/pages are implemented and notification delivery can be queued.
Architecture Domain
This domain captures the currently implemented capabilities of Keystone itself as an architecture documentation, governance, collaboration, export, and integration platform. The capabilities below are written to reflect functionality verified from the running codebase and production MCP surface as of 2026-07-01.
Relationships
flowchart LR narchitecture_69C3F4FA["Domain: Architecture"]