@precepts/standards 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +30 -0
- package/README.md +115 -0
- package/package.json +40 -0
- package/schema/document-standard-template.md +139 -0
- package/schema/standards.schema.json +154 -0
- package/standards/integration/governance/_category_.json +1 -0
- package/standards/integration/governance/integration-styles.md +56 -0
- package/standards/integration/index.md +9 -0
- package/standards/integration/standards/_category_.json +1 -0
- package/standards/integration/standards/api/_category_.json +1 -0
- package/standards/integration/standards/api/error-handling.md +250 -0
- package/standards/integration/standards/api/resource-design.md +286 -0
- package/standards/integration/standards/data-formats/_category_.json +1 -0
- package/standards/integration/standards/data-formats/character-encoding.md +206 -0
- package/standards/integration/standards/data-formats/date-format.md +102 -0
- package/standards/integration/standards/data-formats/datetime-formats.md +265 -0
- package/standards/integration/standards/data-formats/monetary-format.md +61 -0
- package/standards/integration/standards/events/_category_.json +1 -0
- package/standards/integration/standards/events/event-envelope.md +270 -0
- package/standards/integration/standards/foundational/_category_.json +1 -0
- package/standards/integration/standards/foundational/naming-conventions.md +334 -0
- package/standards/integration/standards/observability/_category_.json +1 -0
- package/standards/integration/standards/observability/integration-observability.md +226 -0
- package/standards/integration/standards/resilience/_category_.json +1 -0
- package/standards/integration/standards/resilience/integration-resilience-patterns.md +291 -0
- package/standards/integration/standards/resilience/retry-policy.md +268 -0
- package/standards/integration/standards/resilience/timeout.md +269 -0
- package/standards/integration/standards/versioning/_category_.json +1 -0
- package/standards/integration/standards/versioning/backward-forward-compatibility.md +230 -0
- package/standards/product/Guidelines/_category_.json +1 -0
- package/standards/product/Guidelines/requirement-document.md +54 -0
- package/standards/product/index.md +9 -0
- package/standards/project-management/index.md +9 -0
- package/standards/ux/index.md +9 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Precepts Contributors
|
|
4
|
+
|
|
5
|
+
This license applies to all standards content and schema files in this repository.
|
|
6
|
+
|
|
7
|
+
You are free to:
|
|
8
|
+
|
|
9
|
+
Share - copy and redistribute the material in any medium or format for
|
|
10
|
+
any purpose, including commercially.
|
|
11
|
+
|
|
12
|
+
Adapt - remix, transform, and build upon the material for any purpose,
|
|
13
|
+
including commercially.
|
|
14
|
+
|
|
15
|
+
Under the following terms:
|
|
16
|
+
|
|
17
|
+
Attribution - You must give appropriate credit, provide a link to the
|
|
18
|
+
license, and indicate if changes were made. You may do so in any
|
|
19
|
+
reasonable manner, but not in any way that suggests the licensor
|
|
20
|
+
endorses you or your use.
|
|
21
|
+
|
|
22
|
+
ShareAlike - If you remix, transform, or build upon the material, you
|
|
23
|
+
must distribute your contributions under the same license as the
|
|
24
|
+
original.
|
|
25
|
+
|
|
26
|
+
No additional restrictions - You may not apply legal terms or
|
|
27
|
+
technological measures that legally restrict others from doing anything
|
|
28
|
+
the license permits.
|
|
29
|
+
|
|
30
|
+
Full license text: https://creativecommons.org/licenses/by-sa/4.0/legalcode
|
package/README.md
ADDED
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
# Precepts Standards
|
|
2
|
+
|
|
3
|
+
Built for humans. Ready for agents.
|
|
4
|
+
|
|
5
|
+
The canonical source of multi-discipline standards for the [Precepts](https://precepts.dev) platform. Standards are published as machine-readable Markdown with YAML frontmatter, consumable by both humans and AI agents.
|
|
6
|
+
|
|
7
|
+
## Install
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
npm install @precepts/standards
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Usage
|
|
14
|
+
|
|
15
|
+
Standards are plain Markdown files with structured YAML frontmatter. Consume them however you need:
|
|
16
|
+
|
|
17
|
+
```javascript
|
|
18
|
+
import { readFileSync } from 'fs';
|
|
19
|
+
import matter from 'gray-matter';
|
|
20
|
+
|
|
21
|
+
// Read a standard
|
|
22
|
+
const raw = readFileSync(
|
|
23
|
+
'node_modules/@precepts/standards/standards/integration/standards/api/resource-design.md',
|
|
24
|
+
'utf-8'
|
|
25
|
+
);
|
|
26
|
+
const { data, content } = matter(raw);
|
|
27
|
+
|
|
28
|
+
console.log(data.identifier); // "INTG-STD-008"
|
|
29
|
+
console.log(data.status); // "MANDATORY"
|
|
30
|
+
console.log(data.domain); // "INTEGRATION"
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
## Disciplines
|
|
34
|
+
|
|
35
|
+
| Discipline | Prefix | Directory |
|
|
36
|
+
|---|---|---|
|
|
37
|
+
| Integration | `INTG` | `standards/integration/` |
|
|
38
|
+
| Product Management | `PRD` | `standards/product/` |
|
|
39
|
+
| UX | `UX` | `standards/ux/` |
|
|
40
|
+
| Project Management | `PRJ` | `standards/project-management/` |
|
|
41
|
+
|
|
42
|
+
## Integration Standards (Batch 1)
|
|
43
|
+
|
|
44
|
+
| Identifier | Name | Status |
|
|
45
|
+
|---|---|---|
|
|
46
|
+
| INTG-STD-004 | Naming Conventions | MANDATORY |
|
|
47
|
+
| INTG-STD-005 | Character Encoding | MANDATORY |
|
|
48
|
+
| INTG-STD-006 | Backward and Forward Compatibility | MANDATORY |
|
|
49
|
+
| INTG-STD-008 | API Resource Design | MANDATORY |
|
|
50
|
+
| INTG-STD-009 | API Error Handling | MANDATORY |
|
|
51
|
+
| INTG-STD-015 | Event Envelope (CloudEvents) | MANDATORY |
|
|
52
|
+
| INTG-STD-029 | Observability | MANDATORY |
|
|
53
|
+
| INTG-STD-033 | Resilience Patterns | MANDATORY |
|
|
54
|
+
| INTG-STD-034 | Retry Policy | MANDATORY |
|
|
55
|
+
| INTG-STD-035 | Timeout | MANDATORY |
|
|
56
|
+
|
|
57
|
+
## Standards Schema
|
|
58
|
+
|
|
59
|
+
Each standard has YAML frontmatter validated against `schema/standards.schema.json`:
|
|
60
|
+
|
|
61
|
+
```yaml
|
|
62
|
+
---
|
|
63
|
+
identifier: INTG-STD-008
|
|
64
|
+
name: API Resource Design
|
|
65
|
+
version: 1.0.0
|
|
66
|
+
status: MANDATORY
|
|
67
|
+
domain: INTEGRATION
|
|
68
|
+
documentType: standard
|
|
69
|
+
category: protocol
|
|
70
|
+
---
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
**Required fields:** `identifier`, `name`, `version`, `status`, `domain`, `documentType`
|
|
74
|
+
|
|
75
|
+
**Identifier pattern:** `[INTG|PRD|PRJ|UX|SEC]-[STD|GDL|GOV|BP]-NNN`
|
|
76
|
+
|
|
77
|
+
**Status values:** `DRAFT`, `MANDATORY`, `RECOMMENDED`, `DEPRECATED`
|
|
78
|
+
|
|
79
|
+
## Content Conventions
|
|
80
|
+
|
|
81
|
+
- `## Rules` for prescriptive instructions (not "Requirements")
|
|
82
|
+
- RFC 2119 keywords (**MUST**, **SHOULD**, **MAY**) bolded throughout
|
|
83
|
+
- Rule numbering: `### R-N: Title` as H3 headings
|
|
84
|
+
- Concept-level examples (pseudocode), not technology-specific
|
|
85
|
+
- 200-300 lines per standard
|
|
86
|
+
|
|
87
|
+
## Validation
|
|
88
|
+
|
|
89
|
+
```bash
|
|
90
|
+
npm run validate # check frontmatter + required sections
|
|
91
|
+
npm run validate:strict # warnings become errors
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
## Ecosystem
|
|
95
|
+
|
|
96
|
+
This package is consumed by:
|
|
97
|
+
|
|
98
|
+
- **[precepts-dev/platform](https://github.com/precepts-dev/platform)** - Docusaurus site, MCP server, validator
|
|
99
|
+
- **precepts-dev/engine** - Commercial compliance scanning engine (private)
|
|
100
|
+
- **Your tools** - build anything on top of these standards
|
|
101
|
+
|
|
102
|
+
## Contributing
|
|
103
|
+
|
|
104
|
+
Standards proposals and revisions are welcome. Each standard follows the template in `schema/document-standard-template.md`.
|
|
105
|
+
|
|
106
|
+
1. Fork this repo
|
|
107
|
+
2. Create a new standard or modify an existing one
|
|
108
|
+
3. Run `npm run validate` to check your changes
|
|
109
|
+
4. Open a PR
|
|
110
|
+
|
|
111
|
+
## License
|
|
112
|
+
|
|
113
|
+
CC BY-SA 4.0 - see [LICENSE](LICENSE) for details.
|
|
114
|
+
|
|
115
|
+
All standards are freely usable by individuals, companies, and AI tools, with attribution and share-alike.
|
package/package.json
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@precepts/standards",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "Multi-discipline standards for software teams - machine-readable, AI-native, human-friendly",
|
|
5
|
+
"license": "CC-BY-SA-4.0",
|
|
6
|
+
"repository": {
|
|
7
|
+
"type": "git",
|
|
8
|
+
"url": "https://github.com/precepts-dev/standards.git"
|
|
9
|
+
},
|
|
10
|
+
"homepage": "https://precepts.dev",
|
|
11
|
+
"keywords": [
|
|
12
|
+
"standards",
|
|
13
|
+
"integration",
|
|
14
|
+
"product-management",
|
|
15
|
+
"ux",
|
|
16
|
+
"project-management",
|
|
17
|
+
"ai-native",
|
|
18
|
+
"mcp",
|
|
19
|
+
"llm"
|
|
20
|
+
],
|
|
21
|
+
"files": [
|
|
22
|
+
"standards/",
|
|
23
|
+
"schema/",
|
|
24
|
+
"LICENSE"
|
|
25
|
+
],
|
|
26
|
+
"main": "standards/",
|
|
27
|
+
"exports": {
|
|
28
|
+
"./standards": "./standards/",
|
|
29
|
+
"./schema": "./schema/",
|
|
30
|
+
"./schema/standards.schema.json": "./schema/standards.schema.json"
|
|
31
|
+
},
|
|
32
|
+
"scripts": {
|
|
33
|
+
"validate": "npx tsx tools/validate.ts --docs-root ./standards",
|
|
34
|
+
"validate:strict": "npx tsx tools/validate.ts --docs-root ./standards --strict"
|
|
35
|
+
},
|
|
36
|
+
"devDependencies": {
|
|
37
|
+
"gray-matter": "^4.0.3",
|
|
38
|
+
"tsx": "^4.19.0"
|
|
39
|
+
}
|
|
40
|
+
}
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
---
|
|
2
|
+
# ┌──────────────────────────────────────────────────────────────────┐
|
|
3
|
+
# │ PRECEPTS - Universal Standard/Guideline Template │
|
|
4
|
+
# │ │
|
|
5
|
+
# │ Instructions: │
|
|
6
|
+
# │ 1. Copy this file as a starting point for your new document │
|
|
7
|
+
# │ 2. Replace placeholder values (marked with <angle brackets>) │
|
|
8
|
+
# │ 3. Pick ONE value from pipe-delimited options (a | b | c) │
|
|
9
|
+
# │ 4. Delete inline comments once you've filled in the fields │
|
|
10
|
+
# │ 5. Include all REQUIRED body sections; omit optional ones │
|
|
11
|
+
# │ that don't apply to your domain │
|
|
12
|
+
# └──────────────────────────────────────────────────────────────────┘
|
|
13
|
+
|
|
14
|
+
# ── Identity (required) ──────────────────────────────────────────
|
|
15
|
+
identifier: "<PREFIX>-<TYPE>-<NNN>"
|
|
16
|
+
# Prefix: INTG | PRD | PRJ | UX | SEC
|
|
17
|
+
# Type: STD (standard) | GDL (guideline) | GOV (governance) | BP (best practice)
|
|
18
|
+
# Number: zero-padded 3-digit (e.g., 001)
|
|
19
|
+
# Examples: INTG-STD-001, UX-GDL-003, PRJ-GOV-001
|
|
20
|
+
|
|
21
|
+
name: "<Document Title>"
|
|
22
|
+
version: "1.0.0" # semver: patch = typo, minor = new fields/status change, major = breaking
|
|
23
|
+
status: "DRAFT" # DRAFT | MANDATORY | RECOMMENDED | DEPRECATED
|
|
24
|
+
|
|
25
|
+
# ── Classification (required) ────────────────────────────────────
|
|
26
|
+
domain: "<DOMAIN>"
|
|
27
|
+
# Pick one: INTEGRATION | PRODUCT-MANAGEMENT | PROJECT-MANAGEMENT | UX | SECURITY
|
|
28
|
+
|
|
29
|
+
documentType: "<TYPE>"
|
|
30
|
+
# Pick one: standard | guideline | governance | best-practice
|
|
31
|
+
|
|
32
|
+
category: "<CATEGORY>"
|
|
33
|
+
# Pick one or more (comma-separated in a list):
|
|
34
|
+
# Universal: governance, security, reliability, naming, versioning, observability
|
|
35
|
+
# Integration: format, protocol, data-modeling, error-handling
|
|
36
|
+
# Product: process, methodology, decision-framework
|
|
37
|
+
# PM: process, ceremony, methodology
|
|
38
|
+
# UX: accessibility, design-system, interaction, content
|
|
39
|
+
|
|
40
|
+
# ── Applicability (recommended) ──────────────────────────────────
|
|
41
|
+
appliesTo: []
|
|
42
|
+
# Domain-scoped values - pick from YOUR domain's vocabulary:
|
|
43
|
+
# Integration: api, events, a2a, files, mcp, webhooks, grpc, graphql, batch, streaming
|
|
44
|
+
# Product: prd, roadmap, user-story, okr, epic, spike
|
|
45
|
+
# PM: ceremony, estimation, risk, reporting, artifact, workflow
|
|
46
|
+
# UX: web, ios, android, design-tokens, component-library, content
|
|
47
|
+
|
|
48
|
+
# ── Ownership ────────────────────────────────────────────────────
|
|
49
|
+
lastUpdated: "YYYY-MM-DD"
|
|
50
|
+
owner: "<Governing Body>"
|
|
51
|
+
# Examples: Integration Architecture Board, Product Council, UX Design Authority
|
|
52
|
+
|
|
53
|
+
# ── Compliance References ────────────────────────────────────────
|
|
54
|
+
standardsCompliance:
|
|
55
|
+
iso: [] # e.g., ["ISO-8601", "ISO-9241"]
|
|
56
|
+
rfc: [] # e.g., ["RFC-3339", "RFC-9557"]
|
|
57
|
+
w3c: [] # e.g., ["WCAG-2.2", "WAI-ARIA-1.2"]
|
|
58
|
+
other: [] # e.g., ["PMBOK-7", "SAFe-6.0", "OWASP-Top-10"]
|
|
59
|
+
|
|
60
|
+
# ── Taxonomy ─────────────────────────────────────────────────────
|
|
61
|
+
taxonomy:
|
|
62
|
+
capability: "" # e.g., "data-format", "authentication", "estimation"
|
|
63
|
+
subCapability: "" # e.g., "date-time", "oauth2", "story-points"
|
|
64
|
+
layer: ""
|
|
65
|
+
# Domain-scoped values:
|
|
66
|
+
# Integration: contract | transport | semantic | infrastructure
|
|
67
|
+
# Product: strategy | process | artifact | metric
|
|
68
|
+
# PM: governance | ceremony | artifact | metric
|
|
69
|
+
# UX: visual | interaction | content | information-architecture
|
|
70
|
+
|
|
71
|
+
# ── Enforcement ──────────────────────────────────────────────────
|
|
72
|
+
enforcement:
|
|
73
|
+
method: ""
|
|
74
|
+
# Pick one: automated | review-based | stage-gate | hybrid
|
|
75
|
+
# For automated enforcement (primarily Integration):
|
|
76
|
+
validationRules: {}
|
|
77
|
+
rejectionCriteria: []
|
|
78
|
+
supportedFormats: []
|
|
79
|
+
authoritativeModel: ""
|
|
80
|
+
# For human-review enforcement (primarily PM/Product/UX):
|
|
81
|
+
reviewChecklist: []
|
|
82
|
+
|
|
83
|
+
# ── Relationships ────────────────────────────────────────────────
|
|
84
|
+
dependsOn: [] # Identifiers this document depends on, e.g., ["INTG-STD-001"]
|
|
85
|
+
supersedes: "" # Identifier this document replaces, e.g., "INTG-STD-001"
|
|
86
|
+
|
|
87
|
+
---
|
|
88
|
+
|
|
89
|
+
# <Document Title>
|
|
90
|
+
|
|
91
|
+
<!-- The identifier, version, status, domain, and documentType are rendered
|
|
92
|
+
automatically from frontmatter as a metadata bar above the content.
|
|
93
|
+
Do NOT duplicate the identifier in the body. -->
|
|
94
|
+
|
|
95
|
+
## Purpose
|
|
96
|
+
|
|
97
|
+
<!-- REQUIRED - All domains. Why does this standard/guideline exist? What problem does it solve? -->
|
|
98
|
+
|
|
99
|
+
## Rules
|
|
100
|
+
|
|
101
|
+
<!-- REQUIRED - All domains. Use RFC 2119 language (MUST, SHOULD, MAY) to state prescriptive instructions about what is allowed or prohibited. -->
|
|
102
|
+
|
|
103
|
+
## Examples
|
|
104
|
+
|
|
105
|
+
<!-- REQUIRED - All domains. Show concrete valid/invalid examples. Use code blocks, tables, or diagrams. -->
|
|
106
|
+
|
|
107
|
+
## Allowed Representations
|
|
108
|
+
|
|
109
|
+
<!-- OPTIONAL - Primarily Integration. Define acceptable serialization formats, encodings, or structural variants. -->
|
|
110
|
+
|
|
111
|
+
## Validation Rules
|
|
112
|
+
|
|
113
|
+
<!-- OPTIONAL - Primarily Integration, Security. Machine-checkable rules: regex patterns, schema constraints, linting rules. -->
|
|
114
|
+
|
|
115
|
+
## Enforcement Rules
|
|
116
|
+
|
|
117
|
+
<!-- OPTIONAL - Primarily Integration, Security. What must be rejected? At what boundary? -->
|
|
118
|
+
|
|
119
|
+
## Roles & Responsibilities
|
|
120
|
+
|
|
121
|
+
<!-- OPTIONAL - Primarily PM, Product. Define who does what (RACI or similar). -->
|
|
122
|
+
|
|
123
|
+
## Accessibility
|
|
124
|
+
|
|
125
|
+
<!-- OPTIONAL - Primarily UX. WCAG criteria, ARIA requirements, assistive technology behavior. -->
|
|
126
|
+
|
|
127
|
+
## References
|
|
128
|
+
|
|
129
|
+
<!-- REQUIRED - All domains. Links to external specifications, tools, and related resources. -->
|
|
130
|
+
|
|
131
|
+
## Rationale
|
|
132
|
+
|
|
133
|
+
<!-- REQUIRED - All domains. Why were these specific choices made? What alternatives were considered? -->
|
|
134
|
+
|
|
135
|
+
## Version History
|
|
136
|
+
|
|
137
|
+
| Version | Date | Change |
|
|
138
|
+
| ------- | ---------- | ------------------ |
|
|
139
|
+
| 1.0.0 | YYYY-MM-DD | Initial definition |
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
|
+
"title": "Precepts Standard Metadata",
|
|
4
|
+
"description": "Schema for validating frontmatter in Precepts standards, guidelines, and governance documents.",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"required": [
|
|
7
|
+
"identifier",
|
|
8
|
+
"name",
|
|
9
|
+
"version",
|
|
10
|
+
"status",
|
|
11
|
+
"domain",
|
|
12
|
+
"documentType"
|
|
13
|
+
],
|
|
14
|
+
"properties": {
|
|
15
|
+
"identifier": {
|
|
16
|
+
"type": "string",
|
|
17
|
+
"pattern": "^(INTG|PRD|PRJ|UX|SEC)-(STD|GDL|GOV|BP)-\\d{3}$",
|
|
18
|
+
"description": "Unique document identifier: <PREFIX>-<TYPE>-<NNN>"
|
|
19
|
+
},
|
|
20
|
+
"name": {
|
|
21
|
+
"type": "string",
|
|
22
|
+
"minLength": 1,
|
|
23
|
+
"description": "Human-readable document title"
|
|
24
|
+
},
|
|
25
|
+
"version": {
|
|
26
|
+
"type": "string",
|
|
27
|
+
"pattern": "^[0-9]+\\.[0-9]+\\.[0-9]+$",
|
|
28
|
+
"description": "Semantic version (major.minor.patch)"
|
|
29
|
+
},
|
|
30
|
+
"status": {
|
|
31
|
+
"type": "string",
|
|
32
|
+
"enum": ["DRAFT", "MANDATORY", "RECOMMENDED", "DEPRECATED"],
|
|
33
|
+
"description": "Lifecycle status of the document"
|
|
34
|
+
},
|
|
35
|
+
"domain": {
|
|
36
|
+
"type": "string",
|
|
37
|
+
"enum": ["INTEGRATION", "PRODUCT-MANAGEMENT", "PROJECT-MANAGEMENT", "UX", "SECURITY"],
|
|
38
|
+
"description": "Discipline this document belongs to"
|
|
39
|
+
},
|
|
40
|
+
"documentType": {
|
|
41
|
+
"type": "string",
|
|
42
|
+
"enum": ["standard", "guideline", "governance", "best-practice"],
|
|
43
|
+
"description": "Type of document - controls which body sections are required"
|
|
44
|
+
},
|
|
45
|
+
"category": {
|
|
46
|
+
"type": "string",
|
|
47
|
+
"description": "Primary category (e.g., format, process, accessibility, governance)"
|
|
48
|
+
},
|
|
49
|
+
"appliesTo": {
|
|
50
|
+
"type": "array",
|
|
51
|
+
"items": { "type": "string" },
|
|
52
|
+
"description": "Domain-scoped applicability targets (e.g., api, ceremony, web)"
|
|
53
|
+
},
|
|
54
|
+
"lastUpdated": {
|
|
55
|
+
"type": "string",
|
|
56
|
+
"pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}$",
|
|
57
|
+
"description": "Last modification date (YYYY-MM-DD)"
|
|
58
|
+
},
|
|
59
|
+
"owner": {
|
|
60
|
+
"type": "string",
|
|
61
|
+
"description": "Governing body or team responsible for this document"
|
|
62
|
+
},
|
|
63
|
+
"standardsCompliance": {
|
|
64
|
+
"type": "object",
|
|
65
|
+
"properties": {
|
|
66
|
+
"iso": {
|
|
67
|
+
"type": "array",
|
|
68
|
+
"items": { "type": "string" }
|
|
69
|
+
},
|
|
70
|
+
"rfc": {
|
|
71
|
+
"type": "array",
|
|
72
|
+
"items": { "type": "string" }
|
|
73
|
+
},
|
|
74
|
+
"w3c": {
|
|
75
|
+
"type": "array",
|
|
76
|
+
"items": { "type": "string" }
|
|
77
|
+
},
|
|
78
|
+
"other": {
|
|
79
|
+
"type": "array",
|
|
80
|
+
"items": { "type": "string" }
|
|
81
|
+
}
|
|
82
|
+
},
|
|
83
|
+
"additionalProperties": false
|
|
84
|
+
},
|
|
85
|
+
"taxonomy": {
|
|
86
|
+
"type": "object",
|
|
87
|
+
"required": ["capability", "layer"],
|
|
88
|
+
"properties": {
|
|
89
|
+
"capability": {
|
|
90
|
+
"type": "string",
|
|
91
|
+
"description": "Primary capability area (e.g., data-format, authentication, estimation)"
|
|
92
|
+
},
|
|
93
|
+
"subCapability": {
|
|
94
|
+
"type": "string",
|
|
95
|
+
"description": "Sub-capability (e.g., date-time, oauth2, story-points)"
|
|
96
|
+
},
|
|
97
|
+
"layer": {
|
|
98
|
+
"type": "string",
|
|
99
|
+
"description": "Domain-scoped layer (e.g., contract, process, visual, governance)"
|
|
100
|
+
}
|
|
101
|
+
},
|
|
102
|
+
"additionalProperties": false
|
|
103
|
+
},
|
|
104
|
+
"enforcement": {
|
|
105
|
+
"type": "object",
|
|
106
|
+
"properties": {
|
|
107
|
+
"method": {
|
|
108
|
+
"type": "string",
|
|
109
|
+
"enum": ["automated", "review-based", "stage-gate", "hybrid"],
|
|
110
|
+
"description": "How compliance is verified"
|
|
111
|
+
},
|
|
112
|
+
"validationRules": {
|
|
113
|
+
"type": "object",
|
|
114
|
+
"description": "Machine-checkable validation rules (primarily for automated enforcement)"
|
|
115
|
+
},
|
|
116
|
+
"rejectionCriteria": {
|
|
117
|
+
"type": "array",
|
|
118
|
+
"items": { "type": "string" },
|
|
119
|
+
"description": "Conditions that cause rejection"
|
|
120
|
+
},
|
|
121
|
+
"supportedFormats": {
|
|
122
|
+
"type": "array",
|
|
123
|
+
"items": { "type": "string" },
|
|
124
|
+
"description": "Accepted format identifiers"
|
|
125
|
+
},
|
|
126
|
+
"authoritativeModel": {
|
|
127
|
+
"type": "string",
|
|
128
|
+
"description": "Canonical model or source of truth"
|
|
129
|
+
},
|
|
130
|
+
"reviewChecklist": {
|
|
131
|
+
"type": "array",
|
|
132
|
+
"items": { "type": "string" },
|
|
133
|
+
"description": "Human-review checklist items (primarily for review-based enforcement)"
|
|
134
|
+
}
|
|
135
|
+
},
|
|
136
|
+
"additionalProperties": true
|
|
137
|
+
},
|
|
138
|
+
"dependsOn": {
|
|
139
|
+
"type": "array",
|
|
140
|
+
"items": { "type": "string" },
|
|
141
|
+
"description": "Identifiers of standards this document depends on"
|
|
142
|
+
},
|
|
143
|
+
"supersedes": {
|
|
144
|
+
"type": "string",
|
|
145
|
+
"description": "Identifier of the document this one replaces"
|
|
146
|
+
},
|
|
147
|
+
"classifications": {
|
|
148
|
+
"type": "array",
|
|
149
|
+
"items": { "type": "string" },
|
|
150
|
+
"description": "Sub-classifications within the standard (e.g., ABSOLUTE, SCHEDULED)"
|
|
151
|
+
}
|
|
152
|
+
},
|
|
153
|
+
"additionalProperties": true
|
|
154
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"label": "Governance", "position": 2}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
---
|
|
2
|
+
identifier: "INTG-GOV-001"
|
|
3
|
+
name: "Integration Styles"
|
|
4
|
+
version: "1.0.0"
|
|
5
|
+
status: "DRAFT"
|
|
6
|
+
|
|
7
|
+
domain: "INTEGRATION"
|
|
8
|
+
documentType: "governance"
|
|
9
|
+
category: "governance"
|
|
10
|
+
appliesTo: ["api", "events", "a2a", "files", "mcp"]
|
|
11
|
+
|
|
12
|
+
lastUpdated: "2026-02-17"
|
|
13
|
+
owner: "Integration Architecture Board"
|
|
14
|
+
|
|
15
|
+
standardsCompliance:
|
|
16
|
+
iso: []
|
|
17
|
+
rfc: []
|
|
18
|
+
w3c: []
|
|
19
|
+
other: []
|
|
20
|
+
|
|
21
|
+
taxonomy:
|
|
22
|
+
capability: "integration-patterns"
|
|
23
|
+
subCapability: ""
|
|
24
|
+
layer: "infrastructure"
|
|
25
|
+
|
|
26
|
+
enforcement:
|
|
27
|
+
method: "review-based"
|
|
28
|
+
reviewChecklist: []
|
|
29
|
+
|
|
30
|
+
dependsOn: []
|
|
31
|
+
supersedes: ""
|
|
32
|
+
---
|
|
33
|
+
|
|
34
|
+
# Integration Styles
|
|
35
|
+
|
|
36
|
+
## Purpose
|
|
37
|
+
|
|
38
|
+
## Conceptual Model
|
|
39
|
+
|
|
40
|
+
## Rules
|
|
41
|
+
|
|
42
|
+
## Examples
|
|
43
|
+
|
|
44
|
+
## Allowed Representations
|
|
45
|
+
|
|
46
|
+
## Enforcement Rules
|
|
47
|
+
|
|
48
|
+
## References
|
|
49
|
+
|
|
50
|
+
## Rationale
|
|
51
|
+
|
|
52
|
+
## Version History
|
|
53
|
+
|
|
54
|
+
| Version | Date | Change |
|
|
55
|
+
| ------- | ---------- | ------------------ |
|
|
56
|
+
| 1.0.0 | 2026-02-17 | Initial definition |
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
---
|
|
2
|
+
sidebar_position: 1
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Integration Standards
|
|
6
|
+
|
|
7
|
+
This section contains integration standards, guidelines, and governance documents for the Precepts platform.
|
|
8
|
+
|
|
9
|
+
Standards in this discipline cover API design, event-driven architecture, data formats, resilience patterns, observability, versioning, and cross-cutting concerns. All standards are backed by ISO, IEEE, RFC and other industry specifications.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"label": "Standards", "position": 1}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"label": "API", "position": 3}
|