dxcomplete 0.1.0 → 0.2.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/README.md +22 -22
- package/dist/init.js +19 -0
- package/dist/mcp/docs.d.ts +18 -2
- package/dist/mcp/docs.js +201 -13
- package/dist/mcp/server.js +761 -47
- package/dist/runtime/check.d.ts +1 -1
- package/dist/runtime/records.d.ts +95 -4
- package/dist/runtime/records.js +640 -11
- package/dist/validate.js +3 -1
- package/docs/codex-integration.md +45 -18
- package/docs/glossary.md +39 -7
- package/docs/index.md +2 -1
- package/docs/model.md +3 -3
- package/docs/operating-guide.md +116 -0
- package/docs/taxonomy.md +12 -6
- package/docs/workflows.md +5 -3
- package/package.json +21 -3
- package/scripts/{dogfood-work-order.mjs → runtime-work-order.mjs} +4 -4
- package/scripts/smoke-mcp-http.mjs +460 -6
- package/src/init.ts +35 -0
- package/src/mcp/docs.ts +234 -14
- package/src/mcp/server.ts +1138 -83
- package/src/runtime/records.ts +914 -12
- package/src/validate.ts +3 -1
- package/templates/AGENTS.md +30 -0
- package/templates/process/controls.yml +10 -6
- package/templates/process/diagrams/01-intake-triage.mmd +5 -5
- package/templates/process/diagrams/02-product-definition.mmd +1 -1
- package/templates/process/diagrams/06-change-release-control.mmd +5 -7
- package/templates/process/diagrams/07-deployment-operations.mmd +2 -2
- package/templates/process/diagrams/08-support-incident-management.mmd +5 -4
- package/templates/process/diagrams/09-problem-improvement.mmd +4 -3
- package/templates/process/diagrams/10-risk-control-management.mmd +6 -4
- package/templates/process/diagrams/11-audit-evidence-capture.mmd +1 -1
- package/templates/process/taxonomy.yml +91 -17
- package/templates/process/workflows.yml +10 -9
- package/website/flow.html +1 -0
- package/website/glossary.html +37 -8
- package/website/index.html +2 -1
- package/website/objects.html +68 -11
- package/website/operating-guide.html +165 -0
- package/website/outcomes.html +1 -0
- package/website/phase-build.html +1 -0
- package/website/phase-elicit.html +1 -0
- package/website/phase-go-live.html +2 -1
- package/website/phase-measure.html +1 -0
- package/website/phase-operate.html +1 -0
- package/website/phase-orient.html +1 -0
- package/website/phase-weigh.html +1 -0
- package/website/roles.html +1 -0
package/dist/validate.js
CHANGED
|
@@ -7,6 +7,7 @@ const docs = [
|
|
|
7
7
|
"cost-model.md",
|
|
8
8
|
"glossary.md",
|
|
9
9
|
"model.md",
|
|
10
|
+
"operating-guide.md",
|
|
10
11
|
"roles.md",
|
|
11
12
|
"taxonomy.md",
|
|
12
13
|
"workflows.md",
|
|
@@ -66,9 +67,10 @@ function packageRequiredFiles() {
|
|
|
66
67
|
path.join("api", "dxcomplete-service.js"),
|
|
67
68
|
path.join("api", "auth", "callback", "google.js"),
|
|
68
69
|
path.join("dxcomplete", "workspace.json"),
|
|
70
|
+
path.join("templates", "AGENTS.md"),
|
|
69
71
|
path.join("scripts", "check-env-surface.mjs"),
|
|
70
72
|
path.join("scripts", "smoke-mcp-http.mjs"),
|
|
71
|
-
path.join("scripts", "
|
|
73
|
+
path.join("scripts", "runtime-work-order.mjs"),
|
|
72
74
|
path.join("scripts", "check-public-copy.mjs"),
|
|
73
75
|
path.join("scripts", "check-service-boundary.mjs"),
|
|
74
76
|
path.join("templates", "next", "pages", "api", "mcp.js"),
|
|
@@ -1,29 +1,56 @@
|
|
|
1
|
-
# Codex Integration
|
|
1
|
+
# Codex Integration
|
|
2
2
|
|
|
3
3
|
Codex is an instance of a coding-capable model. It is not a role in the DX Complete operating model.
|
|
4
4
|
|
|
5
5
|
The related role is `Engineer`: the person who performs implementation work directly or drives coding-capable tools. Codex may assist the Engineer.
|
|
6
6
|
|
|
7
|
-
##
|
|
7
|
+
## Engineer Default
|
|
8
8
|
|
|
9
|
-
Codex assistance
|
|
9
|
+
Codex assistance should normally follow:
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
```text
|
|
12
|
+
Requirement -> Task
|
|
13
|
+
```
|
|
12
14
|
|
|
13
|
-
|
|
15
|
+
Use `Task` for ordinary implementation work. Keep the task linked to the requirement it implements when that relationship exists.
|
|
14
16
|
|
|
15
|
-
|
|
16
|
-
2. Engineer may add non-blocking review notes to the expectation or requirement where delivery input should stay visible.
|
|
17
|
-
3. Engineer refines the committed requirement into requirement detail and tasks.
|
|
18
|
-
4. Engineer performs implementation on a task, with Codex assistance where appropriate.
|
|
19
|
-
5. Engineer reviews the implementation output.
|
|
20
|
-
6. Tester verifies against requirements and acceptance criteria.
|
|
21
|
-
7. Owner validates the result.
|
|
17
|
+
Use other records only when warranted:
|
|
22
18
|
|
|
23
|
-
|
|
19
|
+
- `Decision`: a meaningful implementation choice or tradeoff should remain legible.
|
|
20
|
+
- `Risk`: uncertainty or exposure could affect value, delivery, service, or compliance.
|
|
21
|
+
- `Journal`: relevant context has no better dedicated record home.
|
|
22
|
+
- `Change`: the work is a discrete alteration to the running service, not merely coding or documentation work.
|
|
24
23
|
|
|
25
|
-
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
24
|
+
Do not create ITSM-style records merely because Codex is doing work. Change, Incident, and Problem language belongs to run-side service control. Use `Change` for a discrete alteration to the running service, `Incident` for a specific service-impacting occurrence, and `Problem` for an underlying or recurring cause behind incidents.
|
|
25
|
+
|
|
26
|
+
## Operating Pattern
|
|
27
|
+
|
|
28
|
+
1. Owner defines or approves the expectation and requirement context.
|
|
29
|
+
2. Engineer may add non-blocking review notes where delivery input should stay visible.
|
|
30
|
+
3. Engineer breaks committed requirements into tasks.
|
|
31
|
+
4. Codex assists the Engineer on the task.
|
|
32
|
+
5. Engineer reviews the output and decides whether it is ready for verification.
|
|
33
|
+
6. Tester verifies against requirements and success criteria.
|
|
34
|
+
7. Owner validates the outcome where outcome validation is needed.
|
|
35
|
+
|
|
36
|
+
## Fresh Codex Session Checklist
|
|
37
|
+
|
|
38
|
+
When a Codex session starts without prior context:
|
|
39
|
+
|
|
40
|
+
1. Read `dxcomplete/docs/operating-guide.md`.
|
|
41
|
+
2. Read this file.
|
|
42
|
+
3. Identify the active role. For Codex, assume Engineer assistance unless the user explicitly says otherwise.
|
|
43
|
+
4. Prefer Task for implementation work.
|
|
44
|
+
5. Use Decision, Risk, Journal, or Change only when the record meaning fits.
|
|
45
|
+
6. Do not invent Owner intent or End User feedback. Create Incident or Problem records only when the operational meaning fits.
|
|
46
|
+
7. Keep public documentation user-facing when editing website pages.
|
|
47
|
+
|
|
48
|
+
## Evidence
|
|
49
|
+
|
|
50
|
+
Codex should leave evidence through the normal project channel: code changes, tests run, validation output, and concise handoff notes. When the work itself needs DX Complete recordkeeping, use the smallest appropriate record:
|
|
51
|
+
|
|
52
|
+
- Task entry for work progress or completion.
|
|
53
|
+
- Decision entry for a meaningful choice.
|
|
54
|
+
- Risk for unresolved uncertainty.
|
|
55
|
+
- Journal only for useful context with no better home.
|
|
56
|
+
- Change only for run-side alteration context.
|
package/docs/glossary.md
CHANGED
|
@@ -40,6 +40,10 @@ Locator: Structured location information for a Component, such as a URL, project
|
|
|
40
40
|
|
|
41
41
|
Secret Pointer: A reference to where a secret is stored and what it is called. It should not contain the secret value.
|
|
42
42
|
|
|
43
|
+
Maintenance Schedule: A recurring operational hygiene record with cadence, start date, rationale, and due state derived from linked completed Changes or Tasks.
|
|
44
|
+
|
|
45
|
+
Cadence: How often recurring operational work is expected to happen, such as every month or every quarter.
|
|
46
|
+
|
|
43
47
|
Informed By: The relationship from a decision to the record that helped inform it.
|
|
44
48
|
|
|
45
49
|
Readable ID: A short record reference such as `REQ-0001`. It helps people refer to records while the UUID remains the primary key.
|
|
@@ -60,6 +64,8 @@ Risk Acceptance: An Owner decision to own an open risk on the project's behalf.
|
|
|
60
64
|
|
|
61
65
|
Transformation: Work that moves from an existing state to an improved state.
|
|
62
66
|
|
|
67
|
+
Git Commit Reference: An optional commit identifier recorded on a Change result or recovery event to show what code state was used for that execution attempt or rollback. DX Complete records the reference as provided and does not validate it.
|
|
68
|
+
|
|
63
69
|
Greenfield: Work that moves from a new idea to a new system.
|
|
64
70
|
|
|
65
71
|
Limited Disclosure: Work where available information is incomplete by design or circumstance.
|
|
@@ -78,6 +84,12 @@ Benefit Item: One item inside Benefits. It may have an amount or range, or it ma
|
|
|
78
84
|
|
|
79
85
|
Estimate Refinement: The use of actual cost and benefit signals to improve future estimates.
|
|
80
86
|
|
|
87
|
+
Value Realization: A record that compares baseline and actual value metrics after work or operation when measurement is available.
|
|
88
|
+
|
|
89
|
+
Value Metric: One before-and-after measure inside Value Realization, with a baseline, optional actual value, unit, direction, and measured dates.
|
|
90
|
+
|
|
91
|
+
Measured At: The date or time when a value metric baseline or actual value was measured.
|
|
92
|
+
|
|
81
93
|
## Roles
|
|
82
94
|
|
|
83
95
|
Owner: The role that sets authority, priority, outcome direction, requirements, product validation direction, budget commitment, escalation direction, and formal risk acceptance.
|
|
@@ -112,7 +124,7 @@ QA Verification: The check that delivered work satisfies requirements and accept
|
|
|
112
124
|
|
|
113
125
|
Product Validation: The check that verified work achieves the intended product outcome.
|
|
114
126
|
|
|
115
|
-
Change: A record for a specific alteration to the running service. It keeps the plan, execution, rollback, notice, veto,
|
|
127
|
+
Change: A record for a specific alteration to the running service. It keeps the change type, plan, execution, rollback, notice, veto, decision, result, recovery history, and optional Git commit references without controlling the operation.
|
|
116
128
|
|
|
117
129
|
Change Plan: The part of a Change record that explains what is changing, why, scope, timing, and notice.
|
|
118
130
|
|
|
@@ -120,8 +132,6 @@ Execution Plan: The ordered practical steps inside a Change record for carrying
|
|
|
120
132
|
|
|
121
133
|
Rollback Plan: The part of a Change record that explains how to reverse or recover if the change fails or should not remain in use.
|
|
122
134
|
|
|
123
|
-
Emergency Change: A change where normal notice is shortened or skipped because both importance and immediacy are recorded.
|
|
124
|
-
|
|
125
135
|
Veto: A serious recorded objection to a Change by the Owner or Engineer. It does not mechanically stop the Operator, but proceeding over it creates a strong accountability record.
|
|
126
136
|
|
|
127
137
|
Release: A grouped set of changes prepared for delivery.
|
|
@@ -130,13 +140,35 @@ Deployment: The act of putting a release or change into an environment.
|
|
|
130
140
|
|
|
131
141
|
## Operations And Control
|
|
132
142
|
|
|
133
|
-
Support
|
|
143
|
+
Support Request: A shared support record for a reported user experience, question, request, or issue that needs workspace-visible follow-up.
|
|
144
|
+
|
|
145
|
+
Support Request Entry: One ordered entry in a Support Request, such as raised, triage, update, escalated, resolved, reopened, or note.
|
|
146
|
+
|
|
147
|
+
Incident: A specific service-impacting or potentially service-impacting occurrence with response history, current status, and severity derived from ordered entries.
|
|
148
|
+
|
|
149
|
+
Incident Entry: One ordered entry in an Incident, such as detected, update, severity, resolved, reopened, or note.
|
|
150
|
+
|
|
151
|
+
Problem: An underlying or recurring cause evidenced by one or more Incidents, with investigation, root-cause, known-error, and resolution history.
|
|
152
|
+
|
|
153
|
+
Problem Entry: One ordered entry in a Problem, such as identified, investigation, root cause, known error, resolved, reopened, or note.
|
|
154
|
+
|
|
155
|
+
Risk: An uncertainty or exposure that could affect product, service, delivery, compliance, or operations. Current risk state comes from ordered entries.
|
|
156
|
+
|
|
157
|
+
Risk Entry: One ordered entry in a Risk, such as identified, assessment, treatment, monitor note, closed, or reopened.
|
|
158
|
+
|
|
159
|
+
Risk Treatment: The chosen response to a Risk: accept, mitigate, transfer, or avoid. Formal acceptance is Owner-only.
|
|
160
|
+
|
|
161
|
+
Change Type: The classification of a Change as standard, normal, or emergency.
|
|
162
|
+
|
|
163
|
+
Standard Change: A low-risk, pre-understood, repeatable Change type.
|
|
164
|
+
|
|
165
|
+
Normal Change: The default Change type for an assessed alteration to the running service.
|
|
134
166
|
|
|
135
|
-
|
|
167
|
+
Emergency Change: A Change where normal notice or review is shortened because the situation is important and immediate.
|
|
136
168
|
|
|
137
|
-
|
|
169
|
+
Root Cause: The underlying cause recorded in a Problem when investigation identifies why one or more incidents occurred.
|
|
138
170
|
|
|
139
|
-
|
|
171
|
+
Known Error: A Problem state showing an underlying cause is known even if the full improvement is not complete.
|
|
140
172
|
|
|
141
173
|
Control: A policy, check, approval, or evidence expectation used to manage risk or governance.
|
|
142
174
|
|
package/docs/index.md
CHANGED
|
@@ -52,9 +52,10 @@ The installed scaffold should help describe and evolve a model covering:
|
|
|
52
52
|
- Audit and evidence
|
|
53
53
|
- Actual cost / benefit measurement where available
|
|
54
54
|
- Estimate refinement for future projects
|
|
55
|
+
- Role-by-role operating guidance
|
|
55
56
|
|
|
56
57
|
## How To Read These Docs
|
|
57
58
|
|
|
58
59
|
These documents record the current working hypotheses. They are not requirements for how every organization must operate.
|
|
59
60
|
|
|
60
|
-
Use `open-questions.md` to capture uncertain areas before turning them into policy. Use the YAML files in `templates/process/` as the editable source for roles, objects, workflows, and controls.
|
|
61
|
+
Use `operating-guide.md` to see how each role should choose records in normal work. Use `open-questions.md` to capture uncertain areas before turning them into policy. Use the YAML files in `templates/process/` as the editable source for roles, objects, workflows, and controls.
|
package/docs/model.md
CHANGED
|
@@ -24,7 +24,7 @@ The current early lifecycle hypothesis is `Statement -> Expectation -> Requireme
|
|
|
24
24
|
|
|
25
25
|
A separate technical specification object is not part of the current model. Implementation and verification detail should live inside a Requirement as optional requirement detail until the need for an independent object is proven.
|
|
26
26
|
|
|
27
|
-
The current engineering lifecycle hypothesis is that the main end-to-end engineering object may be `Requirement`. Requirements are shaped during elicitation, committed or deferred during Weigh, and refined into requirement detail and tasks during Build once covered by a Commitment. Task is a cross-cutting execution record with ordered entries and a current status derived from the latest status-change entry. The Engineer works primarily on Tasks and may use coding-capable tools such as Codex where appropriate. Feature Request, Feedback, Authoritative Request,
|
|
27
|
+
The current engineering lifecycle hypothesis is that the main end-to-end engineering object may be `Requirement`. Requirements are shaped during elicitation, committed or deferred during Weigh, and refined into requirement detail and tasks during Build once covered by a Commitment. Task is a cross-cutting execution record with ordered entries and a current status derived from the latest status-change entry. The Engineer works primarily on Tasks and may use coding-capable tools such as Codex where appropriate. Incident and Problem are now run-side records: Incident records a specific service-impacting occurrence, and Problem records an underlying or recurring cause evidenced by incidents. Feature Request, Feedback, Authoritative Request, Release, Deployment, and Control remain useful lifecycle concepts, but they are not separate runtime records in the current model.
|
|
28
28
|
|
|
29
29
|
The current review-note hypothesis is that Engineer input on Expectations or Requirements should be preserved as append-only free text. A review note can be marked important to draw attention, but it does not block progress, create a severity state, or require an Owner response.
|
|
30
30
|
|
|
@@ -54,11 +54,11 @@ QA verification checks whether the work satisfies requirements and acceptance cr
|
|
|
54
54
|
|
|
55
55
|
Product validation checks whether the verified result is the right product outcome.
|
|
56
56
|
|
|
57
|
-
Change and release control records the service change, readiness basis, notice, vetoes,
|
|
57
|
+
Change and release control records the service change, change type, readiness basis, notice, vetoes, result, and recovery where needed.
|
|
58
58
|
|
|
59
59
|
Deployment and operation release, monitor, and run the service safely.
|
|
60
60
|
|
|
61
|
-
`Change` is the current run-side control record for a discrete, time-bound alteration to the running service. It is not a standing Operations Plan. A Change keeps baseline sections for change plan, execution steps, rollback plan, and risk or impact, then records notice, veto,
|
|
61
|
+
`Change` is the current run-side control record for a discrete, time-bound alteration to the running service. It is not a standing Operations Plan. A Change keeps baseline sections for change type, change plan, execution steps, rollback plan, and risk or impact, including downstream impact where known: what else may be affected and what depends on what is changing. It then records notice, veto, decision, result, recovery, notes, and plan revisions as append-only events. Result and recovery events may include optional Git commit references for point-in-time traceability. DX Complete stores those references as provided; it does not call Git, validate commits, or assume a specific Git host. Emergency is a Change type, not a separate event path. DX Complete records the accountability trail; it does not perform or enforce the operation.
|
|
62
62
|
|
|
63
63
|
Support Agent work handles user-facing issues and routes signals into Owner or Operator follow-up.
|
|
64
64
|
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
# Operating Guide
|
|
2
|
+
|
|
3
|
+
DX Complete works best when each role uses the record that matches the work in front of them. This guide is the role-facing companion to the phase and records documentation.
|
|
4
|
+
|
|
5
|
+
## Owner
|
|
6
|
+
|
|
7
|
+
The Owner sets direction, weighs value against cost and risk, records Commitment or Deferral, validates outcomes, and formally accepts risk when the project should own it.
|
|
8
|
+
|
|
9
|
+
Common records:
|
|
10
|
+
|
|
11
|
+
- `Statement`
|
|
12
|
+
- `Expectation`
|
|
13
|
+
- `Benefits`
|
|
14
|
+
- `Value Realization`
|
|
15
|
+
- `Commitment`
|
|
16
|
+
- `Deferral`
|
|
17
|
+
- `Decision`
|
|
18
|
+
- `Risk`
|
|
19
|
+
|
|
20
|
+
Do not treat every comment as a requirement. Do not treat End User feedback as approval unless the same person is explicitly acting in an authority role.
|
|
21
|
+
|
|
22
|
+
## Engineer and Codex Assistance
|
|
23
|
+
|
|
24
|
+
The Engineer turns committed requirements into tasks and working changes. Codex may assist the Engineer, but Codex is a coding-capable tool, not a DX Complete role.
|
|
25
|
+
|
|
26
|
+
Default path:
|
|
27
|
+
|
|
28
|
+
```text
|
|
29
|
+
Requirement -> Task
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
Use `Task` for ordinary implementation work. Use `Decision` for meaningful choices between alternatives. Use `Risk` for uncertainty or exposure. Use `Journal` only for relevant context with no better record home. Use `Change` only when work becomes a discrete alteration to the running service.
|
|
33
|
+
|
|
34
|
+
Do not create ITSM-style records merely because implementation work is happening.
|
|
35
|
+
|
|
36
|
+
## Tester
|
|
37
|
+
|
|
38
|
+
The Tester checks completed work against requirements and success criteria. Verification evidence should stay tied to the requirement or task being checked.
|
|
39
|
+
|
|
40
|
+
Common records:
|
|
41
|
+
|
|
42
|
+
- `Task` entries for verification notes tied to implementation work.
|
|
43
|
+
- `Review Note` when the check reveals useful input on an expectation or requirement.
|
|
44
|
+
- `Risk` when the check exposes uncertainty or possible harm.
|
|
45
|
+
- `Decision` when a test result forces a choice.
|
|
46
|
+
- `Journal` when the note is useful context with no better home.
|
|
47
|
+
|
|
48
|
+
Do not default to `Change` for testing observations.
|
|
49
|
+
|
|
50
|
+
## Operator and Administration
|
|
51
|
+
|
|
52
|
+
The Operator manages run-side change, operational inventory, rollout and rollback planning, monitoring, users, permissions, settings, provisioning, and run-side security.
|
|
53
|
+
|
|
54
|
+
Common records:
|
|
55
|
+
|
|
56
|
+
- `Change` for a discrete alteration to the running service.
|
|
57
|
+
- `Environment` for a named operating context such as local, staging, or production.
|
|
58
|
+
- `Component` for an environment-specific app, database, queue, storage location, external service, or other operational item.
|
|
59
|
+
- `Maintenance Schedule` for recurring operational hygiene such as scheduled checks, reviews, rotations, or maintenance duties.
|
|
60
|
+
- `Risk` and `Decision` when run-side accountability needs to remain visible.
|
|
61
|
+
|
|
62
|
+
The Operational Registry stores pointers and identifiers, not secret values. Record where a secret is stored and what it is called; do not record the credential itself.
|
|
63
|
+
|
|
64
|
+
## Support Agent
|
|
65
|
+
|
|
66
|
+
The Support Agent helps users, captures questions and reports, and routes signals into shared follow-up only when shared follow-up is needed.
|
|
67
|
+
|
|
68
|
+
Start with `Support Request` for a user-facing question, report, request, or issue that needs shared follow-up. Use `DX Complete Ticket` only for private communication with DX Complete itself.
|
|
69
|
+
|
|
70
|
+
Possible promotions:
|
|
71
|
+
|
|
72
|
+
- `Statement` when the signal expresses a need or concern in the user's own words.
|
|
73
|
+
- `Requirement` when the desired truth needs to become buildable and checkable.
|
|
74
|
+
- `Task` when someone needs to act.
|
|
75
|
+
- `Support Request` when the signal needs a shared support thread.
|
|
76
|
+
- `Risk` when uncertainty or exposure needs to remain visible.
|
|
77
|
+
- `Decision` when a meaningful choice is needed.
|
|
78
|
+
- `Change` when the follow-up is a discrete alteration to the running service.
|
|
79
|
+
- `Journal` when the signal is relevant context with no better home.
|
|
80
|
+
|
|
81
|
+
## End User
|
|
82
|
+
|
|
83
|
+
The End User uses the service and provides requests, feedback, corrections, and issue reports. Another role captures that input when it belongs in DX Complete.
|
|
84
|
+
|
|
85
|
+
End User feedback is not authority approval unless that person is also explicitly acting in an authority role.
|
|
86
|
+
|
|
87
|
+
## Record Routing
|
|
88
|
+
|
|
89
|
+
| Situation | Use | Reason |
|
|
90
|
+
| --- | --- | --- |
|
|
91
|
+
| Normal implementation work | `Task` | A task is concrete work someone needs to do. |
|
|
92
|
+
| Meaningful choice | `Decision` | A decision keeps the choice and its inputs legible. |
|
|
93
|
+
| Uncertainty or exposure | `Risk` | A risk keeps uncertainty visible without pretending it is resolved. |
|
|
94
|
+
| Run-side alteration | `Change` | A change records service alteration, execution, rollback, and events. |
|
|
95
|
+
| User-facing support follow-up | `Support Request` | A support request keeps the shared support thread visible without turning every report into an incident. |
|
|
96
|
+
| Operational inventory | `Environment` or `Component` | The registry shows what exists and where it lives. |
|
|
97
|
+
| Recurring operational hygiene | `Maintenance Schedule` | A maintenance schedule keeps cadence and due state visible while completed changes or tasks show what happened. |
|
|
98
|
+
| Measured value after work or operation | `Value Realization` | Value realization compares baseline and actual metrics without replacing benefits or estimates. |
|
|
99
|
+
| Useful context with no better home | `Journal` | Journal is fallback context, not the default home for load-bearing records. |
|
|
100
|
+
| Question, report, request, correction, or follow-up with DX Complete | `DX Complete Ticket` | A ticket keeps private communication with DX Complete before shared process follow-up is created. |
|
|
101
|
+
|
|
102
|
+
The practical test is:
|
|
103
|
+
|
|
104
|
+
```text
|
|
105
|
+
Will anything reference or depend on this?
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
If yes, prefer the dedicated record that can carry the relationship. If no, and the context is still relevant, Journal may fit.
|
|
109
|
+
|
|
110
|
+
## ITSM Boundary
|
|
111
|
+
|
|
112
|
+
`Change` is the current first-class run-side control record. Use it for a discrete alteration to the running service, with a change type, plan, execution path, rollback path, risk and impact, downstream impact where known, and event history. Result and recovery events may include optional Git commit references for the specific execution attempt or rollback. These are references only; DX Complete does not inspect Git or require them.
|
|
113
|
+
|
|
114
|
+
`Incident` and `Problem` are current run-side records. Use Incident for a specific service-impacting or potentially service-impacting occurrence. Use Problem for an underlying or recurring cause evidenced by one or more incidents.
|
|
115
|
+
|
|
116
|
+
Do not create ITSM-style records merely because work is happening. Use service records when the information is truly run-side control, operational signal, or service history.
|
package/docs/taxonomy.md
CHANGED
|
@@ -10,14 +10,19 @@ The object taxonomy is draft material. Use it to preserve the current working mo
|
|
|
10
10
|
- Journal
|
|
11
11
|
- Environment
|
|
12
12
|
- Component
|
|
13
|
+
- Maintenance Schedule
|
|
13
14
|
- Estimate
|
|
14
15
|
- Benefits
|
|
16
|
+
- Value Realization
|
|
15
17
|
- Expectation
|
|
16
18
|
- Requirement
|
|
17
19
|
- Commitment
|
|
18
20
|
- Deferral
|
|
19
21
|
- Task
|
|
20
22
|
- Change
|
|
23
|
+
- Incident
|
|
24
|
+
- Problem
|
|
25
|
+
- Support Request
|
|
21
26
|
- Decision
|
|
22
27
|
- Risk
|
|
23
28
|
|
|
@@ -28,9 +33,6 @@ These concepts remain useful, but they are not separate runtime records in the c
|
|
|
28
33
|
- Feedback
|
|
29
34
|
- Authoritative Request
|
|
30
35
|
- Feature Request
|
|
31
|
-
- Incident
|
|
32
|
-
- Problem
|
|
33
|
-
- Support Ticket
|
|
34
36
|
- Release
|
|
35
37
|
- Deployment
|
|
36
38
|
- Control
|
|
@@ -53,10 +55,14 @@ Workspace-scoped lifecycle records use UUIDs as primary keys and links, while al
|
|
|
53
55
|
|
|
54
56
|
`Component` is one operational item in one Environment. It can describe the kind of component, where it lives, non-secret identifiers, secret pointers, and notes. Secret pointers should name where a secret is stored and what it is called, not the secret value itself. Component history should stay versioned state; service events and process history belong in Change, Decision, Risk, Task, or other matching records.
|
|
55
57
|
|
|
58
|
+
`Maintenance Schedule` is a recurring operational hygiene record. It records the name, kind, cadence, start date, rationale, and notes for scheduled checks, reviews, rotations, or maintenance duties. Due state is derived from cadence and completed Changes or Tasks linked to the schedule.
|
|
59
|
+
|
|
56
60
|
`Estimate` is the structured itemized cost record used during Weigh. It can cover requirements or expectations, rolls cost totals up while keeping one-time, recurring, period, and currency distinctions visible, and should preserve prior versions when edited.
|
|
57
61
|
|
|
58
62
|
`Benefits` is the Owner-authored benefit record used during Weigh. It can cover requirements or expectations, may include quantified or qualitative benefit items, rolls up quantified benefit totals only, and should preserve prior versions when edited.
|
|
59
63
|
|
|
64
|
+
`Value Realization` is the measured-value record used during Measure. It compares baseline and actual metrics for expectations, requirements, or commitments where measurement is available. Metrics without actual values remain open rather than blocking closure.
|
|
65
|
+
|
|
60
66
|
`Expectation` is now a runtime collection. It restates the expected result and how success will be recognized, in user-facing language. The MCP client should confirm wording before recording it on a user's behalf. Separate authority approval can be tracked when it reduces risk. Requirements should link back to the expectations they are meant to satisfy. When an expectation changes, prior versions should be kept so the current wording is not silently detached from what came before.
|
|
61
67
|
|
|
62
68
|
`ReviewNote` is not a separate collection. Expectations and Requirements can carry append-only review notes. A note can be marked important, but it does not create a severity state, block progress, or require an Owner response.
|
|
@@ -71,9 +77,9 @@ A separate technical specification object is not part of the current model. Impl
|
|
|
71
77
|
|
|
72
78
|
Approval and similar checkpoints are risk checkpoints, not blockers. A checkpoint can be approved, formally accepted as risk by the Owner, or proceeded past with the open risk still visible. Proceeding past an open checkpoint does not close or accept the risk.
|
|
73
79
|
|
|
74
|
-
`
|
|
80
|
+
`Incident`, `Problem`, and `Support Request` are current run-side or support records. Use Incident for a specific service-impacting or potentially service-impacting occurrence, Problem for an underlying or recurring cause evidenced by one or more incidents, and Support Request for a shared user-facing support thread. `Feature Request`, `Feedback`, `Authoritative Request`, `Release`, `Deployment`, `Control`, `Evidence`, and `Estimate Refinement` remain lifecycle concepts. In the current runtime, they should be represented through current records such as Requirement, Task, Change, Incident, Problem, Support Request, Risk, Decision, Estimate, Benefits, Value Realization, or DX Complete Ticket unless a later model decision promotes them into first-class records.
|
|
75
81
|
|
|
76
|
-
`Change` is now the run-side record for a discrete alteration to the running service. It should keep the original plan, execution steps, rollback plan, and risk or impact as the baseline,
|
|
82
|
+
`Change` is now the run-side record for a discrete alteration to the running service. It should keep the change type, original plan, execution steps, rollback plan, and risk or impact as the baseline, including downstream impact where known: what else may be affected and what depends on what is changing. Then use append-only events for notice, veto, decision, result, recovery, notes, and plan revisions. Result and recovery events may carry optional Git commit references for each execution attempt or rollback, but those references are recorded as provided and are not validated by DX Complete. Emergency is a Change type, not a separate event path. A Change is not a standing Operations Plan and does not enforce deployment.
|
|
77
83
|
|
|
78
84
|
`Decision` captures the matter being decided, ordered argument/note/decision entries, and links to records that informed the choice. The current decision is derived from the latest decision entry, while earlier decisions and arguments remain visible. Arguments are not weighted by default and do not need to be mapped to a single side of a choice. DX Complete preserves the decision trail; it does not decide whether the authority's reasoning was correct.
|
|
79
85
|
|
|
@@ -91,6 +97,6 @@ The installed scaffold includes `dxcomplete/process/taxonomy.yml`. Treat that fi
|
|
|
91
97
|
- Should decision arguments remain embedded text, or should they become first-class records after repeated use?
|
|
92
98
|
- How should limited-disclosure cost data be represented?
|
|
93
99
|
- Should `Authoritative Request` be a separate object or a source category for Requirements?
|
|
94
|
-
-
|
|
100
|
+
- When should a `Support Request` escalate into an `Incident`?
|
|
95
101
|
- Should `Control` be modeled as a lifecycle object, a policy object, or both?
|
|
96
102
|
- How should evidence attach to each object?
|
package/docs/workflows.md
CHANGED
|
@@ -28,7 +28,7 @@ These workflows are editable drafts. They describe likely lifecycle paths withou
|
|
|
28
28
|
|
|
29
29
|
## Draft End-To-End Flow
|
|
30
30
|
|
|
31
|
-
1. A signal enters through feedback, authoritative request, support ticket,
|
|
31
|
+
1. A signal enters through feedback, authoritative request, support ticket, service-impact event, recurring issue, or strategic direction.
|
|
32
32
|
2. Statement capture preserves the user's own words and links the work to the Workspace context.
|
|
33
33
|
3. Orient captures statement, confirms wording before recording, and restates expectations with approval where needed.
|
|
34
34
|
4. Elicitation translates expectations into requirements, dependencies, constraints, and unknowns.
|
|
@@ -41,13 +41,15 @@ These workflows are editable drafts. They describe likely lifecycle paths withou
|
|
|
41
41
|
11. Engineer implements tasks and may use Codex assistance where appropriate.
|
|
42
42
|
12. Tester verifies completed work against requirements and acceptance criteria.
|
|
43
43
|
13. Owner validates whether the result is the right outcome.
|
|
44
|
-
14. Change and release control records the service change plan, execution steps, rollback path, notice, vetoes,
|
|
44
|
+
14. Change and release control records the service change type, plan, execution steps, rollback path, notice, vetoes, and result.
|
|
45
45
|
15. Operator carries out the change in external operational tooling, then monitors and runs the service.
|
|
46
46
|
16. Environment and Component records are kept current when the operational inventory changes.
|
|
47
47
|
17. Support Agent handles user-facing issues and routes signals back into Owner or Operator follow-up.
|
|
48
48
|
18. Actual cost / benefit observations are captured where available.
|
|
49
49
|
19. Audit evidence is captured across decisions, controls, releases, deployments, measurement, and verification.
|
|
50
50
|
|
|
51
|
+
`Change` is the current first-class run-side control record. `Incident` is the current first-class record for a specific service-impacting occurrence. `Problem` is the current first-class record for an underlying or recurring cause evidenced by incidents. Use these records only when their meaning fits; do not create ITSM records merely because work is happening.
|
|
52
|
+
|
|
51
53
|
## Workflow Questions
|
|
52
54
|
|
|
53
55
|
- Which steps require explicit approval?
|
|
@@ -55,6 +57,6 @@ These workflows are editable drafts. They describe likely lifecycle paths withou
|
|
|
55
57
|
- What cost visibility is enough to proceed when baseline data is unavailable?
|
|
56
58
|
- How should proceeding past an open checkpoint be shown when the risk remains open?
|
|
57
59
|
- What evidence is required before release?
|
|
58
|
-
- What notice, veto, and emergency
|
|
60
|
+
- What notice, veto, change-type, and emergency rationale is enough for a Change record?
|
|
59
61
|
- What operational inventory belongs in Environment and Component records rather than Journal?
|
|
60
62
|
- What is the smallest useful workflow for a solo project?
|
package/package.json
CHANGED
|
@@ -1,8 +1,26 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "dxcomplete",
|
|
3
|
-
"version": "0.1
|
|
4
|
-
"description": "
|
|
3
|
+
"version": "0.2.1",
|
|
4
|
+
"description": "Install a Next.js workspace scaffold for DX Complete process records, MCP routes, and service lifecycle documentation.",
|
|
5
5
|
"type": "module",
|
|
6
|
+
"keywords": [
|
|
7
|
+
"dxcomplete",
|
|
8
|
+
"mcp",
|
|
9
|
+
"nextjs",
|
|
10
|
+
"service-management",
|
|
11
|
+
"requirements",
|
|
12
|
+
"operations",
|
|
13
|
+
"process",
|
|
14
|
+
"codex"
|
|
15
|
+
],
|
|
16
|
+
"repository": {
|
|
17
|
+
"type": "git",
|
|
18
|
+
"url": "git+https://github.com/DirectedDomains/dxcomplete.git"
|
|
19
|
+
},
|
|
20
|
+
"homepage": "https://github.com/DirectedDomains/dxcomplete#readme",
|
|
21
|
+
"bugs": {
|
|
22
|
+
"url": "https://github.com/DirectedDomains/dxcomplete/issues"
|
|
23
|
+
},
|
|
6
24
|
"bin": {
|
|
7
25
|
"dxcomplete": "dist/cli.js"
|
|
8
26
|
},
|
|
@@ -43,7 +61,7 @@
|
|
|
43
61
|
"smoke:mcp:http:change": "node scripts/smoke-mcp-http.mjs --area=change",
|
|
44
62
|
"smoke:mcp:http:tickets": "node scripts/smoke-mcp-http.mjs --area=tickets",
|
|
45
63
|
"smoke:mcp:http:journal": "node scripts/smoke-mcp-http.mjs --area=journal",
|
|
46
|
-
"
|
|
64
|
+
"runtime:work-order": "node scripts/runtime-work-order.mjs",
|
|
47
65
|
"validate:package": "node dist/cli.js validate --target . --package-layout",
|
|
48
66
|
"runtime:check": "node dist/cli.js check-runtime"
|
|
49
67
|
},
|
|
@@ -473,14 +473,14 @@ function elapsedSeconds(started) {
|
|
|
473
473
|
}
|
|
474
474
|
|
|
475
475
|
function printHelp() {
|
|
476
|
-
console.log(`
|
|
476
|
+
console.log(`runtime-work-order
|
|
477
477
|
|
|
478
478
|
Usage:
|
|
479
|
-
node scripts/
|
|
480
|
-
node scripts/
|
|
479
|
+
node scripts/runtime-work-order.mjs --plan ./work-order.json
|
|
480
|
+
node scripts/runtime-work-order.mjs --module ./one-off.mjs
|
|
481
481
|
|
|
482
482
|
Purpose:
|
|
483
|
-
Open
|
|
483
|
+
Open one runtime connection and batch ticket reads, ticket replies, simple verification,
|
|
484
484
|
and optional one-off work-order modules.
|
|
485
485
|
|
|
486
486
|
Plan shape:
|