Appearance
configStore
Concept layer — frozen. The Config Store generic. Nothing here is written by a normal playbook run; a project's own feature analysis is the live document and takes every edit. This layer names no project and links to none — the dependency runs one way, from an application to its concept.
Feature: Config Store
Entity: configStore
Description: The entity stores application-wide configuration settings using a key–value mapping structure. It ensures flexibility by allowing dynamic configurations without code modifications.
Entity Type: Table
| Attribute Name | Description | Data Type | Default Value | Required (= Nullable) | Unique | Format | Validations | Index | Example |
|---|---|---|---|---|---|---|---|---|---|
id | Unique configuration identifier | UUID v7 | Auto-generated UUID | Yes | Yes | - | - | Primary Key | 550e8400-e29b-41d4-a716-446655440000 |
configCode | Configuration code key | String | - | Yes | Yes | - | - | - | config.admin_contact |
configValueType | Specifies the type of the configValue | String | - | Yes | No | Enum — ConfigValueType | - | - | positive-integer |
configValue | Configuration value | String | - | Yes | No | - | - | - | admin@example.com |
active | Indicates whether the configuration is active or not | Boolean | DB default true; the API requires it | Yes | No | - | - | - | true |
createdAt | Timestamp of entity creation | timestamp with time zone | now() — assigned in code | Yes | No | ISO 8601 — YYYY-MM-DDTHH:mm:ss.SSSZ | - | - | 2025-03-16T18:00:00Z |
updatedAt | Timestamp of last entity update | timestamp with time zone | now() — assigned in code | Yes | No | ISO 8601 — YYYY-MM-DDTHH:mm:ss.SSSZ | - | - | 2025-03-16T18:00:00Z |
deletedAt | Timestamp of entity soft delete. Once set (that is, once it is non-null), this value is immutable and cannot be changed. | timestamp with time zone | - | No | - | ISO 8601 — YYYY-MM-DDTHH:mm:ss.SSSZ | - | - | null |
createdBy | Identifier of the author who created this record. | String | - | Yes | No | type:actor | - | - | user:c2d3f586-1c9a-4f5f-b9ae-45f2c4f69f7e |
updatedBy | String that identifies the author who last updated this record. | String | - | Yes | No | type:actor | - | - | system:migration |
Example Data
sql
INSERT INTO configStore (id, configCode, configValueType, configValue,
createdAt, updatedAt, deletedAt, createdBy, updatedBy)
VALUES
('018fa51f-fda1-79f4-8461-2cb8f1cabc10', 'config.privacyPolicyUrl', 'url',
'https://www.example.com/privacy-policy',
'2025-04-18T18:45:00+02:00', '2025-04-18T18:45:00+02:00', null, 'seed:init', 'seed:init'),
('018fa51f-fda3-7c63-b5a9-3fa33dc989de', 'config.administratorContact.name', 'string',
'Admin Admin',
'2025-04-18T18:45:00+02:00', '2025-04-18T18:45:00+02:00', null, 'seed:init', 'seed:init'),
('018fa51f-fda4-7e95-88e8-5f5675f0ddf8', 'config.administratorContact.email', 'email',
'admin@example.com',
'2025-04-18T18:45:00+02:00', '2025-04-18T18:45:00+02:00', null, 'seed:init', 'seed:init');