← Files AI Software ArchitectARCHIVED FILE
skills/ai-software-architect/assets/architecture-contract.example.yaml
1.86 KB · Oct 4, 2026 · 12:32 UTC
# SPDX-FileCopyrightText: 2026 Leonardo Muffato (AUTOSOFT Engineering - www.autosoft-engineering.de)
# SPDX-License-Identifier: MIT
# Remove this source-template notice from generated user artifacts.
schema_version: 1.0.0
revision: 1
scope: notification-subsystem
architecture_style: modular-monolith-with-ports-and-adapters
quality_attributes:
- name: reliable-delivery
priority: 1
rationale: Accepted notifications must not be silently lost.
measurable_signal: Delivery outcomes are recorded for every accepted notification.
components:
- id: domain
responsibility: Own notification policy
owns_data: []
public_interfaces:
- submit-notification
- id: delivery-adapter
responsibility: Deliver approved notifications through an external provider
owns_data: []
public_interfaces:
- deliver-notification
external_boundaries:
- id: notification-provider
responsibility: Accept notification delivery requests
dependency_rules:
- source: domain
target: delivery-adapter
policy: allow-via-interface
via_interface: deliver-notification
rationale: Domain policy must not depend on provider implementation details.
- source: delivery-adapter
target: notification-provider
policy: allow
rationale: The delivery adapter may call its configured external provider directly.
- source: domain
target: notification-provider
policy: deny
rationale: Domain policy must never depend directly on an external provider.
# Dependency policy rules:
# - allow-via-interface requires via_interface.
# - allow and deny must omit via_interface entirely.
required_practices: []
prohibited_practices: []
decision_ids: []
unresolved_questions:
- id: Q-001
question: Which delivery latency objective is required?
decision_impact: The answer determines retry and timeout constraints.
critical: false
answer: null
SHA-256: d00ebe857f24389842567e254ed211e10bae7c6fc12153d32a7c96336b0d5f71