@acrasie/dev-flow 0.0.0-stage → 1.0.1
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/.codex-plugin/plugin.json +20 -0
- package/LICENSE +21 -0
- package/README.md +181 -2
- package/dist/codex-dev-flow.mjs +3 -0
- package/dist/dev-flow.mjs +241 -0
- package/docs/adr/0001-hybrid-portable-workflow.md +23 -0
- package/docs/adr/0002-share-an-invalidable-context-capsule.md +55 -0
- package/docs/adr/0004-scale-assurance-lanes-by-applicable-risk.md +36 -0
- package/docs/adr/0006-make-intake-adaptive-user-authoritative-and-token-efficient.md +76 -0
- package/docs/adr/0007-collect-opt-in-local-benchmark-feedback.md +82 -0
- package/docs/adr/0008-automate-maintainer-releases-with-an-interactive-bun-workflow.md +121 -0
- package/docs/adr/0009-separate-intake-decisions-from-shape-discovery.md +200 -0
- package/docs/adr/0010-choose-quick-or-plan-after-discovery.md +161 -0
- package/docs/adr/0011-separate-fast-local-and-authoritative-ci-quality-gates.md +49 -0
- package/docs/adr/0012-use-bun-test-and-require-node-24.md +41 -0
- package/docs/adr/0013-layer-source-distribution-and-runtime-tests.md +42 -0
- package/docs/adr/0014-ratchet-source-coverage-with-bun.md +51 -0
- package/docs/adr/0015-split-fast-and-type-aware-linting.md +41 -0
- package/docs/adr/0016-use-husky-with-a-tested-bun-staged-file-adapter.md +45 -0
- package/docs/adr/0017-format-conservatively-with-oxfmt.md +45 -0
- package/docs/adr/0018-use-a-high-signal-oxlint-policy.md +53 -0
- package/docs/adr/0019-gate-deterministic-size-and-observe-timing.md +44 -0
- package/docs/adr/0020-support-linux-and-macos-with-targeted-ci.md +41 -0
- package/docs/adr/0021-randomize-tests-without-retries.md +35 -0
- package/docs/adr/0022-use-one-root-bun-workspace.md +41 -0
- package/docs/adr/0024-make-gate-a-minimal-plan-approval.md +74 -0
- package/docs/adr/0025-end-the-lifecycle-after-assure.md +55 -0
- package/docs/adr/0026-keep-intake-product-stable-and-interview-shape-by-dependency.md +151 -0
- package/docs/adr/0027-add-agentic-project-init-and-versioned-engineering-profiles.md +147 -0
- package/docs/adr/0028-make-public-documentation-user-first-and-current.md +65 -0
- package/docs/adr/0029-make-build-a-native-execution-boundary.md +51 -0
- package/docs/adr/0030-unify-product-domain-and-technical-design-interviews.md +240 -0
- package/docs/adr/0031-make-assure-the-success-boundary.md +205 -0
- package/docs/artifacts.md +47 -0
- package/docs/baselines/2026-07-18-p0-lifecycle.json +142 -0
- package/docs/design.md +101 -0
- package/docs/getting-started.md +204 -0
- package/docs/glossary/dev-flow.md +527 -0
- package/docs/lifecycle-contract.md +189 -0
- package/docs/lifecycle-contract.projection.json +931 -0
- package/docs/metrics-protocol.md +113 -0
- package/docs/project-profile-contract.md +157 -0
- package/docs/runbooks/maintainer-release.md +291 -0
- package/docs/target-intake-shape-contract.md +416 -0
- package/package.json +68 -4
- package/schemas/config.schema.json +104 -0
- package/schemas/policy.schema.json +17 -0
- package/schemas/project-init-state.schema.json +159 -0
- package/schemas/project-profile-local.schema.json +53 -0
- package/schemas/project-profile.schema.json +285 -0
- package/schemas/state.schema.json +826 -0
- package/skills/debug-root-cause/SKILL.md +16 -0
- package/skills/design-decisions/SKILL.md +24 -0
- package/skills/dev-flow/SKILL.md +306 -0
- package/skills/dev-flow/agents/openai.yaml +6 -0
- package/skills/discover-change/SKILL.md +31 -0
- package/skills/plan-change/SKILL.md +29 -0
- package/skills/review-change/SKILL.md +21 -0
|
@@ -0,0 +1,527 @@
|
|
|
1
|
+
# Dev Flow Glossary
|
|
2
|
+
|
|
3
|
+
## Artifact
|
|
4
|
+
|
|
5
|
+
A versioned owner or repository-native record for detailed task contract and evidence
|
|
6
|
+
references. One logical artifact may project to one file, several files, or another
|
|
7
|
+
policy-selected representation.
|
|
8
|
+
|
|
9
|
+
## Approval
|
|
10
|
+
|
|
11
|
+
An immutable human authorization bound to complete local canonical contract digest. In
|
|
12
|
+
TaskState V6 this is one Plan Approval Receipt.
|
|
13
|
+
|
|
14
|
+
## ASSURE completion
|
|
15
|
+
|
|
16
|
+
Success boundary where every required acceptance criterion and applicable risk
|
|
17
|
+
has current evidence. It is derived from a valid Assurance Receipt, not represented
|
|
18
|
+
by a separate `finished` status. Completion appends `assure.completed`; a valid receipt
|
|
19
|
+
makes `assuring` terminal and immutable.
|
|
20
|
+
|
|
21
|
+
## Change artifact
|
|
22
|
+
|
|
23
|
+
The sole versioned logical owner of stable intent, scope, acceptance criteria,
|
|
24
|
+
implementation plan, risks, and detailed evidence references. Its identity and canonical
|
|
25
|
+
digest—not its pathname—bind Approval. Plan profile does not prescribe one physical
|
|
26
|
+
layout.
|
|
27
|
+
|
|
28
|
+
## Plan profile
|
|
29
|
+
|
|
30
|
+
The durable-preparation choice made after SHAPE Discovery and before Planning. It
|
|
31
|
+
projects the canonical Change Contract to one versioned document containing
|
|
32
|
+
specification, plan, and evidence-required implementation guidance. Risk and policy,
|
|
33
|
+
not the profile, determine safety controls.
|
|
34
|
+
|
|
35
|
+
## Change record
|
|
36
|
+
|
|
37
|
+
Legacy name for a file-based projection of a Change artifact. It is a supported
|
|
38
|
+
repository choice, not a canonical Docs-profile convention.
|
|
39
|
+
|
|
40
|
+
## Benchmark record
|
|
41
|
+
|
|
42
|
+
An opt-in, local, gitignored post-task record containing a completed satisfaction
|
|
43
|
+
survey, allowlisted execution metrics, and deterministic deviation facts. It is outside
|
|
44
|
+
the lifecycle, never changes task outcome, and is never uploaded automatically.
|
|
45
|
+
|
|
46
|
+
## BUILD
|
|
47
|
+
|
|
48
|
+
The thin lifecycle boundary in which native Codex implements the complete approved plan.
|
|
49
|
+
Dev Flow verifies current Approval and exact digest before writes or resume, but adds no
|
|
50
|
+
execution skill, checkpoint, progress tracker, validation loop, or persisted BUILD
|
|
51
|
+
output. Material contract change returns to SHAPE then GATE; completion enters ASSURE
|
|
52
|
+
automatically.
|
|
53
|
+
|
|
54
|
+
## Bun test suite
|
|
55
|
+
|
|
56
|
+
The repository's sole automated test suite, discovered and executed by `bun:test`.
|
|
57
|
+
Its success proves behavior under Bun but is not, by itself, Node.js runtime
|
|
58
|
+
compatibility evidence.
|
|
59
|
+
|
|
60
|
+
## Cachebuster
|
|
61
|
+
|
|
62
|
+
The timestamp-derived suffix in the Codex plugin manifest version that gives one plugin
|
|
63
|
+
snapshot a new installation identity without treating the suffix as a separate semantic
|
|
64
|
+
product version.
|
|
65
|
+
|
|
66
|
+
## Configuration provenance
|
|
67
|
+
|
|
68
|
+
The source that supplied an effective configuration value.
|
|
69
|
+
|
|
70
|
+
## Coverage ratchet
|
|
71
|
+
|
|
72
|
+
The Full Gate rule that initializes Bun source-coverage thresholds from a measured
|
|
73
|
+
post-migration baseline, blocks regressions below them, and allows increases without
|
|
74
|
+
allowing silent decreases.
|
|
75
|
+
|
|
76
|
+
## Context Capsule
|
|
77
|
+
|
|
78
|
+
A compact, structured, and invalidable projection of task context shared across
|
|
79
|
+
lifecycle phases. It contains provenance and freshness fingerprints, but does not own
|
|
80
|
+
detailed evidence or approved scope.
|
|
81
|
+
|
|
82
|
+
## Active Design Question
|
|
83
|
+
|
|
84
|
+
One task-wide resumable product, terminology, domain-rule, or technical question. It
|
|
85
|
+
persists owner, prerequisites, prior role, consequences, selection reason, and optional
|
|
86
|
+
bounded choices. Resume reuses exact question until dependency invalidation.
|
|
87
|
+
|
|
88
|
+
## Technical Decision
|
|
89
|
+
|
|
90
|
+
A material SHAPE-owned choice backed by fresh repository evidence. It records viable
|
|
91
|
+
and excluded options, recommendation, confidence, consequences, explicit selection,
|
|
92
|
+
affected dependencies, and exact prior SHAPE role. Product infeasibility creates a
|
|
93
|
+
linked INTAKE-owned question instead.
|
|
94
|
+
|
|
95
|
+
## Dependency closure
|
|
96
|
+
|
|
97
|
+
The transitive set of discovery evidence and contract sections that depend on a changed
|
|
98
|
+
decision, source, or section. SHAPE invalidates this set selectively while retaining
|
|
99
|
+
fresh independent work; it never uses invalidation as a reason to reset all shaping.
|
|
100
|
+
|
|
101
|
+
## Dependency graph
|
|
102
|
+
|
|
103
|
+
The persisted acyclic graph connecting stable decision, source-fingerprint, discovery,
|
|
104
|
+
and contract-section identities through explicit `dependsOn` references. The model
|
|
105
|
+
proposes semantic links; deterministic runtime validates structure and computes
|
|
106
|
+
selective invalidation.
|
|
107
|
+
|
|
108
|
+
## Determining constraint
|
|
109
|
+
|
|
110
|
+
A constraint whose violation or change can alter the expected outcome, success signal,
|
|
111
|
+
risk, scope, solution, validation, or lifecycle transition. Preferences without
|
|
112
|
+
such impact are not INTAKE questions.
|
|
113
|
+
|
|
114
|
+
## Deterministic size budget
|
|
115
|
+
|
|
116
|
+
The blocking Full Gate cap for bundle, packed-package, or unpacked-package bytes,
|
|
117
|
+
derived from a committed baseline with explicit headroom and changed only through a
|
|
118
|
+
reviewed explanation.
|
|
119
|
+
|
|
120
|
+
## Discovery target
|
|
121
|
+
|
|
122
|
+
One stable, resumable SHAPE investigation unit containing a precise technical question,
|
|
123
|
+
its possible material contract impact, candidate sources, its evidence-backed result,
|
|
124
|
+
provenance, and explicit dependencies. A target widens discovery only when its result
|
|
125
|
+
creates another material uncertainty.
|
|
126
|
+
|
|
127
|
+
## Discovery role
|
|
128
|
+
|
|
129
|
+
The read-only SHAPE role allowed to inspect repository sources and resolve Discovery
|
|
130
|
+
Targets into provenance-bound evidence. It does not author the canonical plan.
|
|
131
|
+
|
|
132
|
+
## Diff Capsule
|
|
133
|
+
|
|
134
|
+
The ASSURE projection of approved criteria, applicable risks, changed surfaces,
|
|
135
|
+
dependency impact, and fresh validation evidence.
|
|
136
|
+
|
|
137
|
+
## Evidence requirement
|
|
138
|
+
|
|
139
|
+
The SHAPE-owned proof contract for one acceptance criterion: expected outcome, verifier
|
|
140
|
+
kind (`command`, `model-inspection`, or `user-observation`), and evidence needed for
|
|
141
|
+
ASSURE completion. It lets ASSURE resolve missing coverage instead of redesigning the
|
|
142
|
+
verification strategy after implementation.
|
|
143
|
+
|
|
144
|
+
## Evidence index
|
|
145
|
+
|
|
146
|
+
Compact TaskState registry of evidence identity, covered subjects, verifier
|
|
147
|
+
identity and kind, result, observed fingerprint, detail reference, and digest. Detailed
|
|
148
|
+
command output and prose remain in the logical artifact or logs.
|
|
149
|
+
|
|
150
|
+
## Assurance Receipt
|
|
151
|
+
|
|
152
|
+
Minimal, digest-bound proof of successful ASSURE completion. It binds task,
|
|
153
|
+
approved contract, complete verified snapshot, canonical completion index, and completion
|
|
154
|
+
time without duplicating criteria, checks, or evidence prose.
|
|
155
|
+
|
|
156
|
+
## Failure
|
|
157
|
+
|
|
158
|
+
A failed validation, review, or verification check tracked by a stable `issue_id`.
|
|
159
|
+
|
|
160
|
+
## Fast Gate
|
|
161
|
+
|
|
162
|
+
The low-latency, non-authoritative pre-commit quality gate. It checks formatting and
|
|
163
|
+
linting only for staged supported files, never mutates them, and delegates all quality
|
|
164
|
+
policy to repository scripts.
|
|
165
|
+
|
|
166
|
+
## Finding
|
|
167
|
+
|
|
168
|
+
An actionable review issue tracked by a stable `issue_id`.
|
|
169
|
+
|
|
170
|
+
## Fresh evidence
|
|
171
|
+
|
|
172
|
+
SHAPE evidence whose exact source fingerprints still match. Freshness is evaluated per
|
|
173
|
+
referenced source; unrelated repository changes do not make an evidence item stale.
|
|
174
|
+
|
|
175
|
+
## Formatting policy
|
|
176
|
+
|
|
177
|
+
The repository-wide conservative Oxfmt contract that normalizes presentation while
|
|
178
|
+
preserving prose wrapping, import order, and package-manifest field order.
|
|
179
|
+
|
|
180
|
+
## Full Gate
|
|
181
|
+
|
|
182
|
+
The authoritative repository-wide CI quality gate. It checks formatting, linting, type
|
|
183
|
+
correctness, build output, the complete automated test suite, and distribution behavior
|
|
184
|
+
regardless of whether a local hook ran.
|
|
185
|
+
|
|
186
|
+
## Gate
|
|
187
|
+
|
|
188
|
+
A control that authorizes a transition after checking required evidence. In V6, GATE is exactly one deterministic pre-BUILD validation and explicit user
|
|
189
|
+
approval of the canonical implementation contract.
|
|
190
|
+
|
|
191
|
+
## Gate preflight
|
|
192
|
+
|
|
193
|
+
The V6 pure deterministic check that validates current SHAPE completion,
|
|
194
|
+
contract digest, criterion coverage, evidence freshness, and escalation closure before
|
|
195
|
+
asking the user to approve the plan. It performs no model, network, discovery, or
|
|
196
|
+
subprocess operation.
|
|
197
|
+
|
|
198
|
+
## External delivery
|
|
199
|
+
|
|
200
|
+
Git, GitHub, registry, or release work performed after successful ASSURE. It is
|
|
201
|
+
outside TaskState V6 and requires native Codex authorization.
|
|
202
|
+
|
|
203
|
+
## Product Baseline
|
|
204
|
+
|
|
205
|
+
Canonical five-dimension INTAKE record: objective, affected users/value, scope,
|
|
206
|
+
observable success, and risks/constraints. Every dimension is resolved or carries
|
|
207
|
+
justified `not_applicable`, provenance, and dependency identity. It stores no transcript.
|
|
208
|
+
|
|
209
|
+
## Implementation Guide
|
|
210
|
+
|
|
211
|
+
The optional Change Contract section containing only evidence-backed architectural
|
|
212
|
+
constraints, required patterns, migration rules, or sequencing details needed to
|
|
213
|
+
prevent implementation drift. It is not a second plan and does not contain decorative
|
|
214
|
+
prose or redundant pseudo-code.
|
|
215
|
+
|
|
216
|
+
## Integration Test Layer
|
|
217
|
+
|
|
218
|
+
The `bun:test` layer that exercises the built bundle or a complete composed workflow
|
|
219
|
+
when module composition, generated artifacts, or cross-module behavior is material to
|
|
220
|
+
the contract.
|
|
221
|
+
|
|
222
|
+
## Late Intake decision
|
|
223
|
+
|
|
224
|
+
An explicit product decision requested after SHAPE discovery reveals a
|
|
225
|
+
product-impacting technical choice. It is presented in `awaiting_intake_decision`,
|
|
226
|
+
selectively invalidates its dependency closure, and resumes the prior SHAPE work without
|
|
227
|
+
rerunning initial INTAKE.
|
|
228
|
+
|
|
229
|
+
## Lint policy
|
|
230
|
+
|
|
231
|
+
The version-pinned Oxlint contract that blocks correctness, suspicious, and performance
|
|
232
|
+
diagnostics plus unused disable directives, while leaving style, pedantic, restriction,
|
|
233
|
+
and nursery categories disabled initially.
|
|
234
|
+
|
|
235
|
+
## Macro-phase
|
|
236
|
+
|
|
237
|
+
One public lifecycle stage derived from internal task status and never persisted
|
|
238
|
+
independently. V6 has INTAKE, SHAPE, GATE, BUILD, and ASSURE.
|
|
239
|
+
|
|
240
|
+
## Issue ID
|
|
241
|
+
|
|
242
|
+
A stable hash identity for a failure or finding across workflow runs.
|
|
243
|
+
|
|
244
|
+
## Occurrence ID
|
|
245
|
+
|
|
246
|
+
An identifier for one observation of an issue in one workflow run.
|
|
247
|
+
|
|
248
|
+
## Policy
|
|
249
|
+
|
|
250
|
+
A schema-approved requirement, prohibition, bound, or lock applied after configuration resolution.
|
|
251
|
+
|
|
252
|
+
## Platform contract
|
|
253
|
+
|
|
254
|
+
The operating-system compatibility claim backed by targeted CI evidence. The current
|
|
255
|
+
contract supports Linux and macOS; Windows remains explicitly unsupported.
|
|
256
|
+
|
|
257
|
+
## Preparation profile choice
|
|
258
|
+
|
|
259
|
+
The explicit Quick-or-Plan choice made after `discovery_sufficient` and before Planning.
|
|
260
|
+
It is persisted with its evidence-backed recommendation in
|
|
261
|
+
`awaiting_profile_choice`. An explicit plan request or policy lock may resolve it
|
|
262
|
+
without presenting a redundant or false choice.
|
|
263
|
+
|
|
264
|
+
## Quality scope
|
|
265
|
+
|
|
266
|
+
The repository-wide set of maintained source, configuration, schema, workflow, and
|
|
267
|
+
documentation files governed by the Fast and Full Gates. Generated, vendored, cached,
|
|
268
|
+
lock, and distribution files are excluded explicitly when not safely excluded by the
|
|
269
|
+
quality tool itself.
|
|
270
|
+
|
|
271
|
+
## Planning role
|
|
272
|
+
|
|
273
|
+
The read-only SHAPE role that projects the canonical contract only from fresh structured
|
|
274
|
+
evidence. It cannot inspect the repository directly; missing evidence becomes a new
|
|
275
|
+
Discovery Target.
|
|
276
|
+
|
|
277
|
+
## Partial release
|
|
278
|
+
|
|
279
|
+
A release whose Git, npm-registry, or GitHub Release actions have not all reached their
|
|
280
|
+
intended state. It is resumed by reconciling external state and performing only the
|
|
281
|
+
missing idempotent action, never by rolling back published artifacts. Optional local
|
|
282
|
+
Codex installation is not publication state; retry it directly when needed.
|
|
283
|
+
|
|
284
|
+
## Phase contract
|
|
285
|
+
|
|
286
|
+
The uniform declaration of a macro-phase's intent, preconditions, consumed and produced
|
|
287
|
+
capsule fields, ownership, events, proof, failures, resume rules, invalidation, and
|
|
288
|
+
metrics.
|
|
289
|
+
|
|
290
|
+
## Plan Approval Receipt
|
|
291
|
+
|
|
292
|
+
V6 immutable user authorization for the complete local canonical change
|
|
293
|
+
contract. It is bound to task/artifact identity, full contract digest, state revision,
|
|
294
|
+
state fingerprint, actor, and timestamp. Any digest change invalidates it. It never
|
|
295
|
+
authorizes an external Git, GitHub, registry, or release action.
|
|
296
|
+
|
|
297
|
+
## Quick profile
|
|
298
|
+
|
|
299
|
+
The compact-preparation choice made after SHAPE Discovery and before Planning. It uses a
|
|
300
|
+
minimal SHAPE contract persisted in workflow state rather than requiring a
|
|
301
|
+
repository-versioned planning document. Risk and policy may still require strong gates
|
|
302
|
+
and assurance.
|
|
303
|
+
|
|
304
|
+
## Schema break
|
|
305
|
+
|
|
306
|
+
An intentional state-contract replacement with no compatibility migration. Legacy task
|
|
307
|
+
state is rejected clearly and never treated as current proof, Approval, or resumable
|
|
308
|
+
workflow evidence.
|
|
309
|
+
|
|
310
|
+
## Release preparation
|
|
311
|
+
|
|
312
|
+
The reversible portion of an interactive release: discovery, version recommendation,
|
|
313
|
+
preflight, temporary metadata generation, validation, package inspection, notes preview,
|
|
314
|
+
and final maintainer confirmation.
|
|
315
|
+
|
|
316
|
+
## Release publication
|
|
317
|
+
|
|
318
|
+
The irreversible portion of an interactive release beginning with the first successful
|
|
319
|
+
remote push and continuing through applicable npm publication, GitHub Release creation,
|
|
320
|
+
and optional local Codex plugin refresh.
|
|
321
|
+
|
|
322
|
+
## Release target
|
|
323
|
+
|
|
324
|
+
The maintainer-selected artifact set for one release: Codex plugin, npm package, or both.
|
|
325
|
+
It determines version mutation, tag namespace, validation, publication, and recovery
|
|
326
|
+
steps.
|
|
327
|
+
|
|
328
|
+
## Root cause ID
|
|
329
|
+
|
|
330
|
+
An identifier associating related issues after explicit investigation.
|
|
331
|
+
|
|
332
|
+
## Randomized test seed
|
|
333
|
+
|
|
334
|
+
The Bun-generated value that determines one CI test order, is retained in logs, and
|
|
335
|
+
allows an order-dependent failure to be reproduced exactly without retries.
|
|
336
|
+
|
|
337
|
+
## Runtime Smoke Suite
|
|
338
|
+
|
|
339
|
+
The narrow Full Gate suite that exercises the built and packaged CLI with the supported
|
|
340
|
+
Node.js runtime. It covers bundle import, CLI execution, configuration validation, and
|
|
341
|
+
package binary resolution without duplicating the Bun test suite.
|
|
342
|
+
|
|
343
|
+
## Assurance lane
|
|
344
|
+
|
|
345
|
+
An independent review concern activated by applicable risk. Critical lanes may be
|
|
346
|
+
omitted only through an evidence-backed non-applicability decision.
|
|
347
|
+
|
|
348
|
+
## Success guardrail
|
|
349
|
+
|
|
350
|
+
An observable outcome that must not regress while the primary success signal is
|
|
351
|
+
achieved.
|
|
352
|
+
|
|
353
|
+
## Success signal
|
|
354
|
+
|
|
355
|
+
The primary observable result that lets a named person or deterministic system judge
|
|
356
|
+
whether the requested outcome exists. SHAPE refines it into testable acceptance
|
|
357
|
+
criteria.
|
|
358
|
+
|
|
359
|
+
## Success validator
|
|
360
|
+
|
|
361
|
+
The person, role, test, metric, or system authorized to judge a success signal when
|
|
362
|
+
multiple validation authorities could require different proof.
|
|
363
|
+
|
|
364
|
+
## Type-aware linting
|
|
365
|
+
|
|
366
|
+
The Full Gate Oxlint profile that builds TypeScript type information through
|
|
367
|
+
`oxlint-tsgolint` to run semantic rules. It supplements rather than replaces
|
|
368
|
+
`tsc --noEmit`.
|
|
369
|
+
|
|
370
|
+
## Unit Test Layer
|
|
371
|
+
|
|
372
|
+
The `bun:test` layer that imports TypeScript source modules directly and proves isolated
|
|
373
|
+
deterministic behavior, boundaries, and failure contracts without requiring a bundle.
|
|
374
|
+
|
|
375
|
+
## Workspace root
|
|
376
|
+
|
|
377
|
+
The private Bun package that owns the repository-wide lockfile, quality dependencies,
|
|
378
|
+
hook installation, and orchestration scripts while leaving publishable plugin
|
|
379
|
+
dependencies declared by the plugin workspace.
|
|
380
|
+
|
|
381
|
+
## Shape State
|
|
382
|
+
|
|
383
|
+
The aggregate owning SHAPE discovery targets, evidence, source fingerprints, technical decisions, preparation profile, canonical contract, dependency graph, and semantic
|
|
384
|
+
evaluator receipts. It is the resumable boundary shared by Discovery and Planning.
|
|
385
|
+
|
|
386
|
+
## State snapshot
|
|
387
|
+
|
|
388
|
+
The effective configuration and policy retained when a task starts, used to detect behavior changes on resume.
|
|
389
|
+
|
|
390
|
+
## Stable state
|
|
391
|
+
|
|
392
|
+
A non-progressing state that waits for a user action or external-state change. A stable
|
|
393
|
+
state may be resumable, such as `blocked`, or terminal.
|
|
394
|
+
|
|
395
|
+
## Staged-file adapter
|
|
396
|
+
|
|
397
|
+
The tested Bun script that converts Git's NUL-delimited staged path set into safe,
|
|
398
|
+
batched Oxfmt and Oxlint arguments for the Fast Gate. It never mutates working-tree or
|
|
399
|
+
index content.
|
|
400
|
+
|
|
401
|
+
## Terminal source
|
|
402
|
+
|
|
403
|
+
The operational status recorded in a `cancelled` or `failed` terminal event and used to
|
|
404
|
+
derive its last active macro-phase without persisting that phase.
|
|
405
|
+
|
|
406
|
+
## Project INIT and profile terms
|
|
407
|
+
|
|
408
|
+
Following terms apply to agentic `$dev-flow init`, deterministic Project Engineering
|
|
409
|
+
Profile backend, and ordinary SHAPE profile consumption.
|
|
410
|
+
|
|
411
|
+
### Configuration Wizard
|
|
412
|
+
|
|
413
|
+
The optional deterministic terminal workflow invoked through
|
|
414
|
+
`npx @acrasie/dev-flow init`. It writes validated plugin operating configuration such as
|
|
415
|
+
worktree, subscription/quota, and integration preferences. It performs no model-assisted
|
|
416
|
+
repository Discovery and is distinct from Project INIT.
|
|
417
|
+
|
|
418
|
+
### Local Profile Overlay
|
|
419
|
+
|
|
420
|
+
The gitignored `.codex/dev-flow.project.local.yaml` file containing non-contractual
|
|
421
|
+
personal preferences and mappings from logical service identities to absolute local
|
|
422
|
+
paths. It cannot weaken repository policy or shared project conventions.
|
|
423
|
+
|
|
424
|
+
### Profile Approval Receipt
|
|
425
|
+
|
|
426
|
+
Immutable approval for shared Project Engineering Profile update. It binds actor,
|
|
427
|
+
timestamp, profile identity, revision, and exact content digest. Receipt remains outside
|
|
428
|
+
content digest to avoid a digest cycle and does not approve task implementation.
|
|
429
|
+
|
|
430
|
+
### Profile Reconciliation
|
|
431
|
+
|
|
432
|
+
Process comparing durable profile fingerprints with fresh project evidence,
|
|
433
|
+
rediscovering stale facts, re-interviewing user-owned conventions, and proposing only
|
|
434
|
+
affected updates. Rejection leaves shared profile byte-for-byte unchanged.
|
|
435
|
+
|
|
436
|
+
### Project Engineering Profile
|
|
437
|
+
|
|
438
|
+
Versioned `.codex/dev-flow.project.yaml` record containing durable shared architecture,
|
|
439
|
+
project boundaries, stack, development conventions, logical topology, source
|
|
440
|
+
fingerprints, revision, digest, and Profile Approval Receipt. Volatile task evidence
|
|
441
|
+
and absolute local paths are forbidden.
|
|
442
|
+
|
|
443
|
+
### Project INIT
|
|
444
|
+
|
|
445
|
+
The agentic `$dev-flow init` workflow that discovers repository facts, interviews one
|
|
446
|
+
material engineering decision at a time, validates a candidate Project Engineering
|
|
447
|
+
Profile, and publishes it only after explicit digest-bound Profile Approval. It creates
|
|
448
|
+
no product scaffold or TaskState.
|
|
449
|
+
|
|
450
|
+
### Project Topology
|
|
451
|
+
|
|
452
|
+
Shared logical model of services, responsibilities, dependencies, contracts, and owned
|
|
453
|
+
profile references. Filesystem paths resolving logical services belong only to Local
|
|
454
|
+
Profile Overlay.
|
|
455
|
+
|
|
456
|
+
### User Assertion
|
|
457
|
+
|
|
458
|
+
Provenance type for information supplied by user but unavailable for independent
|
|
459
|
+
verification. It may inform scoped profile decisions but never silently counts as
|
|
460
|
+
verified technical evidence.
|
|
461
|
+
|
|
462
|
+
### Visual Projection
|
|
463
|
+
|
|
464
|
+
Generated Mermaid document derived from canonical Project Engineering Profile. It is
|
|
465
|
+
published with profile transaction, uses immutable relative reference, and never becomes
|
|
466
|
+
second architecture authority. Broader task-decision visuals remain target behavior.
|
|
467
|
+
|
|
468
|
+
## Remaining accepted target design terms
|
|
469
|
+
|
|
470
|
+
Following INTAKE and ordinary SHAPE terms remain conceptual until runtime, schema,
|
|
471
|
+
skills, and normative lifecycle contract implement ADR 0030 atomically.
|
|
472
|
+
|
|
473
|
+
### Decision Graph
|
|
474
|
+
|
|
475
|
+
Target task-level typed acyclic graph connecting Product Baseline dimensions, domain
|
|
476
|
+
records, Technical Decisions, evidence, profile conventions, and contract sections. It
|
|
477
|
+
orders unblocked questions and computes selective transitive invalidation without owning
|
|
478
|
+
record payloads.
|
|
479
|
+
|
|
480
|
+
### Product Baseline
|
|
481
|
+
|
|
482
|
+
Target stable INTAKE record covering objective, affected users and product value, scope
|
|
483
|
+
and boundaries, observable success and validator, and product risks and determining
|
|
484
|
+
constraints. These are five mandatory completeness dimensions, not five mandatory
|
|
485
|
+
prompts.
|
|
486
|
+
|
|
487
|
+
### Active Design Question
|
|
488
|
+
|
|
489
|
+
Target single active, resumable task question for one product, terminology, domain-rule,
|
|
490
|
+
or technical decision. It carries phase owner, prior role, prerequisites, parent context,
|
|
491
|
+
direct consequences, priority reason, and either targeted elicitation or two or three
|
|
492
|
+
viable options with recommendation and confidence.
|
|
493
|
+
|
|
494
|
+
### Domain Glossary Delta
|
|
495
|
+
|
|
496
|
+
Target task-local candidate change to contextual business vocabulary. It records
|
|
497
|
+
canonical term, definition, accepted aliases, rejected or deprecated terms, related
|
|
498
|
+
terms, provenance, dependencies, lifecycle status, and durable disposition. It contains
|
|
499
|
+
no implementation detail.
|
|
500
|
+
|
|
501
|
+
### Domain Rule
|
|
502
|
+
|
|
503
|
+
Target structured business rule containing context, actors, conditions, invariant or
|
|
504
|
+
outcome, exceptions and limits, evidence, dependencies, and linked Domain Scenarios.
|
|
505
|
+
Material rules trace to acceptance criteria or an explicit durable disposition.
|
|
506
|
+
|
|
507
|
+
### Domain Scenario
|
|
508
|
+
|
|
509
|
+
Target child record that stress-tests a Domain Rule through initial situation,
|
|
510
|
+
event/action, expected or forbidden result, and nominal, boundary, exception, or
|
|
511
|
+
contradiction angle. It is reusable validation input but not automatically an executable
|
|
512
|
+
test.
|
|
513
|
+
|
|
514
|
+
### Decision Candidate
|
|
515
|
+
|
|
516
|
+
Target durable-decision candidate containing context, forces, alternatives, evidence,
|
|
517
|
+
selection, consequences, dependencies, and ADR qualification. ADR projection requires
|
|
518
|
+
durability, material reversal cost, a real trade-off, and rationale that would otherwise
|
|
519
|
+
be surprising.
|
|
520
|
+
|
|
521
|
+
### Technical Decision
|
|
522
|
+
|
|
523
|
+
Target user-owned SHAPE choice whose alternatives materially affect architecture,
|
|
524
|
+
runtime or major dependencies, data or migration, cross-service contracts, security,
|
|
525
|
+
compatibility, concurrency, performance, cost, operations, rollback, or approved
|
|
526
|
+
profile conventions. Reversible repository-conforming implementation details remain
|
|
527
|
+
agent-owned.
|