code-anchored-context 0.2.2 → 0.2.4
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/.agents/skills/code-anchored-context/SKILL.md +40 -11
- package/AGENTS.md +18 -15
- package/README.md +16 -12
- package/bin/code-anchored-context.js +17 -11
- package/context/AGENTS.md +9 -3
- package/context/README.md +40 -9
- package/context/_templates/initiative/README.md +5 -3
- package/context/_templates/initiative/delivery.md +4 -0
- package/context/_templates/initiative/infrastructure.md +4 -0
- package/context/_templates/initiative/operations.md +4 -0
- package/context/_templates/initiative/plan.md +2 -2
- package/context/_templates/initiative/release-doc-notes.md +9 -9
- package/context/_templates/initiative/testing.md +4 -0
- package/context/_templates/planned-initiative/README.md +3 -1
- package/context/_templates/planned-initiative/delivery.md +4 -0
- package/context/_templates/planned-initiative/infrastructure.md +4 -0
- package/context/_templates/planned-initiative/operations.md +4 -0
- package/context/_templates/planned-initiative/plan.md +1 -1
- package/context/_templates/planned-initiative/release-doc-notes.md +6 -6
- package/context/_templates/planned-initiative/testing.md +4 -0
- package/context/current.md +4 -0
- package/context/project-profile.md +130 -0
- package/context/terminology.md +6 -2
- package/package.json +5 -4
- package/{product-docs → reference}/README.md +16 -15
- package/{product-docs → reference}/_authoring/README.md +8 -8
- package/{product-docs → reference}/_authoring/areas/README.md +2 -2
- package/{product-docs → reference}/_authoring/areas/_template.md +5 -5
- package/{product-docs → reference}/_authoring/terminology.md +1 -1
- package/{product-docs → reference}/_authoring/workflow.md +50 -46
- package/{product-docs → reference}/releases/index.md +2 -2
- /package/{product-docs → reference}/_templates/area/README.md +0 -0
- /package/{product-docs → reference}/_templates/area/features/feature-template.md +0 -0
|
@@ -37,4 +37,4 @@ Describe the current agreed future direction.
|
|
|
37
37
|
- [ ] Move actionable runtime/support concerns into `operations.md`
|
|
38
38
|
- [ ] Move executable future work into `backlog.md`
|
|
39
39
|
- [ ] Move durable program decisions into the parent program's `decisions/`
|
|
40
|
-
- [ ] Move
|
|
40
|
+
- [ ] Move reference impact into `release-doc-notes.md`
|
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
# Release Doc Notes
|
|
2
2
|
|
|
3
|
-
Use this file to capture expected
|
|
3
|
+
Use this file to capture expected reference impact while future
|
|
4
4
|
work is being planned. When the planned initiative is promoted and later
|
|
5
5
|
implemented, compare these notes against the final shipped behavior.
|
|
6
6
|
|
|
7
|
-
Do not edit `
|
|
8
|
-
explicitly asks for a
|
|
7
|
+
Do not edit `reference/` from normal development work unless a human
|
|
8
|
+
explicitly asks for a reference refresh or a specific reference fix.
|
|
9
9
|
|
|
10
10
|
## Expected Product Behavior Changes
|
|
11
11
|
|
|
12
12
|
- None yet.
|
|
13
13
|
|
|
14
|
-
## Candidate
|
|
14
|
+
## Candidate Reference Areas
|
|
15
15
|
|
|
16
|
-
- `
|
|
17
|
-
- `
|
|
16
|
+
- `reference/<Area>/README.md`
|
|
17
|
+
- `reference/<Area>/features/<feature>.md`
|
|
18
18
|
|
|
19
19
|
## QA Or Support Notes
|
|
20
20
|
|
|
@@ -3,6 +3,10 @@
|
|
|
3
3
|
Use this file for future verification strategy that is already clear enough to
|
|
4
4
|
preserve before the target release becomes current.
|
|
5
5
|
|
|
6
|
+
Start from `context/project-profile.md` for repo-wide default commands and
|
|
7
|
+
test tooling. Capture only planned initiative-specific additions, exceptions,
|
|
8
|
+
data needs, or release gates here.
|
|
9
|
+
|
|
6
10
|
## Test Strategy
|
|
7
11
|
|
|
8
12
|
Describe what the future release initiative will need to prove.
|
package/context/current.md
CHANGED
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
# Project Profile
|
|
2
|
+
|
|
3
|
+
Project: PROJECT_NAME
|
|
4
|
+
Baseline status: Not populated yet.
|
|
5
|
+
Last reviewed: Not recorded.
|
|
6
|
+
|
|
7
|
+
This file captures repo-wide operating facts that agents should know before
|
|
8
|
+
changing behavior. It is for stable project facts such as stack, source roots,
|
|
9
|
+
commands, verification layers, delivery flow, infrastructure, observability,
|
|
10
|
+
and generated artifacts.
|
|
11
|
+
|
|
12
|
+
Do not put initiative-specific planning here. Use release initiatives under
|
|
13
|
+
`context/releases/` for work-specific behavior, testing, delivery,
|
|
14
|
+
infrastructure, and operations context.
|
|
15
|
+
|
|
16
|
+
## When To Populate Or Refresh
|
|
17
|
+
|
|
18
|
+
Populate or refresh this file when a human explicitly asks for a project
|
|
19
|
+
profile, tech-stack baseline, or repository operating baseline, or when a
|
|
20
|
+
concrete repo-wide fact is discovered during work and would help future
|
|
21
|
+
agents.
|
|
22
|
+
|
|
23
|
+
Record facts that can be traced to source files. Do not guess. If something is
|
|
24
|
+
not known yet, mark it as `Unknown` and include the source paths that still
|
|
25
|
+
need review.
|
|
26
|
+
|
|
27
|
+
## Source Scan Checklist
|
|
28
|
+
|
|
29
|
+
Use this checklist during a baseline pass:
|
|
30
|
+
|
|
31
|
+
- package manifests, lockfiles, language/runtime version files, and build
|
|
32
|
+
config
|
|
33
|
+
- source roots, application boundaries, libraries, services, APIs, jobs, and
|
|
34
|
+
generated artifacts
|
|
35
|
+
- test configuration, e2e tooling, fixtures, seeded data, and test
|
|
36
|
+
environments
|
|
37
|
+
- CI/CD workflows, deployment scripts, release toggles, artifact publishing,
|
|
38
|
+
and environment promotion
|
|
39
|
+
- infrastructure as code, service configuration, secrets references, and
|
|
40
|
+
environment dependencies
|
|
41
|
+
- observability, logs, metrics, traces, alerts, dashboards, support tools,
|
|
42
|
+
rollback, and repair procedures
|
|
43
|
+
|
|
44
|
+
## Repository Shape
|
|
45
|
+
|
|
46
|
+
| Concern | Location | Notes |
|
|
47
|
+
| --- | --- | --- |
|
|
48
|
+
| Application or package code | Unknown | TBD |
|
|
49
|
+
| Tests | Unknown | TBD |
|
|
50
|
+
| CI/CD and delivery | Unknown | TBD |
|
|
51
|
+
| Infrastructure and config | Unknown | TBD |
|
|
52
|
+
| Generated artifacts | Unknown | TBD |
|
|
53
|
+
| Reference material | `reference/` | Release-anchored or baseline behavior. |
|
|
54
|
+
| Working context | `context/` | Plans, initiatives, programs, ADRs, backlog, and release notes. |
|
|
55
|
+
|
|
56
|
+
## Stack And Runtime
|
|
57
|
+
|
|
58
|
+
| Layer | Technology | Source | Notes |
|
|
59
|
+
| --- | --- | --- | --- |
|
|
60
|
+
| Runtime or language | Unknown | TBD | TBD |
|
|
61
|
+
| Package manager | Unknown | TBD | TBD |
|
|
62
|
+
| Frameworks | Unknown | TBD | TBD |
|
|
63
|
+
| Data stores or services | Unknown | TBD | TBD |
|
|
64
|
+
| Hosting or runtime platform | Unknown | TBD | TBD |
|
|
65
|
+
|
|
66
|
+
## Commands
|
|
67
|
+
|
|
68
|
+
| Concern | Command | Source | Notes |
|
|
69
|
+
| --- | --- | --- | --- |
|
|
70
|
+
| Install dependencies | Unknown | TBD | TBD |
|
|
71
|
+
| Run locally | Unknown | TBD | TBD |
|
|
72
|
+
| Build | Unknown | TBD | TBD |
|
|
73
|
+
| Lint, format, or typecheck | Unknown | TBD | TBD |
|
|
74
|
+
| Unit or integration tests | Unknown | TBD | TBD |
|
|
75
|
+
| E2E or smoke tests | Unknown | TBD | TBD |
|
|
76
|
+
| Package or release | Unknown | TBD | TBD |
|
|
77
|
+
|
|
78
|
+
## Verification Profile
|
|
79
|
+
|
|
80
|
+
- Default test expectation: Unknown.
|
|
81
|
+
- Required release gates: Unknown.
|
|
82
|
+
- Manual checks: Unknown.
|
|
83
|
+
- Test data and environment dependencies: Unknown.
|
|
84
|
+
- Known verification gaps: Unknown.
|
|
85
|
+
|
|
86
|
+
Use initiative `testing.md` files for work-specific additions, exceptions, and
|
|
87
|
+
release gates.
|
|
88
|
+
|
|
89
|
+
## Delivery Profile
|
|
90
|
+
|
|
91
|
+
- CI/CD workflow files: Unknown.
|
|
92
|
+
- Deployment entry points: Unknown.
|
|
93
|
+
- Environments and promotion flow: Unknown.
|
|
94
|
+
- Release approvals or gates: Unknown.
|
|
95
|
+
- Artifacts and publishing flow: Unknown.
|
|
96
|
+
- Delivery automation CLIs or scripts: Unknown.
|
|
97
|
+
|
|
98
|
+
Use initiative `delivery.md` files for work-specific pipeline, build,
|
|
99
|
+
deployment, or release changes.
|
|
100
|
+
|
|
101
|
+
## Infrastructure And Configuration
|
|
102
|
+
|
|
103
|
+
- IaC, manifests, or config roots: Unknown.
|
|
104
|
+
- Managed services and resources: Unknown.
|
|
105
|
+
- Secrets and configuration references: Unknown.
|
|
106
|
+
- Environment dependencies: Unknown.
|
|
107
|
+
- Compatibility or migration constraints: Unknown.
|
|
108
|
+
|
|
109
|
+
Use initiative `infrastructure.md` files for work-specific environment or IaC
|
|
110
|
+
changes.
|
|
111
|
+
|
|
112
|
+
## Operations Profile
|
|
113
|
+
|
|
114
|
+
- Logs: Unknown.
|
|
115
|
+
- Metrics, traces, or dashboards: Unknown.
|
|
116
|
+
- Alerts and health checks: Unknown.
|
|
117
|
+
- Support tooling: Unknown.
|
|
118
|
+
- Rollback, recovery, and repair tooling: Unknown.
|
|
119
|
+
|
|
120
|
+
Use initiative `operations.md` files only for actionable runtime, support,
|
|
121
|
+
observability, rollback, or repair concerns tied to a specific change.
|
|
122
|
+
|
|
123
|
+
## Agent Notes
|
|
124
|
+
|
|
125
|
+
- Keep this file factual and source-backed.
|
|
126
|
+
- Prefer commands already defined by the repo over ad hoc alternatives.
|
|
127
|
+
- Mention specific tools only when they affect how agents should verify,
|
|
128
|
+
ship, deploy, observe, or support the project.
|
|
129
|
+
- If a generated file or managed artifact should not be edited directly,
|
|
130
|
+
record that here with the owning source location.
|
package/context/terminology.md
CHANGED
|
@@ -9,8 +9,9 @@ backlog items, ADRs, agent summaries, and release-transition work.
|
|
|
9
9
|
| Term | Meaning |
|
|
10
10
|
| --- | --- |
|
|
11
11
|
| `context/` | Working context: plans, specs, ADRs, implementation notes, delivery-surface context, future scope, and release-documentation notes. |
|
|
12
|
-
| `
|
|
12
|
+
| `reference/` | Accepted reference. It describes shipped or baseline behavior for a release/tag and is not edited during normal development work. |
|
|
13
13
|
| `context/current.md` | Pointer to the current active release context. Updating this is a release transition. |
|
|
14
|
+
| `context/project-profile.md` | Optional repo-wide operating profile for stack, commands, source roots, verification, delivery, infrastructure, observability, and generated artifacts. |
|
|
14
15
|
| `context/releases/<version>/` | Release-scoped working context for one version. |
|
|
15
16
|
| `context/programs/` | Durable multi-release working context. |
|
|
16
17
|
| `context/backlog/items/` | Deferred isolated work cut from initiatives but worth preserving. |
|
|
@@ -44,6 +45,8 @@ scope and should be preserved, but it does not need program-level context.
|
|
|
44
45
|
The structure follows delivery concerns, not technologies. Use concern names
|
|
45
46
|
such as `testing.md`, `delivery.md`, and `infrastructure.md`; name specific
|
|
46
47
|
tools inside those files only when the tools matter.
|
|
48
|
+
Use `project-profile.md` for repo-wide defaults and toolchain facts, then use
|
|
49
|
+
initiative files for work-specific changes and exceptions.
|
|
47
50
|
|
|
48
51
|
Mermaid is the preferred diagram syntax for working context because it is
|
|
49
52
|
both readable Markdown for agents and renderable visual context for humans.
|
|
@@ -51,6 +54,7 @@ both readable Markdown for agents and renderable visual context for humans.
|
|
|
51
54
|
| Term | Meaning |
|
|
52
55
|
| --- | --- |
|
|
53
56
|
| `README.md` | Entry point for a folder. It should explain status, scope, links, and where to start. |
|
|
57
|
+
| `project-profile.md` | Repo-wide operating profile. Populate it on human request or when source-backed facts are discovered during work. |
|
|
54
58
|
| `plan.md` | Working alignment space for humans and agents. It may be messy, but settled truth must move into stable files. |
|
|
55
59
|
| `spec.md` | Stable description of what the system should do. |
|
|
56
60
|
| `interface.md` | Stable description of how humans, clients, APIs, config, reports, or tools interact with the work. |
|
|
@@ -60,7 +64,7 @@ both readable Markdown for agents and renderable visual context for humans.
|
|
|
60
64
|
| `infrastructure.md` | Stable description of environment shape, IaC, resources, networking, identity, storage, secrets, and environment dependencies. |
|
|
61
65
|
| `operations.md` | Optional actionable runtime support context: observability, failure modes, rollback, repair, support procedures, and tooling. |
|
|
62
66
|
| `backlog.md` | Trackable work items for the containing initiative or program. |
|
|
63
|
-
| `release-doc-notes.md` | Notes for future
|
|
67
|
+
| `release-doc-notes.md` | Notes for future reference refresh work. This is the bridge to `reference/`. |
|
|
64
68
|
| ADR | Architecture Decision Record. Use for durable decisions and tradeoffs. |
|
|
65
69
|
| `brief.html` | Optional human-friendly presentation layer. |
|
|
66
70
|
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "code-anchored-context",
|
|
3
|
-
"version": "0.2.
|
|
4
|
-
"description": "Install repo-local agent context, release initiatives, and release-anchored
|
|
3
|
+
"version": "0.2.4",
|
|
4
|
+
"description": "Install repo-local agent context, release initiatives, and release-anchored reference scaffolding into an existing project.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"bin": {
|
|
@@ -15,12 +15,13 @@
|
|
|
15
15
|
"context/_templates/",
|
|
16
16
|
"context/backlog/",
|
|
17
17
|
"context/current.md",
|
|
18
|
+
"context/project-profile.md",
|
|
18
19
|
"context/programs/",
|
|
19
20
|
"context/releases/v0_1_0/README.md",
|
|
20
21
|
"context/releases/v0_1_0/backlog.md",
|
|
21
22
|
"context/releases/v0_1_0/initiatives/.gitkeep",
|
|
22
23
|
"context/terminology.md",
|
|
23
|
-
"
|
|
24
|
+
"reference/",
|
|
24
25
|
"bin/",
|
|
25
26
|
"README.md",
|
|
26
27
|
"LICENSE"
|
|
@@ -37,6 +38,6 @@
|
|
|
37
38
|
"ai",
|
|
38
39
|
"documentation",
|
|
39
40
|
"working-context",
|
|
40
|
-
"
|
|
41
|
+
"reference"
|
|
41
42
|
]
|
|
42
43
|
}
|
|
@@ -1,24 +1,25 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Reference
|
|
2
2
|
|
|
3
|
-
This folder holds release-anchored
|
|
3
|
+
This folder holds release-anchored reference material for PROJECT_NAME.
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
baseline.
|
|
7
|
-
notes, or draft architecture decisions. Put that work in
|
|
5
|
+
Reference describes accepted system behavior for a known release, tag, or
|
|
6
|
+
explicit baseline. It is not the place for in-progress planning,
|
|
7
|
+
implementation notes, or draft architecture decisions. Put that work in
|
|
8
|
+
`context/`.
|
|
8
9
|
|
|
9
10
|
## Start Here
|
|
10
11
|
|
|
11
|
-
- `releases/index.md` records release or baseline
|
|
12
|
-
- `_authoring/README.md` explains how humans and agents should author
|
|
13
|
-
|
|
14
|
-
- `_authoring/workflow.md` defines when
|
|
12
|
+
- `releases/index.md` records release or baseline reference refreshes.
|
|
13
|
+
- `_authoring/README.md` explains how humans and agents should author
|
|
14
|
+
reference material.
|
|
15
|
+
- `_authoring/workflow.md` defines when reference material is refreshed and what
|
|
15
16
|
belongs here.
|
|
16
17
|
- `_authoring/areas/` contains per-area authoring guidance.
|
|
17
18
|
|
|
18
19
|
## Standard Layout
|
|
19
20
|
|
|
20
21
|
```text
|
|
21
|
-
|
|
22
|
+
reference/
|
|
22
23
|
README.md
|
|
23
24
|
releases/
|
|
24
25
|
index.md
|
|
@@ -43,13 +44,13 @@ Every documented area should have:
|
|
|
43
44
|
|
|
44
45
|
- a high-level `README.md` that explains the area's purpose and architecture
|
|
45
46
|
- one page per feature under `features/`
|
|
46
|
-
- an authoring guide under `
|
|
47
|
+
- an authoring guide under `reference/_authoring/areas/`
|
|
47
48
|
|
|
48
49
|
## Contributing
|
|
49
50
|
|
|
50
|
-
- Refresh
|
|
51
|
-
- For existing projects with little or no
|
|
52
|
-
baseline
|
|
51
|
+
- Refresh reference material only when explicitly asked.
|
|
52
|
+
- For existing projects with little or no reference material, create
|
|
53
|
+
baseline reference only when explicitly asked; otherwise document touched
|
|
53
54
|
behavior during future release refreshes.
|
|
54
55
|
- Write for non-developer technical readers unless the project states
|
|
55
56
|
otherwise.
|
|
@@ -58,4 +59,4 @@ Every documented area should have:
|
|
|
58
59
|
- Describe behavior, inputs, outputs, permissions, errors, business rules, and
|
|
59
60
|
operational expectations in domain language.
|
|
60
61
|
- Prefer Mermaid diagrams for flows, architecture, and relationships.
|
|
61
|
-
- Add release refreshes to `
|
|
62
|
+
- Add release refreshes to `reference/releases/index.md`.
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Reference Authoring Guide
|
|
2
2
|
|
|
3
|
-
This subtree owns all guidance for authoring and refreshing the
|
|
4
|
-
under `
|
|
5
|
-
|
|
3
|
+
This subtree owns all guidance for authoring and refreshing the reference
|
|
4
|
+
under `reference/`. Humans and agents both read from here to know how
|
|
5
|
+
reference is structured, when it is refreshed, what belongs in each area,
|
|
6
6
|
and which domain terminology to use.
|
|
7
7
|
|
|
8
8
|
## Start Here
|
|
9
9
|
|
|
10
|
-
- [`workflow.md`](workflow.md) explains how
|
|
10
|
+
- [`workflow.md`](workflow.md) explains how reference is versioned,
|
|
11
11
|
refreshed, and structured.
|
|
12
12
|
- [`terminology.md`](terminology.md) holds project-specific domain language.
|
|
13
13
|
- [`areas/`](areas/) contains one file per documented area, covering feature
|
|
@@ -18,14 +18,14 @@ and which domain terminology to use.
|
|
|
18
18
|
Create one authoring guide per documented area:
|
|
19
19
|
|
|
20
20
|
```text
|
|
21
|
-
|
|
21
|
+
reference/_authoring/areas/<area-slug>.md
|
|
22
22
|
```
|
|
23
23
|
|
|
24
24
|
Each area guide should identify:
|
|
25
25
|
|
|
26
26
|
- the source locations that own the behavior, such as product code,
|
|
27
27
|
interfaces, tests, CI/CD, generated artifacts, infrastructure, or config
|
|
28
|
-
- the
|
|
28
|
+
- the reference root under `reference/`
|
|
29
29
|
- feature pages that should exist
|
|
30
30
|
- behavior that matters at release time
|
|
31
31
|
- changes to ignore, such as pure refactors or test-only edits
|
|
@@ -36,7 +36,7 @@ Use [`areas/_template.md`](areas/_template.md) when adding a new area guide.
|
|
|
36
36
|
## Relationship To `AGENTS.md`
|
|
37
37
|
|
|
38
38
|
Area `AGENTS.md` files may point here, but they should not copy the detailed
|
|
39
|
-
|
|
39
|
+
reference workflow. Keep authoring rules in this subtree so the guidance
|
|
40
40
|
has one source of truth.
|
|
41
41
|
|
|
42
42
|
## Contributing
|
|
@@ -5,10 +5,10 @@ This folder contains one authoring guide per documented area.
|
|
|
5
5
|
Create a guide from `_template.md` when adding a documentation area:
|
|
6
6
|
|
|
7
7
|
```text
|
|
8
|
-
|
|
8
|
+
reference/_authoring/areas/<area-slug>.md
|
|
9
9
|
```
|
|
10
10
|
|
|
11
|
-
Each guide should help a human or agent refresh
|
|
11
|
+
Each guide should help a human or agent refresh reference from a release diff
|
|
12
12
|
without rediscovering the area's structure from scratch.
|
|
13
13
|
|
|
14
14
|
## Current Area Guides
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
- Source orientation: `path/to/runtime-or-product-code`, `path/to/contracts`,
|
|
6
6
|
`path/to/tests`, `path/to/ci-or-delivery`, `path/to/infra-or-config`
|
|
7
|
-
-
|
|
7
|
+
- Reference root: `reference/<Area>/`
|
|
8
8
|
- Owner or reviewer: TBD
|
|
9
9
|
|
|
10
10
|
Describe what this area owns and what it intentionally does not own.
|
|
@@ -18,9 +18,9 @@ operational expectations without private implementation detail.
|
|
|
18
18
|
|
|
19
19
|
## Feature Inventory
|
|
20
20
|
|
|
21
|
-
| Feature |
|
|
21
|
+
| Feature | Reference page | Notes |
|
|
22
22
|
| --- | --- | --- |
|
|
23
|
-
| TBD | `
|
|
23
|
+
| TBD | `reference/<Area>/features/<feature>.md` | TBD |
|
|
24
24
|
|
|
25
25
|
## What Matters At Release Time
|
|
26
26
|
|
|
@@ -57,9 +57,9 @@ known gaps, and questions that should not yet appear in product-facing docs.
|
|
|
57
57
|
|
|
58
58
|
## Terminology
|
|
59
59
|
|
|
60
|
-
List area-specific terms or link to `
|
|
60
|
+
List area-specific terms or link to `reference/_authoring/terminology.md`.
|
|
61
61
|
|
|
62
62
|
## Cross-Links
|
|
63
63
|
|
|
64
|
-
List related areas and when
|
|
64
|
+
List related areas and when reference should cross-link instead of duplicating
|
|
65
65
|
behavior.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Use this file to define the domain language that documentation should use.
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
Reference should translate code-level names into reader-facing domain
|
|
6
6
|
terms when those differ. The goal is consistency for QA, product, support,
|
|
7
7
|
operators, and future agents.
|
|
8
8
|
|
|
@@ -1,86 +1,90 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Reference Workflow
|
|
2
2
|
|
|
3
|
-
This file defines how
|
|
3
|
+
This file defines how reference material is versioned, refreshed, and structured
|
|
4
4
|
across the repo. It applies to all documented areas; area-specific guidance
|
|
5
5
|
lives in [`areas/`](areas/).
|
|
6
6
|
|
|
7
|
-
## When
|
|
7
|
+
## When Reference Gets Edited
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
work. Humans or agents touch `
|
|
9
|
+
Reference refresh is an explicit, on-request activity, not a side effect of
|
|
10
|
+
code work. Humans or agents touch `reference/` only when:
|
|
11
11
|
|
|
12
12
|
- A human explicitly asks for a release-time refresh, typically after the
|
|
13
13
|
release tag is cut and QA has signed off.
|
|
14
|
-
- A human explicitly asks for baseline
|
|
15
|
-
|
|
14
|
+
- A human explicitly asks for baseline reference for an existing project, such
|
|
15
|
+
as "document this repo baseline" or "create initial reference for the current
|
|
16
16
|
system."
|
|
17
17
|
- A human explicitly asks to update a specific page.
|
|
18
18
|
- A human asks to fix a demonstrable error in an existing page, such as a
|
|
19
19
|
broken link or factual inaccuracy.
|
|
20
20
|
|
|
21
|
-
Do not update
|
|
21
|
+
Do not update reference as part of a feature PR, bug fix, refactor, or
|
|
22
22
|
dependency bump. Mid-stream commits are partial work; "feature complete" is only
|
|
23
23
|
well-defined once the release is accepted.
|
|
24
24
|
|
|
25
|
-
Agents: if you are working on a code change and notice
|
|
25
|
+
Agents: if you are working on a code change and notice reference material that looks
|
|
26
26
|
outdated, leave it alone. Flag the staleness in your summary or add it to the
|
|
27
|
-
initiative's `release-doc-notes.md`, but do not edit the
|
|
28
|
-
current change unless explicitly asked.
|
|
27
|
+
initiative's `release-doc-notes.md`, but do not edit the reference material as
|
|
28
|
+
part of the current change unless explicitly asked.
|
|
29
29
|
|
|
30
|
-
##
|
|
30
|
+
## Reference Modes
|
|
31
31
|
|
|
32
|
-
There are two valid ways to introduce or maintain `
|
|
32
|
+
There are two valid ways to introduce or maintain `reference/`.
|
|
33
33
|
|
|
34
|
-
### Baseline
|
|
34
|
+
### Baseline Reference
|
|
35
35
|
|
|
36
36
|
Use this mode only when a human explicitly asks to document the current system
|
|
37
37
|
as a starting point. This is common when adopting the template in an existing
|
|
38
|
-
project that has little or no
|
|
38
|
+
project that has little or no reference material.
|
|
39
39
|
|
|
40
40
|
When creating a baseline:
|
|
41
41
|
|
|
42
42
|
1. Confirm the scope: whole repo, one product area, one feature family, or one
|
|
43
43
|
operational surface.
|
|
44
44
|
2. Create or update the matching area guide under
|
|
45
|
-
`
|
|
45
|
+
`reference/_authoring/areas/` before writing reference pages.
|
|
46
46
|
3. Document stable, currently accepted behavior from the current branch,
|
|
47
47
|
current tag, or explicit reference point named by the human.
|
|
48
48
|
4. Prefer broad, accurate coverage over exhaustive implementation detail.
|
|
49
|
-
5. Record the baseline reference in `
|
|
49
|
+
5. Record the baseline reference in `reference/releases/index.md`. If
|
|
50
50
|
there is no release tag yet, use the commit, branch, date, or human-named
|
|
51
51
|
baseline label that was used as the source.
|
|
52
|
-
6. Leave uncertain or future behavior out of `
|
|
52
|
+
6. Leave uncertain or future behavior out of `reference/`. Capture open
|
|
53
53
|
questions in `context/` or in the area authoring guide.
|
|
54
54
|
|
|
55
|
-
Baseline
|
|
55
|
+
Baseline reference is a snapshot of the system as adopted; it is not a
|
|
56
56
|
promise that every undocumented behavior is unimportant.
|
|
57
57
|
|
|
58
|
-
|
|
58
|
+
This is different from `context/project-profile.md`, which captures the
|
|
59
|
+
repo-wide operating profile: stack, commands, verification, delivery,
|
|
60
|
+
infrastructure, observability, and generated-artifact facts.
|
|
61
|
+
|
|
62
|
+
### Release-Forward Reference
|
|
59
63
|
|
|
60
64
|
Use this mode when the team chooses not to create a full baseline. In this
|
|
61
|
-
mode, `
|
|
62
|
-
|
|
63
|
-
|
|
65
|
+
mode, `reference/` may start sparse. Agents capture reference impact in
|
|
66
|
+
initiative `release-doc-notes.md` during development, then update reference
|
|
67
|
+
only at explicit release-refresh time.
|
|
64
68
|
|
|
65
|
-
This is valid when a full baseline would be too expensive. The
|
|
69
|
+
This is valid when a full baseline would be too expensive. The reference
|
|
66
70
|
becomes complete incrementally around behavior the team changes and releases.
|
|
67
71
|
|
|
68
72
|
## Cadence And Versioning
|
|
69
73
|
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
+
Reference lives under `reference/`. After any explicit baseline pass, it is
|
|
75
|
+
refreshed once per release, at git-tag time, after release acceptance.
|
|
76
|
+
Reference is anchored to the release tag; reference at tag `release/v1_2_3`
|
|
77
|
+
describes the behavior of that release.
|
|
74
78
|
|
|
75
79
|
Default tag names follow the convention `release/vMAJOR_MINOR_PATCH` and match
|
|
76
80
|
the release branch name. If a project uses a different release convention,
|
|
77
81
|
document it here before the first refresh. If the first documentation pass is
|
|
78
82
|
a baseline without a tag, record the baseline reference in
|
|
79
|
-
`
|
|
83
|
+
`reference/releases/index.md`.
|
|
80
84
|
|
|
81
85
|
## Audience
|
|
82
86
|
|
|
83
|
-
|
|
87
|
+
Reference is written for non-developer technical readers by default: QA,
|
|
84
88
|
product owners, solution owners, support engineers, customer engineers, or
|
|
85
89
|
operators. Adjust this only when the project explicitly defines a different
|
|
86
90
|
audience.
|
|
@@ -89,7 +93,7 @@ audience.
|
|
|
89
93
|
business rules in domain language.
|
|
90
94
|
- Avoid code snippets, private type names, SQL, and framework jargon unless
|
|
91
95
|
the concept has no plain-language equivalent.
|
|
92
|
-
- For readers who need more depth than the
|
|
96
|
+
- For readers who need more depth than the reference provides, link to the
|
|
93
97
|
source rather than replicating the implementation in prose.
|
|
94
98
|
|
|
95
99
|
## Writing Focus
|
|
@@ -101,10 +105,10 @@ or business process can observe. Add technical detail only when it affects
|
|
|
101
105
|
released behavior, configuration, permissions, data, integrations, errors,
|
|
102
106
|
support, operations, or auditability.
|
|
103
107
|
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
notes
|
|
107
|
-
|
|
108
|
+
Reference should be product-readable first and technically anchored second. It
|
|
109
|
+
can feed release notes, but it is more durable than release notes: release
|
|
110
|
+
notes summarize what changed, while `reference/` describes what the accepted
|
|
111
|
+
system does as of a release or baseline.
|
|
108
112
|
|
|
109
113
|
Use progressive depth:
|
|
110
114
|
|
|
@@ -128,7 +132,7 @@ Every documented area has two layers:
|
|
|
128
132
|
Standard per-area layout:
|
|
129
133
|
|
|
130
134
|
```text
|
|
131
|
-
|
|
135
|
+
reference/<Area>/
|
|
132
136
|
README.md
|
|
133
137
|
features/
|
|
134
138
|
<feature>.md
|
|
@@ -159,29 +163,29 @@ Preferred diagram types:
|
|
|
159
163
|
Keep diagrams small enough to read. If a diagram needs more than about 15 nodes
|
|
160
164
|
or steps, simplify it or split it.
|
|
161
165
|
|
|
162
|
-
## Feature
|
|
166
|
+
## Feature Reference Covers The Full Vertical
|
|
163
167
|
|
|
164
|
-
A feature
|
|
168
|
+
A feature reference page should describe the full behavior path the feature touches:
|
|
165
169
|
entry point, important services or processes, data stored or read, external
|
|
166
170
|
systems, permissions, validation, errors, and operational expectations.
|
|
167
171
|
|
|
168
|
-
If a feature spans multiple areas, place the
|
|
172
|
+
If a feature spans multiple areas, place the page in the area that owns the
|
|
169
173
|
user-facing or operator-facing entry point. Cross-link from the other areas.
|
|
170
174
|
|
|
171
|
-
## Release-Time
|
|
175
|
+
## Release-Time Reference Refresh
|
|
172
176
|
|
|
173
|
-
When invoked to refresh
|
|
177
|
+
When invoked to refresh reference for a release:
|
|
174
178
|
|
|
175
179
|
1. Work from the diff `<previous-release-tag>..HEAD`, scoped to one area at a
|
|
176
180
|
time.
|
|
177
|
-
2. Read the matching area guide in `
|
|
181
|
+
2. Read the matching area guide in `reference/_authoring/areas/`.
|
|
178
182
|
3. Read relevant initiative `release-doc-notes.md` files under
|
|
179
183
|
`context/releases/<release>/initiatives/`.
|
|
180
184
|
4. Update the area's `README.md` if the high-level picture changed.
|
|
181
185
|
5. Update feature pages for behavior that changed.
|
|
182
186
|
6. Ignore pure refactors, internal renames, test-only changes, formatting,
|
|
183
187
|
lint fixes, and dependency bumps with no behavior change.
|
|
184
|
-
7. Append one row to `
|
|
188
|
+
7. Append one row to `reference/releases/index.md`.
|
|
185
189
|
|
|
186
190
|
## Source Order
|
|
187
191
|
|
|
@@ -190,12 +194,12 @@ source inspection:
|
|
|
190
194
|
|
|
191
195
|
1. Previous release tag to current release diff.
|
|
192
196
|
2. Relevant initiative `release-doc-notes.md` files.
|
|
193
|
-
3. Matching area guide under `
|
|
194
|
-
4. Existing
|
|
197
|
+
3. Matching area guide under `reference/_authoring/areas/`.
|
|
198
|
+
4. Existing reference.
|
|
195
199
|
5. Source code, tests, config, CI/CD, infrastructure, and generated artifacts
|
|
196
200
|
only as needed to verify shipped behavior.
|
|
197
201
|
|
|
198
|
-
For baseline
|
|
202
|
+
For baseline reference, start from the explicit baseline scope and
|
|
199
203
|
reference point named by the human. If no reference is named, use the current
|
|
200
204
|
working tree and say so in the release index row.
|
|
201
205
|
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Reference Release Index
|
|
2
2
|
|
|
3
3
|
One row per tagged release. Tag names default to `release/vMAJOR_MINOR_PATCH`
|
|
4
4
|
unless the project documents a different convention.
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
Reference at a given tag describes the behavior of that release.
|
|
7
7
|
|
|
8
8
|
| Tag | Date | Areas refreshed | Owner | Summary |
|
|
9
9
|
| --- | --- | --- | --- | --- |
|
|
File without changes
|
|
File without changes
|