facetted-interfaces/history/FIAM_v0.2_Draft6/specimens/regression/05-postgresql-unix-socket.yaml
tegwick 1353267569 Establish FIAM repository governance baseline
Assistant: codex
Assistant-Model: gpt-5.6-luna
Assistant-Session: 01a087b0-7b1e-7531-8ef3-6525ebaf7ee7
2026-09-09 21:53:43 +02:00

88 lines
2.4 KiB
YAML

fiam_version: '0.2'
instance:
id: specimen.postgresql.unix-socket
kind: specimen
title: PostgreSQL frontend/backend protocol over Unix-domain socket
status: provisional
intent: Demonstrate a database interface using a non-network local carrier.
nodes:
- id: node.app
kind: system-node
name: Application Process
node_type: fiam.node-type.process
- id: node.postgres
kind: system-node
name: PostgreSQL Server
node_type: fiam.node-type.database
ports:
- id: port.app.sql
owner: node.app
participations:
- contract: contract.postgresql
mode: requires
roles:
- fiam.role.database-client
- id: port.postgres.sql
owner: node.postgres
participations:
- contract: contract.postgresql
mode: offers
roles:
- fiam.role.database-server
contracts:
- id: contract.postgresql
kind: interface-contract
purpose:
- fiam.purpose.query
- fiam.purpose.transactional-data-access
contract_forms:
- fiam.contract-form.database-wire-protocol
endpoints:
- id: endpoint.postgres.socket
kind: endpoint
address: /var/run/postgresql/.s.PGSQL.5432
address_scheme: fiam.address-scheme.unix-socket-path
bindings:
- id: binding.postgresql.unix
contract: contract.postgresql
provider_port: port.postgres.sql
consumer_ports:
- port.app.sql
binding_profile: fiam.binding-profile.postgresql-unix-socket
communication_stack:
- role: fiam.stack-role.database-protocol
term: fiam.protocol.postgresql-frontend-backend
- role: fiam.stack-role.ipc-process-carrier
term: fiam.transport.unix-domain-socket
endpoints:
- endpoint.postgres.socket
interactions:
- id: interaction.sql-session
binding: binding.postgresql.unix
interaction_style: fiam.interaction-style.session-command-response
temporal_semantics: fiam.temporal.stateful-session
assertions:
- id: assertion.not-network
subject: binding.postgresql.unix
predicate: fiam.property.network-required
value: false
evidence:
mode: fiam.evidence.runtime-observed
source: socket path observation
confidence: 1.0
assertion_kind: property
polarity: asserted
tests:
stresses:
- database-protocol-vs-carrier
- local-ipc
- stateful-session
notes:
- Database protocol is separated from TCP/IP assumptions.
expected_properties:
- id: check.evidence
kind: all-assertions-have-evidence
- id: check.no-deprecated
kind: no-deprecated-terms
- id: check.no-legacy-representations
kind: no-legacy-representations