feat(ITC-WP-0016): establish PracticePattern language
All checks were successful
CI Smoke / host-smoke (push) Successful in 1s
CI Smoke / container-smoke (push) Successful in 1s

Assistant: codex
Assistant-Model: gpt-5.6-sol
Assistant-Session: 01a025c2-407a-7a32-b40a-f37a52f03f62
This commit is contained in:
tegwick 2026-08-21 22:22:46 +02:00
parent 5e2435aaf9
commit 149d2ced70
27 changed files with 1119 additions and 99 deletions

View file

@ -0,0 +1,33 @@
---
id: agent-brief/practice-pattern-interface-deprecation-strangler
artifact_id: practice-pattern/interface-deprecation-strangler
source_path: patterns/InterfaceDeprecationStrangler.md
source_kind: practice-pattern
generated: true
---
<!-- GENERATED by info_tech_canon; do not edit by hand. -->
# Agent Brief: InterfaceDeprecationStrangler
- Artifact ID: `practice-pattern/interface-deprecation-strangler`
- Kind: `practice-pattern`
- Canonical path: `patterns/InterfaceDeprecationStrangler.md`
- Full source: `patterns/InterfaceDeprecationStrangler.md`
- Summary: Reusable canon PracticePattern: InterfaceDeprecationStrangler.
## Retrieval Hints
Imports and anchors:
- `model/devsecops`
- `model/governance`
- `model/observability`
- `scheme/practice-pattern`
## Owned Concepts
- `InterfaceDeprecationStrangler`
## Related Distinctions
- **Interface deprecation vs retirement vs removal**: Deprecation guides and observes callers, retirement ends legacy behavior while retaining a metered tombstone, and removal deletes that tombstone only after the evidence gate passes.

View file

@ -0,0 +1,32 @@
---
id: agent-brief/scheme-practice-pattern
artifact_id: scheme/practice-pattern
source_path: patterns/PracticePatternScheme.md
source_kind: practice-pattern-scheme
generated: true
---
<!-- GENERATED by info_tech_canon; do not edit by hand. -->
# Agent Brief: PracticePattern Scheme
- Artifact ID: `scheme/practice-pattern`
- Kind: `practice-pattern-scheme`
- Canonical path: `patterns/PracticePatternScheme.md`
- Full source: `patterns/PracticePatternScheme.md`
- Summary: Contract for canon PracticePattern artifacts: PracticePattern Scheme.
## Retrieval Hints
Imports and anchors:
- `kernel/itc-core`
## Owned Concepts
- `PatternLanguage`
- `PracticePattern`
- `PracticePattern Scheme`
## Related Distinctions
No common distinction is anchored directly on this artifact.

View file

@ -5,8 +5,8 @@
This brief summarizes the current canon service surface for agents.
- Infospace slug: `canon`
- Artifact count: 68
- Retrieval index items: 68
- Artifact count: 70
- Retrieval index items: 70
- Primary confidence command: `make validate`
- Refresh generated indexes and views with: `make index`
- Refresh agent briefs and interface templates with: `make agent-briefs`
@ -29,6 +29,7 @@ This brief summarizes the current canon service surface for agents.
## Common Distinctions
- **Interface deprecation vs retirement vs removal**: Deprecation guides and observes callers, retirement ends legacy behavior while retaining a metered tombstone, and removal deletes that tombstone only after the evidence gate passes.
- **Actor vs Subject vs Principal**: Use actor for the acting entity in a context, subject for the entity a policy evaluates, and principal for the authenticated identity bound to access decisions.
- **Organization Role vs AccessRole vs CARING role**: Organization roles describe responsibility or position; access roles describe permissions; CARING roles classify access-governance needs and analysis.
- **Policy vs Control vs Evidence**: Policy states intent or rule, control implements or enforces that rule, and evidence records why the claim should be trusted.

View file

