code-anchored-context 0.2.0 → 0.2.2
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 +5 -5
- package/AGENTS.md +12 -11
- package/README.md +7 -7
- package/bin/code-anchored-context.js +11 -10
- package/context/AGENTS.md +2 -2
- package/context/README.md +5 -9
- package/context/_templates/initiative/README.md +2 -2
- package/context/_templates/initiative/release-doc-notes.md +5 -6
- package/context/_templates/planned-initiative/README.md +1 -1
- package/context/_templates/planned-initiative/release-doc-notes.md +4 -5
- package/context/terminology.md +2 -2
- package/package.json +5 -9
- package/product-docs/README.md +61 -0
- package/{docs → product-docs}/_authoring/README.md +6 -6
- package/{docs → product-docs}/_authoring/areas/README.md +2 -2
- package/{docs → product-docs}/_authoring/areas/_template.md +5 -5
- package/{docs → product-docs}/_authoring/terminology.md +1 -1
- package/{docs → product-docs}/_authoring/workflow.md +36 -35
- package/{docs → product-docs}/releases/index.md +2 -2
- package/context/code-anchored-context-structure.md +0 -133
- package/context/code-anchored-context-why.md +0 -80
- package/context/code-anchored-context.html +0 -830
- package/context/giving-ai-agents-context-around-code.md +0 -496
- package/docs/.order +0 -2
- package/docs/Welcome.md +0 -48
- /package/{docs → product-docs}/_templates/area/README.md +0 -0
- /package/{docs → product-docs}/_templates/area/features/feature-template.md +0 -0
|
@@ -1,830 +0,0 @@
|
|
|
1
|
-
<!doctype html>
|
|
2
|
-
<html lang="en">
|
|
3
|
-
<head>
|
|
4
|
-
<meta charset="utf-8">
|
|
5
|
-
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
6
|
-
<title>Code-Anchored Context</title>
|
|
7
|
-
<style>
|
|
8
|
-
:root {
|
|
9
|
-
color-scheme: light;
|
|
10
|
-
--ink: #17212b;
|
|
11
|
-
--muted: #52616f;
|
|
12
|
-
--line: #d6dde5;
|
|
13
|
-
--soft: #f5f7fa;
|
|
14
|
-
--panel: #ffffff;
|
|
15
|
-
--blue: #155e75;
|
|
16
|
-
--green: #2f6f4e;
|
|
17
|
-
--gold: #8a5a12;
|
|
18
|
-
--red: #9f3a38;
|
|
19
|
-
--violet: #6750a4;
|
|
20
|
-
--cyan-soft: #e8f5f8;
|
|
21
|
-
--green-soft: #ebf6ef;
|
|
22
|
-
--gold-soft: #fff4dc;
|
|
23
|
-
--red-soft: #fff0ef;
|
|
24
|
-
--violet-soft: #f2effb;
|
|
25
|
-
--shadow: 0 10px 25px rgba(23, 33, 43, 0.08);
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
* {
|
|
29
|
-
box-sizing: border-box;
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
html {
|
|
33
|
-
scroll-behavior: smooth;
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
body {
|
|
37
|
-
margin: 0;
|
|
38
|
-
font-family: "Segoe UI", Arial, sans-serif;
|
|
39
|
-
font-size: 16px;
|
|
40
|
-
line-height: 1.55;
|
|
41
|
-
color: var(--ink);
|
|
42
|
-
background: #ffffff;
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
a {
|
|
46
|
-
color: var(--blue);
|
|
47
|
-
text-decoration-thickness: 1px;
|
|
48
|
-
text-underline-offset: 3px;
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
code {
|
|
52
|
-
padding: 0.12rem 0.28rem;
|
|
53
|
-
border-radius: 4px;
|
|
54
|
-
background: #edf1f5;
|
|
55
|
-
font-family: Consolas, "Courier New", monospace;
|
|
56
|
-
font-size: 0.92em;
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
header {
|
|
60
|
-
border-bottom: 1px solid var(--line);
|
|
61
|
-
background:
|
|
62
|
-
linear-gradient(135deg, rgba(21, 94, 117, 0.08), rgba(47, 111, 78, 0.08)),
|
|
63
|
-
#ffffff;
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
.wrap {
|
|
67
|
-
width: min(1120px, calc(100% - 32px));
|
|
68
|
-
margin: 0 auto;
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
.hero {
|
|
72
|
-
display: grid;
|
|
73
|
-
grid-template-columns: minmax(0, 1fr) minmax(280px, 420px);
|
|
74
|
-
gap: 32px;
|
|
75
|
-
align-items: center;
|
|
76
|
-
padding: 48px 0 36px;
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
.eyebrow {
|
|
80
|
-
margin: 0 0 8px;
|
|
81
|
-
color: var(--blue);
|
|
82
|
-
font-weight: 700;
|
|
83
|
-
text-transform: uppercase;
|
|
84
|
-
font-size: 0.78rem;
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
h1 {
|
|
88
|
-
margin: 0;
|
|
89
|
-
font-size: 2.35rem;
|
|
90
|
-
line-height: 1.12;
|
|
91
|
-
font-weight: 760;
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
.lead {
|
|
95
|
-
margin: 18px 0 0;
|
|
96
|
-
max-width: 720px;
|
|
97
|
-
color: var(--muted);
|
|
98
|
-
font-size: 1.08rem;
|
|
99
|
-
}
|
|
100
|
-
|
|
101
|
-
.quick-links {
|
|
102
|
-
display: flex;
|
|
103
|
-
flex-wrap: wrap;
|
|
104
|
-
gap: 10px;
|
|
105
|
-
margin-top: 24px;
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
.quick-links a {
|
|
109
|
-
display: inline-flex;
|
|
110
|
-
align-items: center;
|
|
111
|
-
min-height: 36px;
|
|
112
|
-
padding: 6px 12px;
|
|
113
|
-
border: 1px solid var(--line);
|
|
114
|
-
border-radius: 6px;
|
|
115
|
-
background: #ffffff;
|
|
116
|
-
color: var(--ink);
|
|
117
|
-
text-decoration: none;
|
|
118
|
-
font-weight: 600;
|
|
119
|
-
}
|
|
120
|
-
|
|
121
|
-
.quick-links a:hover {
|
|
122
|
-
border-color: var(--blue);
|
|
123
|
-
color: var(--blue);
|
|
124
|
-
}
|
|
125
|
-
|
|
126
|
-
.map {
|
|
127
|
-
border: 1px solid var(--line);
|
|
128
|
-
border-radius: 8px;
|
|
129
|
-
background: var(--panel);
|
|
130
|
-
box-shadow: var(--shadow);
|
|
131
|
-
padding: 16px;
|
|
132
|
-
}
|
|
133
|
-
|
|
134
|
-
.map-title {
|
|
135
|
-
margin: 0 0 12px;
|
|
136
|
-
font-weight: 720;
|
|
137
|
-
}
|
|
138
|
-
|
|
139
|
-
.stack {
|
|
140
|
-
display: grid;
|
|
141
|
-
gap: 10px;
|
|
142
|
-
}
|
|
143
|
-
|
|
144
|
-
.node {
|
|
145
|
-
border: 1px solid var(--line);
|
|
146
|
-
border-left-width: 5px;
|
|
147
|
-
border-radius: 6px;
|
|
148
|
-
padding: 10px 12px;
|
|
149
|
-
background: #ffffff;
|
|
150
|
-
}
|
|
151
|
-
|
|
152
|
-
.node strong {
|
|
153
|
-
display: block;
|
|
154
|
-
margin-bottom: 2px;
|
|
155
|
-
}
|
|
156
|
-
|
|
157
|
-
.node span {
|
|
158
|
-
display: block;
|
|
159
|
-
color: var(--muted);
|
|
160
|
-
font-size: 0.9rem;
|
|
161
|
-
}
|
|
162
|
-
|
|
163
|
-
.node.program {
|
|
164
|
-
border-left-color: var(--violet);
|
|
165
|
-
background: var(--violet-soft);
|
|
166
|
-
}
|
|
167
|
-
|
|
168
|
-
.node.planned {
|
|
169
|
-
border-left-color: var(--gold);
|
|
170
|
-
background: var(--gold-soft);
|
|
171
|
-
}
|
|
172
|
-
|
|
173
|
-
.node.release {
|
|
174
|
-
border-left-color: var(--green);
|
|
175
|
-
background: var(--green-soft);
|
|
176
|
-
}
|
|
177
|
-
|
|
178
|
-
.node.backlog {
|
|
179
|
-
border-left-color: var(--red);
|
|
180
|
-
background: var(--red-soft);
|
|
181
|
-
}
|
|
182
|
-
|
|
183
|
-
.connector {
|
|
184
|
-
text-align: center;
|
|
185
|
-
color: var(--muted);
|
|
186
|
-
font-weight: 700;
|
|
187
|
-
line-height: 1;
|
|
188
|
-
}
|
|
189
|
-
|
|
190
|
-
nav {
|
|
191
|
-
position: sticky;
|
|
192
|
-
top: 0;
|
|
193
|
-
z-index: 10;
|
|
194
|
-
border-bottom: 1px solid var(--line);
|
|
195
|
-
background: rgba(255, 255, 255, 0.95);
|
|
196
|
-
backdrop-filter: blur(8px);
|
|
197
|
-
}
|
|
198
|
-
|
|
199
|
-
nav .wrap {
|
|
200
|
-
display: flex;
|
|
201
|
-
gap: 8px;
|
|
202
|
-
overflow-x: auto;
|
|
203
|
-
padding: 10px 0;
|
|
204
|
-
}
|
|
205
|
-
|
|
206
|
-
nav a {
|
|
207
|
-
flex: 0 0 auto;
|
|
208
|
-
padding: 6px 10px;
|
|
209
|
-
border-radius: 5px;
|
|
210
|
-
color: var(--muted);
|
|
211
|
-
text-decoration: none;
|
|
212
|
-
font-weight: 650;
|
|
213
|
-
font-size: 0.92rem;
|
|
214
|
-
}
|
|
215
|
-
|
|
216
|
-
nav a:hover {
|
|
217
|
-
background: var(--soft);
|
|
218
|
-
color: var(--ink);
|
|
219
|
-
}
|
|
220
|
-
|
|
221
|
-
main {
|
|
222
|
-
padding: 28px 0 64px;
|
|
223
|
-
}
|
|
224
|
-
|
|
225
|
-
section {
|
|
226
|
-
padding: 32px 0;
|
|
227
|
-
border-bottom: 1px solid var(--line);
|
|
228
|
-
}
|
|
229
|
-
|
|
230
|
-
section:last-child {
|
|
231
|
-
border-bottom: 0;
|
|
232
|
-
}
|
|
233
|
-
|
|
234
|
-
h2 {
|
|
235
|
-
margin: 0 0 12px;
|
|
236
|
-
font-size: 1.55rem;
|
|
237
|
-
line-height: 1.2;
|
|
238
|
-
}
|
|
239
|
-
|
|
240
|
-
h3 {
|
|
241
|
-
margin: 0 0 8px;
|
|
242
|
-
font-size: 1.05rem;
|
|
243
|
-
}
|
|
244
|
-
|
|
245
|
-
.section-intro {
|
|
246
|
-
max-width: 820px;
|
|
247
|
-
margin: 0 0 20px;
|
|
248
|
-
color: var(--muted);
|
|
249
|
-
}
|
|
250
|
-
|
|
251
|
-
.grid {
|
|
252
|
-
display: grid;
|
|
253
|
-
gap: 16px;
|
|
254
|
-
}
|
|
255
|
-
|
|
256
|
-
.grid.two {
|
|
257
|
-
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
258
|
-
}
|
|
259
|
-
|
|
260
|
-
.grid.three {
|
|
261
|
-
grid-template-columns: repeat(3, minmax(0, 1fr));
|
|
262
|
-
}
|
|
263
|
-
|
|
264
|
-
.grid.four {
|
|
265
|
-
grid-template-columns: repeat(4, minmax(0, 1fr));
|
|
266
|
-
}
|
|
267
|
-
|
|
268
|
-
.tile {
|
|
269
|
-
min-height: 100%;
|
|
270
|
-
border: 1px solid var(--line);
|
|
271
|
-
border-radius: 8px;
|
|
272
|
-
background: var(--panel);
|
|
273
|
-
padding: 16px;
|
|
274
|
-
}
|
|
275
|
-
|
|
276
|
-
.tile p {
|
|
277
|
-
margin: 0;
|
|
278
|
-
color: var(--muted);
|
|
279
|
-
}
|
|
280
|
-
|
|
281
|
-
.tile .path {
|
|
282
|
-
display: block;
|
|
283
|
-
margin-top: 12px;
|
|
284
|
-
color: var(--ink);
|
|
285
|
-
overflow-wrap: anywhere;
|
|
286
|
-
}
|
|
287
|
-
|
|
288
|
-
.accent-program {
|
|
289
|
-
border-top: 4px solid var(--violet);
|
|
290
|
-
}
|
|
291
|
-
|
|
292
|
-
.accent-planned {
|
|
293
|
-
border-top: 4px solid var(--gold);
|
|
294
|
-
}
|
|
295
|
-
|
|
296
|
-
.accent-release {
|
|
297
|
-
border-top: 4px solid var(--green);
|
|
298
|
-
}
|
|
299
|
-
|
|
300
|
-
.accent-backlog {
|
|
301
|
-
border-top: 4px solid var(--red);
|
|
302
|
-
}
|
|
303
|
-
|
|
304
|
-
.decision {
|
|
305
|
-
display: grid;
|
|
306
|
-
grid-template-columns: 220px minmax(0, 1fr) 240px;
|
|
307
|
-
border: 1px solid var(--line);
|
|
308
|
-
border-radius: 8px;
|
|
309
|
-
overflow: hidden;
|
|
310
|
-
background: #ffffff;
|
|
311
|
-
}
|
|
312
|
-
|
|
313
|
-
.decision + .decision {
|
|
314
|
-
margin-top: 10px;
|
|
315
|
-
}
|
|
316
|
-
|
|
317
|
-
.decision div {
|
|
318
|
-
padding: 12px 14px;
|
|
319
|
-
border-right: 1px solid var(--line);
|
|
320
|
-
min-width: 0;
|
|
321
|
-
}
|
|
322
|
-
|
|
323
|
-
.decision div:last-child {
|
|
324
|
-
border-right: 0;
|
|
325
|
-
}
|
|
326
|
-
|
|
327
|
-
.decision .question {
|
|
328
|
-
font-weight: 720;
|
|
329
|
-
background: var(--soft);
|
|
330
|
-
}
|
|
331
|
-
|
|
332
|
-
.decision .answer {
|
|
333
|
-
color: var(--muted);
|
|
334
|
-
}
|
|
335
|
-
|
|
336
|
-
.decision .target {
|
|
337
|
-
color: var(--ink);
|
|
338
|
-
overflow-wrap: anywhere;
|
|
339
|
-
}
|
|
340
|
-
|
|
341
|
-
.timeline {
|
|
342
|
-
display: grid;
|
|
343
|
-
grid-template-columns: repeat(5, minmax(0, 1fr));
|
|
344
|
-
gap: 10px;
|
|
345
|
-
align-items: stretch;
|
|
346
|
-
}
|
|
347
|
-
|
|
348
|
-
.step {
|
|
349
|
-
position: relative;
|
|
350
|
-
border: 1px solid var(--line);
|
|
351
|
-
border-radius: 8px;
|
|
352
|
-
padding: 14px;
|
|
353
|
-
background: #ffffff;
|
|
354
|
-
min-height: 150px;
|
|
355
|
-
}
|
|
356
|
-
|
|
357
|
-
.step-number {
|
|
358
|
-
display: inline-flex;
|
|
359
|
-
align-items: center;
|
|
360
|
-
justify-content: center;
|
|
361
|
-
width: 28px;
|
|
362
|
-
height: 28px;
|
|
363
|
-
margin-bottom: 10px;
|
|
364
|
-
border-radius: 50%;
|
|
365
|
-
background: var(--blue);
|
|
366
|
-
color: #ffffff;
|
|
367
|
-
font-weight: 750;
|
|
368
|
-
font-size: 0.88rem;
|
|
369
|
-
}
|
|
370
|
-
|
|
371
|
-
.step p {
|
|
372
|
-
margin: 0;
|
|
373
|
-
color: var(--muted);
|
|
374
|
-
}
|
|
375
|
-
|
|
376
|
-
.matrix {
|
|
377
|
-
width: 100%;
|
|
378
|
-
border-collapse: collapse;
|
|
379
|
-
border: 1px solid var(--line);
|
|
380
|
-
background: #ffffff;
|
|
381
|
-
}
|
|
382
|
-
|
|
383
|
-
.matrix th,
|
|
384
|
-
.matrix td {
|
|
385
|
-
padding: 12px;
|
|
386
|
-
border: 1px solid var(--line);
|
|
387
|
-
text-align: left;
|
|
388
|
-
vertical-align: top;
|
|
389
|
-
}
|
|
390
|
-
|
|
391
|
-
.matrix th {
|
|
392
|
-
background: var(--soft);
|
|
393
|
-
}
|
|
394
|
-
|
|
395
|
-
.note {
|
|
396
|
-
border-left: 5px solid var(--blue);
|
|
397
|
-
background: var(--cyan-soft);
|
|
398
|
-
padding: 14px 16px;
|
|
399
|
-
border-radius: 6px;
|
|
400
|
-
color: var(--ink);
|
|
401
|
-
}
|
|
402
|
-
|
|
403
|
-
.note p {
|
|
404
|
-
margin: 0;
|
|
405
|
-
}
|
|
406
|
-
|
|
407
|
-
footer {
|
|
408
|
-
padding: 28px 0 40px;
|
|
409
|
-
color: var(--muted);
|
|
410
|
-
background: var(--soft);
|
|
411
|
-
}
|
|
412
|
-
|
|
413
|
-
@media (max-width: 920px) {
|
|
414
|
-
.hero,
|
|
415
|
-
.grid.two,
|
|
416
|
-
.grid.three,
|
|
417
|
-
.grid.four,
|
|
418
|
-
.timeline {
|
|
419
|
-
grid-template-columns: 1fr;
|
|
420
|
-
}
|
|
421
|
-
|
|
422
|
-
.decision {
|
|
423
|
-
grid-template-columns: 1fr;
|
|
424
|
-
}
|
|
425
|
-
|
|
426
|
-
.decision div {
|
|
427
|
-
border-right: 0;
|
|
428
|
-
border-bottom: 1px solid var(--line);
|
|
429
|
-
}
|
|
430
|
-
|
|
431
|
-
.decision div:last-child {
|
|
432
|
-
border-bottom: 0;
|
|
433
|
-
}
|
|
434
|
-
}
|
|
435
|
-
|
|
436
|
-
@media print {
|
|
437
|
-
nav {
|
|
438
|
-
position: static;
|
|
439
|
-
}
|
|
440
|
-
|
|
441
|
-
.quick-links {
|
|
442
|
-
display: none;
|
|
443
|
-
}
|
|
444
|
-
|
|
445
|
-
body {
|
|
446
|
-
background: #ffffff;
|
|
447
|
-
}
|
|
448
|
-
|
|
449
|
-
section {
|
|
450
|
-
break-inside: avoid;
|
|
451
|
-
}
|
|
452
|
-
}
|
|
453
|
-
</style>
|
|
454
|
-
</head>
|
|
455
|
-
<body>
|
|
456
|
-
<header>
|
|
457
|
-
<div class="wrap hero">
|
|
458
|
-
<div>
|
|
459
|
-
<p class="eyebrow">Code-Anchored Context</p>
|
|
460
|
-
<h1>How humans and agents keep planning context useful over time</h1>
|
|
461
|
-
<p class="lead">
|
|
462
|
-
This brief explains where active work, future phases, durable program
|
|
463
|
-
context, deferred scope, delivery-surface context, and release
|
|
464
|
-
documentation notes belong.
|
|
465
|
-
</p>
|
|
466
|
-
<div class="quick-links" aria-label="Primary links">
|
|
467
|
-
<a href="README.md">Context README</a>
|
|
468
|
-
<a href="terminology.md">Terminology</a>
|
|
469
|
-
<a href="current.md">Current Release</a>
|
|
470
|
-
<a href="_templates/release-transition.md">Release Transition</a>
|
|
471
|
-
</div>
|
|
472
|
-
</div>
|
|
473
|
-
|
|
474
|
-
<aside class="map" aria-label="Context map">
|
|
475
|
-
<p class="map-title">Container model</p>
|
|
476
|
-
<div class="stack">
|
|
477
|
-
<div class="node program">
|
|
478
|
-
<strong>Program</strong>
|
|
479
|
-
<span>Cross-release parent effort</span>
|
|
480
|
-
</div>
|
|
481
|
-
<div class="connector">down</div>
|
|
482
|
-
<div class="node planned">
|
|
483
|
-
<strong>Planned initiative</strong>
|
|
484
|
-
<span>Scoped future child of a program</span>
|
|
485
|
-
</div>
|
|
486
|
-
<div class="connector">promotes to</div>
|
|
487
|
-
<div class="node release">
|
|
488
|
-
<strong>Release initiative</strong>
|
|
489
|
-
<span>Active or historical delivery slice</span>
|
|
490
|
-
</div>
|
|
491
|
-
<div class="connector">or defer to</div>
|
|
492
|
-
<div class="node backlog">
|
|
493
|
-
<strong>Context backlog item</strong>
|
|
494
|
-
<span>Isolated cut scope saved for later</span>
|
|
495
|
-
</div>
|
|
496
|
-
</div>
|
|
497
|
-
</aside>
|
|
498
|
-
</div>
|
|
499
|
-
</header>
|
|
500
|
-
|
|
501
|
-
<nav aria-label="Page sections">
|
|
502
|
-
<div class="wrap">
|
|
503
|
-
<a href="#why">Why</a>
|
|
504
|
-
<a href="#containers">Containers</a>
|
|
505
|
-
<a href="#decision-guide">Decision Guide</a>
|
|
506
|
-
<a href="#lifecycle">Lifecycle</a>
|
|
507
|
-
<a href="#delivery-surface">Delivery Surface</a>
|
|
508
|
-
<a href="#files">Files</a>
|
|
509
|
-
<a href="#release-transition">Release Transition</a>
|
|
510
|
-
<a href="#navigation">Navigation</a>
|
|
511
|
-
</div>
|
|
512
|
-
</nav>
|
|
513
|
-
|
|
514
|
-
<main class="wrap">
|
|
515
|
-
<section id="why">
|
|
516
|
-
<h2>Why This Exists</h2>
|
|
517
|
-
<p class="section-intro">
|
|
518
|
-
<code>docs/</code> is released product truth.
|
|
519
|
-
<code>context/</code> is working development truth. Code-Anchored
|
|
520
|
-
Context keeps agent context, planning, and decisions visible without
|
|
521
|
-
mixing in-progress thinking into released product documentation.
|
|
522
|
-
</p>
|
|
523
|
-
<div class="grid two">
|
|
524
|
-
<div class="tile accent-release">
|
|
525
|
-
<h3>Use <code>context/</code> while work is forming</h3>
|
|
526
|
-
<p>
|
|
527
|
-
Put plans, specs, ADRs, backlog, implementation context, future
|
|
528
|
-
phases, and release-doc notes here during normal development.
|
|
529
|
-
</p>
|
|
530
|
-
</div>
|
|
531
|
-
<div class="tile accent-program">
|
|
532
|
-
<h3>Use <code>docs/</code> only for shipped product docs</h3>
|
|
533
|
-
<p>
|
|
534
|
-
Product documentation remains release anchored. Working context
|
|
535
|
-
can feed it later through <code>release-doc-notes.md</code>.
|
|
536
|
-
</p>
|
|
537
|
-
</div>
|
|
538
|
-
</div>
|
|
539
|
-
</section>
|
|
540
|
-
|
|
541
|
-
<section id="containers">
|
|
542
|
-
<h2>The Four Work Containers</h2>
|
|
543
|
-
<p class="section-intro">
|
|
544
|
-
The core rule is simple: put knowledge where its lifetime matches the
|
|
545
|
-
work. Do not duplicate active plans into area-local folders.
|
|
546
|
-
</p>
|
|
547
|
-
<div class="grid four">
|
|
548
|
-
<div class="tile accent-program">
|
|
549
|
-
<h3>Program</h3>
|
|
550
|
-
<p>Cross-release parent effort with durable context, roadmap, phase history, and program-level ADRs.</p>
|
|
551
|
-
<code class="path">context/programs/<program>/</code>
|
|
552
|
-
</div>
|
|
553
|
-
<div class="tile accent-planned">
|
|
554
|
-
<h3>Planned initiative</h3>
|
|
555
|
-
<p>Scoped future delivery slice that belongs to a program but is not active yet.</p>
|
|
556
|
-
<code class="path">programs/<program>/planned-initiatives/<initiative>/</code>
|
|
557
|
-
</div>
|
|
558
|
-
<div class="tile accent-release">
|
|
559
|
-
<h3>Release initiative</h3>
|
|
560
|
-
<p>Active or historical delivery slice for a specific release.</p>
|
|
561
|
-
<code class="path">releases/<version>/initiatives/<initiative>/</code>
|
|
562
|
-
</div>
|
|
563
|
-
<div class="tile accent-backlog">
|
|
564
|
-
<h3>Backlog item</h3>
|
|
565
|
-
<p>Isolated work cut from scope and kept for possible later pickup.</p>
|
|
566
|
-
<code class="path">backlog/items/<origin>--<item>.md</code>
|
|
567
|
-
</div>
|
|
568
|
-
</div>
|
|
569
|
-
</section>
|
|
570
|
-
|
|
571
|
-
<section id="decision-guide">
|
|
572
|
-
<h2>Decision Guide</h2>
|
|
573
|
-
<p class="section-intro">
|
|
574
|
-
Use this when deciding where new context belongs.
|
|
575
|
-
</p>
|
|
576
|
-
|
|
577
|
-
<div class="decision">
|
|
578
|
-
<div class="question">Is this active in the current release?</div>
|
|
579
|
-
<div class="answer">Use a release initiative. It is the delivery surface for the current release.</div>
|
|
580
|
-
<div class="target"><code>context/releases/<current>/initiatives/</code></div>
|
|
581
|
-
</div>
|
|
582
|
-
|
|
583
|
-
<div class="decision">
|
|
584
|
-
<div class="question">Does this span releases or phases?</div>
|
|
585
|
-
<div class="answer">Use a program for durable context, roadmap, and program-level decisions.</div>
|
|
586
|
-
<div class="target"><code>context/programs/</code></div>
|
|
587
|
-
</div>
|
|
588
|
-
|
|
589
|
-
<div class="decision">
|
|
590
|
-
<div class="question">Is a future phase already clear?</div>
|
|
591
|
-
<div class="answer">Use a planned initiative so detail is preserved before the release becomes current.</div>
|
|
592
|
-
<div class="target"><code>programs/<program>/planned-initiatives/</code></div>
|
|
593
|
-
</div>
|
|
594
|
-
|
|
595
|
-
<div class="decision">
|
|
596
|
-
<div class="question">Was isolated work cut from scope?</div>
|
|
597
|
-
<div class="answer">Use a context backlog item. Link it back to the originating initiative.</div>
|
|
598
|
-
<div class="target"><code>context/backlog/items/</code></div>
|
|
599
|
-
</div>
|
|
600
|
-
</section>
|
|
601
|
-
|
|
602
|
-
<section id="lifecycle">
|
|
603
|
-
<h2>Lifecycle</h2>
|
|
604
|
-
<p class="section-intro">
|
|
605
|
-
The same work can move through several containers as it becomes more
|
|
606
|
-
concrete. Promotion is explicit and traceable.
|
|
607
|
-
</p>
|
|
608
|
-
<div class="timeline" aria-label="Context lifecycle">
|
|
609
|
-
<div class="step">
|
|
610
|
-
<span class="step-number">1</span>
|
|
611
|
-
<h3>Plan the arc</h3>
|
|
612
|
-
<p>Create or update a program when the effort spans releases.</p>
|
|
613
|
-
</div>
|
|
614
|
-
<div class="step">
|
|
615
|
-
<span class="step-number">2</span>
|
|
616
|
-
<h3>Scope future work</h3>
|
|
617
|
-
<p>Capture clear future phases as planned initiatives.</p>
|
|
618
|
-
</div>
|
|
619
|
-
<div class="step">
|
|
620
|
-
<span class="step-number">3</span>
|
|
621
|
-
<h3>Set current release</h3>
|
|
622
|
-
<p>Run the release transition checklist and promote matching planned initiatives.</p>
|
|
623
|
-
</div>
|
|
624
|
-
<div class="step">
|
|
625
|
-
<span class="step-number">4</span>
|
|
626
|
-
<h3>Deliver the slice</h3>
|
|
627
|
-
<p>Work in the release initiative and keep stable files current.</p>
|
|
628
|
-
</div>
|
|
629
|
-
<div class="step">
|
|
630
|
-
<span class="step-number">5</span>
|
|
631
|
-
<h3>Carry forward</h3>
|
|
632
|
-
<p>Move durable context to programs and isolated cut scope to backlog items.</p>
|
|
633
|
-
</div>
|
|
634
|
-
</div>
|
|
635
|
-
</section>
|
|
636
|
-
|
|
637
|
-
<section id="delivery-surface">
|
|
638
|
-
<h2>Delivery Surface</h2>
|
|
639
|
-
<p class="section-intro">
|
|
640
|
-
Working context describes the whole delivery system, not only the
|
|
641
|
-
product code. The structure follows delivery concerns, not specific
|
|
642
|
-
technologies or vendors.
|
|
643
|
-
</p>
|
|
644
|
-
<div class="grid three">
|
|
645
|
-
<div class="tile accent-release">
|
|
646
|
-
<h3><code>testing.md</code></h3>
|
|
647
|
-
<p>
|
|
648
|
-
Verification strategy, automated and manual coverage, test data,
|
|
649
|
-
regression risk, and release gates.
|
|
650
|
-
</p>
|
|
651
|
-
</div>
|
|
652
|
-
<div class="tile accent-program">
|
|
653
|
-
<h3><code>delivery.md</code></h3>
|
|
654
|
-
<p>
|
|
655
|
-
CI/CD behavior, build gates, deployment flow, environment
|
|
656
|
-
promotion, release toggles, and delivery automation.
|
|
657
|
-
</p>
|
|
658
|
-
</div>
|
|
659
|
-
<div class="tile accent-planned">
|
|
660
|
-
<h3><code>infrastructure.md</code></h3>
|
|
661
|
-
<p>
|
|
662
|
-
Environment shape, IaC, resources, networking, identity, storage,
|
|
663
|
-
secrets, and environment dependencies.
|
|
664
|
-
</p>
|
|
665
|
-
</div>
|
|
666
|
-
</div>
|
|
667
|
-
<div class="note" style="margin-top: 16px;">
|
|
668
|
-
<p>
|
|
669
|
-
<code>operations.md</code> is optional. Use it only for actionable
|
|
670
|
-
runtime, support, observability, rollback, or repair context.
|
|
671
|
-
</p>
|
|
672
|
-
</div>
|
|
673
|
-
<div class="note" style="margin-top: 16px;">
|
|
674
|
-
<p>
|
|
675
|
-
Mermaid diagrams are encouraged for flows and dependencies because
|
|
676
|
-
they remain readable Markdown for agents and render as visible
|
|
677
|
-
diagrams for humans.
|
|
678
|
-
</p>
|
|
679
|
-
</div>
|
|
680
|
-
</section>
|
|
681
|
-
|
|
682
|
-
<section id="files">
|
|
683
|
-
<h2>Initiative Files</h2>
|
|
684
|
-
<p class="section-intro">
|
|
685
|
-
<code>plan.md</code> is the working surface. The other files are where
|
|
686
|
-
stable conclusions belong.
|
|
687
|
-
</p>
|
|
688
|
-
<table class="matrix">
|
|
689
|
-
<thead>
|
|
690
|
-
<tr>
|
|
691
|
-
<th>File</th>
|
|
692
|
-
<th>Purpose</th>
|
|
693
|
-
<th>Stability</th>
|
|
694
|
-
</tr>
|
|
695
|
-
</thead>
|
|
696
|
-
<tbody>
|
|
697
|
-
<tr>
|
|
698
|
-
<td><code>README.md</code></td>
|
|
699
|
-
<td>Entry point, status, scope, touched areas, and links.</td>
|
|
700
|
-
<td>Stable summary</td>
|
|
701
|
-
</tr>
|
|
702
|
-
<tr>
|
|
703
|
-
<td><code>plan.md</code></td>
|
|
704
|
-
<td>Live alignment, questions, options, and notes to promote.</td>
|
|
705
|
-
<td>Messy by design</td>
|
|
706
|
-
</tr>
|
|
707
|
-
<tr>
|
|
708
|
-
<td><code>spec.md</code></td>
|
|
709
|
-
<td>What the system should do.</td>
|
|
710
|
-
<td>Stable behavior</td>
|
|
711
|
-
</tr>
|
|
712
|
-
<tr>
|
|
713
|
-
<td><code>interface.md</code></td>
|
|
714
|
-
<td>How humans, clients, APIs, config, reports, or tools interact.</td>
|
|
715
|
-
<td>Stable surface</td>
|
|
716
|
-
</tr>
|
|
717
|
-
<tr>
|
|
718
|
-
<td><code>architecture.md</code></td>
|
|
719
|
-
<td>Internal shape, boundaries, flows, contracts, and data.</td>
|
|
720
|
-
<td>Stable design</td>
|
|
721
|
-
</tr>
|
|
722
|
-
<tr>
|
|
723
|
-
<td><code>testing.md</code></td>
|
|
724
|
-
<td>Verification strategy, coverage, test data, and release gates.</td>
|
|
725
|
-
<td>Stable verification</td>
|
|
726
|
-
</tr>
|
|
727
|
-
<tr>
|
|
728
|
-
<td><code>delivery.md</code></td>
|
|
729
|
-
<td>CI/CD, build behavior, deployment flow, promotion, and toggles.</td>
|
|
730
|
-
<td>Stable delivery</td>
|
|
731
|
-
</tr>
|
|
732
|
-
<tr>
|
|
733
|
-
<td><code>infrastructure.md</code></td>
|
|
734
|
-
<td>Environment shape, IaC, resources, identity, storage, and secrets.</td>
|
|
735
|
-
<td>Stable environment</td>
|
|
736
|
-
</tr>
|
|
737
|
-
<tr>
|
|
738
|
-
<td><code>operations.md</code></td>
|
|
739
|
-
<td>Actionable runtime support: observability, failure modes, rollback, and repair.</td>
|
|
740
|
-
<td>Optional operations</td>
|
|
741
|
-
</tr>
|
|
742
|
-
<tr>
|
|
743
|
-
<td><code>release-doc-notes.md</code></td>
|
|
744
|
-
<td>Product documentation impact for later release-doc refresh.</td>
|
|
745
|
-
<td>Bridge to docs</td>
|
|
746
|
-
</tr>
|
|
747
|
-
</tbody>
|
|
748
|
-
</table>
|
|
749
|
-
<div class="note" style="margin-top: 16px;">
|
|
750
|
-
<p>
|
|
751
|
-
Key rule: <code>plan.md</code> can be messy, but settled truth must
|
|
752
|
-
move into the stable files.
|
|
753
|
-
</p>
|
|
754
|
-
</div>
|
|
755
|
-
</section>
|
|
756
|
-
|
|
757
|
-
<section id="release-transition">
|
|
758
|
-
<h2>Release Transition</h2>
|
|
759
|
-
<p class="section-intro">
|
|
760
|
-
Changing <code>context/current.md</code> is a workflow. The agent
|
|
761
|
-
should materialize planned work for the new current release.
|
|
762
|
-
</p>
|
|
763
|
-
<table class="matrix">
|
|
764
|
-
<thead>
|
|
765
|
-
<tr>
|
|
766
|
-
<th>Step</th>
|
|
767
|
-
<th>What happens</th>
|
|
768
|
-
<th>Source</th>
|
|
769
|
-
</tr>
|
|
770
|
-
</thead>
|
|
771
|
-
<tbody>
|
|
772
|
-
<tr>
|
|
773
|
-
<td>1</td>
|
|
774
|
-
<td>Update <code>current.md</code> and create the release folder if needed.</td>
|
|
775
|
-
<td><code>_templates/release-context/</code></td>
|
|
776
|
-
</tr>
|
|
777
|
-
<tr>
|
|
778
|
-
<td>2</td>
|
|
779
|
-
<td>Scan programs for planned initiatives targeting the new release.</td>
|
|
780
|
-
<td><code>programs/*/planned-initiatives/*/README.md</code></td>
|
|
781
|
-
</tr>
|
|
782
|
-
<tr>
|
|
783
|
-
<td>3</td>
|
|
784
|
-
<td>Promote matching planned initiatives into the release.</td>
|
|
785
|
-
<td><code>releases/<version>/initiatives/</code></td>
|
|
786
|
-
</tr>
|
|
787
|
-
<tr>
|
|
788
|
-
<td>4</td>
|
|
789
|
-
<td>Update links both ways and leave the planned initiative as history.</td>
|
|
790
|
-
<td><code>Status: Promoted</code></td>
|
|
791
|
-
</tr>
|
|
792
|
-
</tbody>
|
|
793
|
-
</table>
|
|
794
|
-
</section>
|
|
795
|
-
|
|
796
|
-
<section id="navigation">
|
|
797
|
-
<h2>Start Here</h2>
|
|
798
|
-
<p class="section-intro">
|
|
799
|
-
These are the first files a human or agent should open.
|
|
800
|
-
</p>
|
|
801
|
-
<div class="grid two">
|
|
802
|
-
<div class="tile">
|
|
803
|
-
<h3>For vocabulary</h3>
|
|
804
|
-
<p><a href="terminology.md">context/terminology.md</a></p>
|
|
805
|
-
</div>
|
|
806
|
-
<div class="tile">
|
|
807
|
-
<h3>For active release context</h3>
|
|
808
|
-
<p><a href="current.md">context/current.md</a></p>
|
|
809
|
-
</div>
|
|
810
|
-
<div class="tile">
|
|
811
|
-
<h3>For release transitions</h3>
|
|
812
|
-
<p><a href="_templates/release-transition.md">context/_templates/release-transition.md</a></p>
|
|
813
|
-
</div>
|
|
814
|
-
<div class="tile">
|
|
815
|
-
<h3>For agent behavior</h3>
|
|
816
|
-
<p><a href="../.agents/skills/code-anchored-context/SKILL.md">code-anchored-context skill</a></p>
|
|
817
|
-
</div>
|
|
818
|
-
</div>
|
|
819
|
-
</section>
|
|
820
|
-
</main>
|
|
821
|
-
|
|
822
|
-
<footer>
|
|
823
|
-
<div class="wrap">
|
|
824
|
-
Static brief for the repository <code>context/</code> context model.
|
|
825
|
-
Product documentation still lives under <code>docs/</code> and
|
|
826
|
-
follows its own release refresh rules.
|
|
827
|
-
</div>
|
|
828
|
-
</footer>
|
|
829
|
-
</body>
|
|
830
|
-
</html>
|