@ -1,5 +1,13 @@
{
"common_distinctions": [
{
"id": "interface-deprecation-retirement-removal",
"source_artifacts": [
"practice-pattern/interface-deprecation-strangler"
],
"summary": "Deprecation guides and observes callers, retirement ends legacy behavior while retaining a metered tombstone, and removal deletes that tombstone only after the evidence gate passes.",
"title": "Interface deprecation vs retirement vs removal"
},
{
"id": "actor-subject-principal",
"source_artifacts": [
@ -43,7 +51,7 @@
}
],
"infospace": "canon",
"item_count": 68,
"item_count": 70,
"items": [
{
"canonical_path": "assimilation/it-capability-canon/ASSIMILATION.md",
@ -1523,6 +1531,42 @@
"title": "Intent Scope Purposes Pattern",
"warnings": []
},
{
"canonical_path": "patterns/InterfaceDeprecationStrangler.md",
"id": "practice-pattern/interface-deprecation-strangler",
"imports": [
"model/devsecops",
"model/governance",
"model/observability",
"scheme/practice-pattern"
],
"kind": "practice-pattern",
"owned_concepts": [
"InterfaceDeprecationStrangler"
],
"relationships": [
{
"target": "scheme/practice-pattern",
"type": "conforms_to"
},
{
"target": "model/governance",
"type": "uses"
},
{
"target": "model/observability",
"type": "uses"
},
{
"target": "model/devsecops",
"type": "uses"
}
],
"source_path": "patterns/InterfaceDeprecationStrangler.md",
"summary": "Reusable canon PracticePattern: InterfaceDeprecationStrangler.",
"title": "InterfaceDeprecationStrangler",
"warnings": []
},
{
"canonical_path": "assimilation/intake-and-assimilation-practice.md",
"id": "practice/intake-and-assimilation",
@ -1891,6 +1935,29 @@
"title": "Consumer Alignment Workplan Template",
"warnings": []
},
{
"canonical_path": "patterns/PracticePatternScheme.md",
"id": "scheme/practice-pattern",
"imports": [
"kernel/itc-core"
],
"kind": "practice-pattern-scheme",
"owned_concepts": [
"PatternLanguage",
"PracticePattern",
"PracticePattern Scheme"
],
"relationships": [
{
"target": "kernel/itc-core",
"type": "conforms_to"
}
],
"source_path": "patterns/PracticePatternScheme.md",
"summary": "Contract for canon PracticePattern artifacts: PracticePattern Scheme.",
"title": "PracticePattern Scheme",
"warnings": []
},
{
"canonical_path": "profiles/small-saas/artifacts/control.namespace-per-tenant.yaml",
"id": "small-saas/control/namespace-per-tenant",

View file

@ -4,10 +4,11 @@
Schema: `info-tech-canon.retrieval-index.v1`
Infospace: `canon`
Items: **68**
Items: **70**
## Common Distinctions
- **Interface deprecation vs retirement vs removal**: Deprecation guides and observes callers, retirement ends legacy behavior while retaining a metered tombstone, and removal deletes that tombstone only after the evidence gate passes. Sources: `practice-pattern/interface-deprecation-strangler`
- **Actor vs Subject vs Principal**: Use actor for the acting entity in a context, subject for the entity a policy evaluates, and principal for the authenticated identity bound to access decisions. Sources: `model/organization`, `model/access-control`, `standard/caring`
- **Organization Role vs AccessRole vs CARING role**: Organization roles describe responsibility or position; access roles describe permissions; CARING roles classify access-governance needs and analysis. Sources: `model/organization`, `model/access-control`, `standard/caring`
- **Policy vs Control vs Evidence**: Policy states intent or rule, control implements or enforces that rule, and evidence records why the claim should be trusted. Sources: `model/governance`, `model/security`, `model/observability`
@ -455,6 +456,16 @@ Items: **68**
- Imports and anchors: `model/governance`, `model/task`
- Owned concepts: `Intent Scope Purposes Pattern`, `IntentScopePurposePattern`
### InterfaceDeprecationStrangler
- ID: `practice-pattern/interface-deprecation-strangler`
- Kind: `practice-pattern`
- Canonical path: `patterns/InterfaceDeprecationStrangler.md`
- Source path: `patterns/InterfaceDeprecationStrangler.md`
- Summary: Reusable canon PracticePattern: InterfaceDeprecationStrangler.
- Imports and anchors: `model/devsecops`, `model/governance`, `model/observability`, `scheme/practice-pattern`
- Owned concepts: `InterfaceDeprecationStrangler`
### Intake and Assimilation Practice
- ID: `practice/intake-and-assimilation`
@ -535,6 +546,16 @@ Items: **68**
- Imports and anchors: `model/purpose-demand-extension`, `model/task`
- Owned concepts: `Consumer Alignment Workplan Template`
### PracticePattern Scheme
- ID: `scheme/practice-pattern`
- Kind: `practice-pattern-scheme`
- Canonical path: `patterns/PracticePatternScheme.md`
- Source path: `patterns/PracticePatternScheme.md`
- Summary: Contract for canon PracticePattern artifacts: PracticePattern Scheme.
- Imports and anchors: `kernel/itc-core`
- Owned concepts: `PatternLanguage`, `PracticePattern`, `PracticePattern Scheme`
### Namespace Per Tenant Control
- ID: `small-saas/control/namespace-per-tenant`

View file

@ -1,6 +1,6 @@
schema: info-tech-canon.retrieval-index.v1
infospace: canon
item_count: 68
item_count: 70
items:
- id: assimilation/it-capability-canon
kind: assimilation
@ -973,6 +973,29 @@ items:
- type: uses
target: model/task
warnings: []
- id: practice-pattern/interface-deprecation-strangler
kind: practice-pattern
title: InterfaceDeprecationStrangler
canonical_path: patterns/InterfaceDeprecationStrangler.md
source_path: patterns/InterfaceDeprecationStrangler.md
summary: 'Reusable canon PracticePattern: InterfaceDeprecationStrangler.'
owned_concepts:
- InterfaceDeprecationStrangler
imports:
- model/devsecops
- model/governance
- model/observability
- scheme/practice-pattern
relationships:
- type: conforms_to
target: scheme/practice-pattern
- type: uses
target: model/governance
- type: uses
target: model/observability
- type: uses
target: model/devsecops
warnings: []
- id: practice/intake-and-assimilation
kind: practice
title: Intake and Assimilation Practice
@ -1210,6 +1233,22 @@ items:
- type: uses
target: model/purpose-demand-extension
warnings: []
- id: scheme/practice-pattern
kind: practice-pattern-scheme
title: PracticePattern Scheme
canonical_path: patterns/PracticePatternScheme.md
source_path: patterns/PracticePatternScheme.md
summary: 'Contract for canon PracticePattern artifacts: PracticePattern Scheme.'
owned_concepts:
- PatternLanguage
- PracticePattern
- PracticePattern Scheme
imports:
- kernel/itc-core
relationships:
- type: conforms_to
target: kernel/itc-core
warnings: []
- id: small-saas/control/namespace-per-tenant
kind: profile-artifact
title: Namespace Per Tenant Control
@ -1584,6 +1623,13 @@ items:
target: model/task
warnings: []
common_distinctions:
- id: interface-deprecation-retirement-removal
title: Interface deprecation vs retirement vs removal
summary: Deprecation guides and observes callers, retirement ends legacy behavior
while retaining a metered tombstone, and removal deletes that tombstone only after
the evidence gate passes.
source_artifacts:
- practice-pattern/interface-deprecation-strangler
- id: actor-subject-principal
title: Actor vs Subject vs Principal
summary: Use actor for the acting entity in a context, subject for the entity a