codex-workflow-v2 2.0.0-alpha.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 +71 -0
- package/dist/src/artifacts.d.ts +4 -0
- package/dist/src/artifacts.js +106 -0
- package/dist/src/artifacts.js.map +1 -0
- package/dist/src/cli.d.ts +2 -0
- package/dist/src/cli.js +356 -0
- package/dist/src/cli.js.map +1 -0
- package/dist/src/contracts.d.ts +313 -0
- package/dist/src/contracts.js +3 -0
- package/dist/src/contracts.js.map +1 -0
- package/dist/src/diagnostics.d.ts +19 -0
- package/dist/src/diagnostics.js +25 -0
- package/dist/src/diagnostics.js.map +1 -0
- package/dist/src/domain/discovery.d.ts +8 -0
- package/dist/src/domain/discovery.js +25 -0
- package/dist/src/domain/discovery.js.map +1 -0
- package/dist/src/domain/validation.d.ts +3 -0
- package/dist/src/domain/validation.js +96 -0
- package/dist/src/domain/validation.js.map +1 -0
- package/dist/src/errors.d.ts +6 -0
- package/dist/src/errors.js +11 -0
- package/dist/src/errors.js.map +1 -0
- package/dist/src/fs-utils.d.ts +4 -0
- package/dist/src/fs-utils.js +52 -0
- package/dist/src/fs-utils.js.map +1 -0
- package/dist/src/git.d.ts +19 -0
- package/dist/src/git.js +115 -0
- package/dist/src/git.js.map +1 -0
- package/dist/src/graph.d.ts +28 -0
- package/dist/src/graph.js +263 -0
- package/dist/src/graph.js.map +1 -0
- package/dist/src/index.d.ts +12 -0
- package/dist/src/index.js +13 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/memory.d.ts +9 -0
- package/dist/src/memory.js +242 -0
- package/dist/src/memory.js.map +1 -0
- package/dist/src/migration.d.ts +46 -0
- package/dist/src/migration.js +112 -0
- package/dist/src/migration.js.map +1 -0
- package/dist/src/repository.d.ts +12 -0
- package/dist/src/repository.js +69 -0
- package/dist/src/repository.js.map +1 -0
- package/dist/src/reviewer.d.ts +82 -0
- package/dist/src/reviewer.js +184 -0
- package/dist/src/reviewer.js.map +1 -0
- package/dist/src/state/lock.d.ts +13 -0
- package/dist/src/state/lock.js +100 -0
- package/dist/src/state/lock.js.map +1 -0
- package/dist/src/state/store.d.ts +45 -0
- package/dist/src/state/store.js +185 -0
- package/dist/src/state/store.js.map +1 -0
- package/dist/src/ulid.d.ts +2 -0
- package/dist/src/ulid.js +22 -0
- package/dist/src/ulid.js.map +1 -0
- package/dist/src/version.d.ts +2 -0
- package/dist/src/version.js +3 -0
- package/dist/src/version.js.map +1 -0
- package/dist/src/workflow.d.ts +93 -0
- package/dist/src/workflow.js +1276 -0
- package/dist/src/workflow.js.map +1 -0
- package/docs/decisions.md +38 -0
- package/docs/development-flow.md +69 -0
- package/docs/project-memory.md +38 -0
- package/docs/release.md +26 -0
- package/docs/validation-report.md +19 -0
- package/package.json +56 -0
- package/plugins/codex-workflow-gateway/.codex-plugin/plugin.json +25 -0
- package/plugins/codex-workflow-gateway/references/protocol.md +66 -0
- package/plugins/codex-workflow-gateway/scripts/install-or-update.sh +26 -0
- package/plugins/codex-workflow-gateway/skills/codex-workflow-gateway/SKILL.md +72 -0
- package/references/discovery.md +12 -0
- package/references/git-policy.md +7 -0
- package/references/state-machine.md +11 -0
- package/references/validation-and-review.md +13 -0
- package/roles/delivery-coordinator.md +10 -0
- package/roles/independent-reviewer.md +10 -0
- package/roles/scope-lead.md +11 -0
- package/roles/technical-planner.md +10 -0
- package/roles/worker.md +10 -0
- package/schemas/context-envelope.schema.json +58 -0
- package/schemas/discovery.schema.json +19 -0
- package/schemas/graph-binding.schema.json +30 -0
- package/schemas/milestone.schema.json +58 -0
- package/schemas/project-knowledge-map.schema.json +37 -0
- package/schemas/review-result.schema.json +30 -0
- package/schemas/task.schema.json +39 -0
- package/templates/brief.md +21 -0
- package/templates/plan.md +17 -0
- package/templates/result.md +13 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow.js","sourceRoot":"","sources":["../../src/workflow.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
# Accepted V2 Decisions
|
|
2
|
+
|
|
3
|
+
This document closes the requirement gaps identified during the V2 design review.
|
|
4
|
+
|
|
5
|
+
1. **Milestone lifecycle.** A Milestone aggregates Tasks on an ordinary base branch; it
|
|
6
|
+
has no integration branch. Its approved Plan defines required, waived, and cancelled
|
|
7
|
+
memberships plus cross-Task checks. Amendments supersede execution authorization and
|
|
8
|
+
block new Task starts until reauthorized. Started Tasks cannot be removed. Validation
|
|
9
|
+
runs on the current clean base HEAD, and final acceptance binds Result, evidence, and
|
|
10
|
+
that HEAD. Cancellation records a reason and never reverts merged code.
|
|
11
|
+
2. **V1 transition.** V1 state is not mapped into V2 entities. `state migrate --dry-run`
|
|
12
|
+
inventories legacy paths. `state migrate --snapshot` writes a deterministic,
|
|
13
|
+
content-addressed gzip JSON archive outside the repository. It rejects symbolic links
|
|
14
|
+
and never changes, deletes, or semantically imports V1 state.
|
|
15
|
+
3. **Registry and support.** The package identity is `codex-workflow-v2` and npm
|
|
16
|
+
visibility is public. Releases use tag-triggered trusted publishing. Stable support
|
|
17
|
+
covers the latest minor release in the current major; older minors receive no backports
|
|
18
|
+
unless separately declared.
|
|
19
|
+
4. **Reviewer guarantee.** Role envelopes alone are advisory. The strict reviewer is a
|
|
20
|
+
separate ephemeral `codex exec` process with user configuration and rules ignored,
|
|
21
|
+
a read-only sandbox, a structured output schema, and a denied-write probe. Process
|
|
22
|
+
failure, invalid output, a successful write, or any repository mutation records
|
|
23
|
+
`unverified` and blocks final acceptance.
|
|
24
|
+
5. **Gateway distribution.** The gateway is shipped as the personal plugin source at
|
|
25
|
+
`plugins/codex-workflow-gateway`. Its installer performs the CLI-driven cachebuster and
|
|
26
|
+
reinstall flow. The plugin negotiates the package protocol and never copies V2 workflow
|
|
27
|
+
assets into a project repository.
|
|
28
|
+
6. **Graph binding.** `codebase-memory-mcp` remains the graph provider. The gateway obtains
|
|
29
|
+
a refresh request from the core, refreshes the product or workflow graph, and binds
|
|
30
|
+
returned evidence only when request identity and current repository/package fingerprints
|
|
31
|
+
agree. Product graph state retains the current binding; the workflow graph additionally
|
|
32
|
+
retains one previous package-version binding for rollback diagnosis. Provider failure is
|
|
33
|
+
recorded explicitly as fallback and does not replace repository knowledge.
|
|
34
|
+
7. **Runtime boundary.** V2 targets one user operating on one machine. Workflow state,
|
|
35
|
+
locks, snapshots, graph bindings, and approvals live under the user's local Codex state
|
|
36
|
+
directory. Durable product knowledge lives only in ordinary version-controlled project
|
|
37
|
+
files. Remote coordination, distributed locking, and cross-machine synchronization are
|
|
38
|
+
outside the product contract.
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
# Development Flow
|
|
2
|
+
|
|
3
|
+
## Task lifecycle
|
|
4
|
+
|
|
5
|
+
```text
|
|
6
|
+
Project Knowledge Map scan and approval
|
|
7
|
+
-> Discovery
|
|
8
|
+
-> Task materialization
|
|
9
|
+
-> Plan with STEP-* entries and knowledge/graph declarations
|
|
10
|
+
-> execution authorization
|
|
11
|
+
-> local task branch or externally owned workspace
|
|
12
|
+
-> one writer and one commit per Step
|
|
13
|
+
-> submission evidence
|
|
14
|
+
-> strict independent review
|
|
15
|
+
-> Result
|
|
16
|
+
-> final acceptance
|
|
17
|
+
-> local merge or external merge confirmation
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
Materialization requires an observable outcome, scope, acceptance criteria, and no
|
|
21
|
+
blocking unknowns. No Task identifier or branch exists before this gate. Task authorization
|
|
22
|
+
is hash-bound to Brief and Plan. Later Plan changes supersede it.
|
|
23
|
+
|
|
24
|
+
Local execution creates `codex/task-<id>-<slug>` from a clean base only after authorization.
|
|
25
|
+
An externally owned checkout must already use a dedicated non-base branch. The core never
|
|
26
|
+
creates or removes external worktrees. Each Step declares allowed writes, dependencies, and
|
|
27
|
+
checks; unexpected paths or failed checks block its atomic commit.
|
|
28
|
+
|
|
29
|
+
Submission requires a clean, auditable Task history and records evidence for the exact
|
|
30
|
+
Task head. `task review-launch` starts a separate read-only reviewer. A passing fresh review
|
|
31
|
+
permits Result creation. Human final acceptance binds Brief, Plan, Result, evidence, and
|
|
32
|
+
the accepted head. Base advancement forces synchronization, checks, review, and acceptance
|
|
33
|
+
to be repeated before merge.
|
|
34
|
+
|
|
35
|
+
## Milestone lifecycle
|
|
36
|
+
|
|
37
|
+
```text
|
|
38
|
+
Discovery -> Milestone planning -> execution authorization -> active
|
|
39
|
+
-> required Tasks merge independently into base
|
|
40
|
+
-> cross-Task validation on clean base HEAD
|
|
41
|
+
-> final acceptance -> accepted
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
A Milestone Plan records outcome, success signal, acceptance, checks, and Task membership.
|
|
45
|
+
Membership is `required`, `waived`, or `cancelled`; non-required entries require a reason.
|
|
46
|
+
Changing the Plan increments the membership revision, supersedes execution authorization,
|
|
47
|
+
and prevents new linked Tasks from starting. A Task that has started cannot be removed;
|
|
48
|
+
it can be retained as waived/cancelled with history and reason. Tasks already in progress
|
|
49
|
+
may finish while an amendment awaits authorization.
|
|
50
|
+
|
|
51
|
+
A Milestone has no integration branch. Validation requires all required Tasks to be
|
|
52
|
+
`merged`, checks the current clean base branch, and writes evidence plus Result. Final
|
|
53
|
+
acceptance binds those artifacts to the unchanged base HEAD. Cancellation records a reason
|
|
54
|
+
and never changes Task state or reverts merged commits.
|
|
55
|
+
|
|
56
|
+
## Responsibility boundaries
|
|
57
|
+
|
|
58
|
+
| Participant | Responsible for | Cannot decide |
|
|
59
|
+
| --- | --- | --- |
|
|
60
|
+
| User | map classifications, execution authorization, final acceptance, scope changes | implementation evidence |
|
|
61
|
+
| Scope Lead | discovery, facts, unknowns, Task/Milestone recommendation | production edits |
|
|
62
|
+
| Technical Planner | requirements mapping, Steps, checks, knowledge impact | authorization |
|
|
63
|
+
| Delivery Coordinator | valid transitions, dispatch, evidence collection | scope expansion |
|
|
64
|
+
| Worker | one dispatched Step within allowed paths | adjacent Steps or Plan changes |
|
|
65
|
+
| Independent Reviewer | isolated comparison of requirements, diff, checks, and evidence | fixes or acceptance |
|
|
66
|
+
| Core CLI | state, revisions, hashes, locks, Git mechanics, diagnostics | semantic product choices |
|
|
67
|
+
|
|
68
|
+
All mutations use revision compare-and-swap. Dirty state, stale hashes, concurrent writers,
|
|
69
|
+
scope drift, failed checks, invalid reviewer isolation, and changed base HEAD fail closed.
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
# Project Memory
|
|
2
|
+
|
|
3
|
+
## Durable source
|
|
4
|
+
|
|
5
|
+
Ordinary version-controlled project files are the only durable project memory. Examples
|
|
6
|
+
include `AGENTS.md`, `README.md`, architecture and decision documents, command references,
|
|
7
|
+
ownership rules, testing guidance, operations runbooks, and domain documentation. V2 does
|
|
8
|
+
not create a parallel repository memory bank and does not store file contents in local state.
|
|
9
|
+
|
|
10
|
+
## Project Knowledge Map
|
|
11
|
+
|
|
12
|
+
`project-memory scan` deterministically discovers candidate files and stores only path,
|
|
13
|
+
category, scope, authority, content hash, and verification metadata in local state. The user
|
|
14
|
+
approves canonical/supporting choices. Conflicts and missing categories remain explicit.
|
|
15
|
+
|
|
16
|
+
- Scope Lead scans, presents gaps/conflicts, and requests classification decisions.
|
|
17
|
+
- User owns canonical/supporting approval and resolves semantic conflicts.
|
|
18
|
+
- Technical Planner reads approved sources and declares knowledge impact and targets in Plan.
|
|
19
|
+
- Worker reads canonical sources plus approved Step targets and updates only targets allowed
|
|
20
|
+
by the Plan.
|
|
21
|
+
- Independent Reviewer checks that required durable knowledge changes are present and bound
|
|
22
|
+
to the reviewed commit.
|
|
23
|
+
- Delivery Coordinator re-scans after relevant changes and blocks stale Plan bindings until
|
|
24
|
+
the map is reconciled and reapproved.
|
|
25
|
+
|
|
26
|
+
If any approved file changes, the derived map becomes stale. `project-memory reconcile`
|
|
27
|
+
updates discovered metadata; changed classifications require user approval. If local state
|
|
28
|
+
is lost, the map is rebuilt from repository files.
|
|
29
|
+
|
|
30
|
+
## Codebase graph
|
|
31
|
+
|
|
32
|
+
The graph is an optional derived index, never the durable memory authority. The gateway asks
|
|
33
|
+
the core for a fingerprinted refresh request, invokes `codebase-memory-mcp`, and returns
|
|
34
|
+
evidence. The core accepts evidence only for the current root, HEAD/package fingerprint,
|
|
35
|
+
mode, and request ID. The product graph retains its current binding. The workflow graph also
|
|
36
|
+
retains one previous package-version binding. A stale or unavailable provider is recorded
|
|
37
|
+
as explicit fallback; agents continue from approved repository sources and must not present
|
|
38
|
+
fallback as fresh graph evidence.
|
package/docs/release.md
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# Release Policy
|
|
2
|
+
|
|
3
|
+
The npm package is `codex-workflow-v2` with public visibility. Consumers must pin
|
|
4
|
+
an exact version. Stable compatibility covers the latest minor release of the current
|
|
5
|
+
major only; older minors are unsupported unless a release note explicitly says otherwise.
|
|
6
|
+
|
|
7
|
+
## Release gate
|
|
8
|
+
|
|
9
|
+
Before tagging a release:
|
|
10
|
+
|
|
11
|
+
1. `npm ci`
|
|
12
|
+
2. `npm run validate`
|
|
13
|
+
3. `npm run pack:check`
|
|
14
|
+
4. `npm run smoke:downstream`
|
|
15
|
+
5. `npm run plugin:check`
|
|
16
|
+
6. `npm run release:check`
|
|
17
|
+
7. validate `plugins/codex-workflow-gateway` with the Codex plugin validator
|
|
18
|
+
|
|
19
|
+
The downstream smoke packs the actual tarball, installs it into an empty temporary project,
|
|
20
|
+
runs the packaged CLI handshake, and proves installation created none of `.codex`, `.tasks`,
|
|
21
|
+
`.increments`, or `.memory-bank` in that project.
|
|
22
|
+
|
|
23
|
+
Tag releases as `v<package-version>`. The tag workflow verifies the tag/package match and
|
|
24
|
+
uses npm trusted publishing with public access. For a public GitHub repository and public
|
|
25
|
+
package, npm trusted publishing generates provenance automatically. Publishing is never
|
|
26
|
+
performed by local validation commands.
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# V2 Alpha Validation Report
|
|
2
|
+
|
|
3
|
+
Validated on 2026-07-16 with Node.js 24.17.0 and Codex CLI 0.144.5.
|
|
4
|
+
|
|
5
|
+
- TypeScript typecheck and build passed.
|
|
6
|
+
- 32 unit/integration tests passed, including Task lifecycle, Milestone amendments and
|
|
7
|
+
acceptance, Project Knowledge Map staleness, graph binding, deterministic V1 snapshot,
|
|
8
|
+
symlink rejection, writer leases, and strict reviewer fail-closed behavior.
|
|
9
|
+
- npm dry-run packaging included runtime, schemas, roles, references, docs, and personal
|
|
10
|
+
plugin source.
|
|
11
|
+
- downstream tarball installation and packaged CLI handshake passed; installation created
|
|
12
|
+
none of the forbidden repository workflow directories.
|
|
13
|
+
- plugin source passed both the repository release check and the Codex plugin validator.
|
|
14
|
+
- a real ephemeral `codex exec` read-only probe attempted to create
|
|
15
|
+
`.codex-reviewer-write-probe`; the runtime denied it with `Operation not permitted`, the
|
|
16
|
+
file did not appear, and structured output reported `isolationProbe: "denied"`.
|
|
17
|
+
|
|
18
|
+
This report validates the listed runtime versions. The strict reviewer remains fail-closed
|
|
19
|
+
on other versions: inability to prove isolation records `unverified` and blocks acceptance.
|
package/package.json
ADDED
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "codex-workflow-v2",
|
|
3
|
+
"version": "2.0.0-alpha.1",
|
|
4
|
+
"description": "Requirements-first Codex development workflow with local state and explicit Git ownership.",
|
|
5
|
+
"repository": {
|
|
6
|
+
"type": "git",
|
|
7
|
+
"url": "git+https://github.com/DimaKravc/codex-workflow-v2.git"
|
|
8
|
+
},
|
|
9
|
+
"homepage": "https://github.com/DimaKravc/codex-workflow-v2#readme",
|
|
10
|
+
"bugs": {
|
|
11
|
+
"url": "https://github.com/DimaKravc/codex-workflow-v2/issues"
|
|
12
|
+
},
|
|
13
|
+
"type": "module",
|
|
14
|
+
"private": false,
|
|
15
|
+
"publishConfig": {
|
|
16
|
+
"access": "public"
|
|
17
|
+
},
|
|
18
|
+
"engines": {
|
|
19
|
+
"node": ">=22"
|
|
20
|
+
},
|
|
21
|
+
"bin": {
|
|
22
|
+
"codex-workflow": "dist/src/cli.js"
|
|
23
|
+
},
|
|
24
|
+
"exports": {
|
|
25
|
+
".": "./dist/src/index.js",
|
|
26
|
+
"./contracts": "./dist/src/contracts.js",
|
|
27
|
+
"./schemas/*": "./schemas/*"
|
|
28
|
+
},
|
|
29
|
+
"files": [
|
|
30
|
+
"dist",
|
|
31
|
+
"schemas",
|
|
32
|
+
"templates",
|
|
33
|
+
"roles",
|
|
34
|
+
"references",
|
|
35
|
+
"plugins",
|
|
36
|
+
"docs",
|
|
37
|
+
"README.md"
|
|
38
|
+
],
|
|
39
|
+
"scripts": {
|
|
40
|
+
"clean": "node --eval \"import('node:fs').then(({rmSync}) => { rmSync('dist', {recursive:true, force:true}); rmSync('.test-dist', {recursive:true, force:true}); })\"",
|
|
41
|
+
"build": "npm run clean && tsc -p tsconfig.build.json && node scripts/mark-cli-executable.mjs",
|
|
42
|
+
"typecheck": "tsc -p tsconfig.json --noEmit",
|
|
43
|
+
"test": "npm run build && tsc -p tsconfig.test.json && node --test .test-dist/tests/*.test.js",
|
|
44
|
+
"validate": "npm run typecheck && npm test",
|
|
45
|
+
"pack:check": "npm run build && npm pack --dry-run",
|
|
46
|
+
"smoke:downstream": "npm run build && node scripts/downstream-smoke.mjs",
|
|
47
|
+
"plugin:check": "node scripts/validate-plugin.mjs",
|
|
48
|
+
"release:check": "node scripts/release-check.mjs",
|
|
49
|
+
"publish:release": "node scripts/publish.mjs"
|
|
50
|
+
},
|
|
51
|
+
"devDependencies": {
|
|
52
|
+
"@types/node": "24.10.1",
|
|
53
|
+
"typescript": "5.9.3"
|
|
54
|
+
},
|
|
55
|
+
"license": "MIT"
|
|
56
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "codex-workflow-gateway",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "Thin personal Codex gateway for exact project-local Codex Workflow V2 packages and codebase-memory-mcp.",
|
|
5
|
+
"author": {
|
|
6
|
+
"name": "Codex Workflow Maintainers"
|
|
7
|
+
},
|
|
8
|
+
"license": "MIT",
|
|
9
|
+
"keywords": ["codex", "workflow", "codebase-memory", "gateway"],
|
|
10
|
+
"skills": "./skills/",
|
|
11
|
+
"interface": {
|
|
12
|
+
"displayName": "Codex Workflow Gateway",
|
|
13
|
+
"shortDescription": "Drive the exact V2 workflow installed in the active repository.",
|
|
14
|
+
"longDescription": "Resolves the exact project-local Codex Workflow V2 package, delegates workflow semantics to its CLI, and maintains derived codebase-memory graph bindings with explicit fallback evidence.",
|
|
15
|
+
"developerName": "Codex Workflow Maintainers",
|
|
16
|
+
"category": "Productivity",
|
|
17
|
+
"capabilities": ["Interactive"],
|
|
18
|
+
"defaultPrompt": [
|
|
19
|
+
"Show the next valid Codex Workflow V2 action.",
|
|
20
|
+
"Refresh the project code graph for planning.",
|
|
21
|
+
"Check project memory and workflow readiness."
|
|
22
|
+
],
|
|
23
|
+
"brandColor": "#2563EB"
|
|
24
|
+
}
|
|
25
|
+
}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
# Gateway Protocol V1
|
|
2
|
+
|
|
3
|
+
## Handshake
|
|
4
|
+
|
|
5
|
+
Run:
|
|
6
|
+
|
|
7
|
+
```text
|
|
8
|
+
codex-workflow gateway handshake --repo <git-root>
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
Require package name `codex-workflow-v2`, protocol version `1`, state
|
|
12
|
+
schema version `1`, and the capabilities needed for the requested operation.
|
|
13
|
+
|
|
14
|
+
## Graph Refresh Request
|
|
15
|
+
|
|
16
|
+
The package returns:
|
|
17
|
+
|
|
18
|
+
```json
|
|
19
|
+
{
|
|
20
|
+
"protocolVersion": 1,
|
|
21
|
+
"requestId": "uuid",
|
|
22
|
+
"projectId": "local-project-id",
|
|
23
|
+
"graphKind": "product",
|
|
24
|
+
"sourceRoot": "/absolute/local/path",
|
|
25
|
+
"rootFingerprint": "sha256",
|
|
26
|
+
"indexedHead": "git-sha-or-null",
|
|
27
|
+
"packageVersion": null,
|
|
28
|
+
"manifestHash": null,
|
|
29
|
+
"mode": "moderate",
|
|
30
|
+
"persistence": false,
|
|
31
|
+
"issuedAt": "ISO-8601"
|
|
32
|
+
}
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
`workflow` requests set packageVersion and manifestHash and point sourceRoot to
|
|
36
|
+
the prepared versioned workflow view.
|
|
37
|
+
|
|
38
|
+
## Evidence
|
|
39
|
+
|
|
40
|
+
Return the request unchanged with:
|
|
41
|
+
|
|
42
|
+
```json
|
|
43
|
+
{
|
|
44
|
+
"requestId": "same-uuid",
|
|
45
|
+
"provider": "codebase-memory-mcp",
|
|
46
|
+
"projectKey": "provider-project-key",
|
|
47
|
+
"rootFingerprint": "same-sha256",
|
|
48
|
+
"indexedHead": "same-git-sha-or-null",
|
|
49
|
+
"packageVersion": null,
|
|
50
|
+
"manifestHash": null,
|
|
51
|
+
"mode": "moderate",
|
|
52
|
+
"status": "ready",
|
|
53
|
+
"nodeCount": 100,
|
|
54
|
+
"edgeCount": 200,
|
|
55
|
+
"observedAt": "ISO-8601"
|
|
56
|
+
}
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
The package rejects mismatched or stale requests. Absolute source paths remain
|
|
60
|
+
local workflow data and are not project knowledge.
|
|
61
|
+
|
|
62
|
+
## Retention
|
|
63
|
+
|
|
64
|
+
Product binding stores only the current evidence. Workflow binding stores the
|
|
65
|
+
current package evidence plus one previous package snapshot. A new snapshot is
|
|
66
|
+
retained only after the new binding is ready.
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
#!/bin/sh
|
|
2
|
+
set -eu
|
|
3
|
+
|
|
4
|
+
plugin_name="codex-workflow-gateway"
|
|
5
|
+
source_dir=$(CDPATH= cd -- "$(dirname -- "$0")/.." && pwd)
|
|
6
|
+
plugin_creator_root=${PLUGIN_CREATOR_ROOT:-"$HOME/.codex/skills/.system/plugin-creator"}
|
|
7
|
+
destination_root=${CODEX_PERSONAL_PLUGIN_ROOT:-"$HOME/plugins"}
|
|
8
|
+
destination="$destination_root/$plugin_name"
|
|
9
|
+
|
|
10
|
+
if [ ! -f "$plugin_creator_root/scripts/create_basic_plugin.py" ]; then
|
|
11
|
+
echo "plugin-creator skill was not found at $plugin_creator_root" >&2
|
|
12
|
+
exit 2
|
|
13
|
+
fi
|
|
14
|
+
|
|
15
|
+
if [ ! -d "$destination" ]; then
|
|
16
|
+
python3 "$plugin_creator_root/scripts/create_basic_plugin.py" "$plugin_name" \
|
|
17
|
+
--path "$destination_root" --with-skills --with-scripts --with-marketplace
|
|
18
|
+
fi
|
|
19
|
+
|
|
20
|
+
cp -R "$source_dir/." "$destination/"
|
|
21
|
+
python3 "$plugin_creator_root/scripts/update_plugin_cachebuster.py" "$destination"
|
|
22
|
+
python3 "$plugin_creator_root/scripts/validate_plugin.py" "$destination"
|
|
23
|
+
marketplace_name=$(python3 "$plugin_creator_root/scripts/read_marketplace_name.py")
|
|
24
|
+
codex plugin add "$plugin_name@$marketplace_name"
|
|
25
|
+
|
|
26
|
+
echo "Installed $plugin_name. Start a new Codex task to load the updated plugin."
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: codex-workflow-gateway
|
|
3
|
+
description: Resolve and drive the exact codex-workflow-v2 package installed in the active repository, including derived codebase-memory graph refresh and fallback evidence.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Codex Workflow Gateway
|
|
7
|
+
|
|
8
|
+
## Boundary
|
|
9
|
+
|
|
10
|
+
This is a thin personal integration. It does not define workflow states, role
|
|
11
|
+
semantics, requirements, approvals, or project knowledge. Those come from the
|
|
12
|
+
exact `codex-workflow-v2` package and ordinary files in the active Git
|
|
13
|
+
repository.
|
|
14
|
+
|
|
15
|
+
Never use a global workflow package, a mutable npm range, `latest`, V1 overlay
|
|
16
|
+
files, or MCP ADR storage as a fallback.
|
|
17
|
+
|
|
18
|
+
## Resolve The Active Package
|
|
19
|
+
|
|
20
|
+
1. Resolve the active Git root with `git rev-parse --show-toplevel`.
|
|
21
|
+
2. Read its `package.json` and require an exact version string for
|
|
22
|
+
`codex-workflow-v2` in `devDependencies`.
|
|
23
|
+
3. Resolve `node_modules/codex-workflow-v2/package.json` from that root.
|
|
24
|
+
4. Require the installed version to equal the declared exact version.
|
|
25
|
+
5. Invoke only that package's `dist/src/cli.js` with the current Git root as
|
|
26
|
+
`--repo`.
|
|
27
|
+
6. Run `gateway handshake` before other actions. Stop on package, protocol, or
|
|
28
|
+
state-schema incompatibility.
|
|
29
|
+
|
|
30
|
+
If any step fails, report the concrete diagnostic. Do not load workflow
|
|
31
|
+
semantics from this skill.
|
|
32
|
+
|
|
33
|
+
## Project Knowledge
|
|
34
|
+
|
|
35
|
+
Use package commands `project-memory scan|show|status|approve|reconcile`.
|
|
36
|
+
Project files are authoritative. The local map contains only paths,
|
|
37
|
+
classifications, hashes, gaps, conflicts, and approval evidence.
|
|
38
|
+
|
|
39
|
+
Do not create a memory directory or write project files during scan.
|
|
40
|
+
|
|
41
|
+
## Product Or Workflow Graph Refresh
|
|
42
|
+
|
|
43
|
+
1. Run `graph refresh-request --kind product|workflow --mode moderate`.
|
|
44
|
+
2. Use `codebase-memory-mcp` to list projects and match the request source root.
|
|
45
|
+
3. Stop for user selection when more than one project remains plausible.
|
|
46
|
+
4. Check `index_status`; call `index_repository` with the request source root,
|
|
47
|
+
mode, and `persistence: false` when missing or stale.
|
|
48
|
+
5. Build evidence exactly as specified in `references/protocol.md`.
|
|
49
|
+
6. Pipe `{ "request": ..., "evidence": ... }` to `graph bind --stdin`, passing
|
|
50
|
+
the current binding revision when one exists.
|
|
51
|
+
|
|
52
|
+
When MCP is unavailable, run `graph fallback --kind ... --reason ...`. Continue
|
|
53
|
+
with Git, direct file reads, and configured tests unless another requirement
|
|
54
|
+
independently blocks the workflow.
|
|
55
|
+
|
|
56
|
+
## Role Use
|
|
57
|
+
|
|
58
|
+
- Scope Lead: architecture and broad search only.
|
|
59
|
+
- Technical Planner: architecture, search, and trace evidence.
|
|
60
|
+
- Worker: targeted search, trace, and snippets for its Step.
|
|
61
|
+
- Delivery Coordinator: list, status, index, detect, and bind lifecycle.
|
|
62
|
+
- Independent Reviewer: receives recorded evidence and confirms critical
|
|
63
|
+
claims against files, Git, and tests.
|
|
64
|
+
|
|
65
|
+
## Stop Conditions
|
|
66
|
+
|
|
67
|
+
- Dependency version is missing, ranged, or differs from the installed package.
|
|
68
|
+
- Gateway handshake is incompatible.
|
|
69
|
+
- MCP project identity is ambiguous.
|
|
70
|
+
- A request changes before evidence is bound.
|
|
71
|
+
- An action would make MCP or the local map authoritative project memory.
|
|
72
|
+
- A requested mutation is not authorized by the package CLI state.
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
# Discovery Rules
|
|
2
|
+
|
|
3
|
+
Discovery precedes Task IDs, branches, and lifecycle files. It records facts, decisions,
|
|
4
|
+
assumptions, unknowns, scope, constraints, observable outcome, and acceptance. The CLI
|
|
5
|
+
permits materialization only when outcome, scope, acceptance, and blocking-unknown gates
|
|
6
|
+
are satisfied. Readiness is a guardrail, not proof that requirements are semantically good.
|
|
7
|
+
|
|
8
|
+
Before code-aware discovery, Scope Lead runs `project-memory scan`, proposes
|
|
9
|
+
canonical/supporting classifications, records gaps and conflicts, and obtains user approval.
|
|
10
|
+
The map stores only paths, classifications, and hashes; ordinary repository files remain the
|
|
11
|
+
only durable project-knowledge source. Losing local workflow state requires a rescan, not a
|
|
12
|
+
memory migration.
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
# Git Policy
|
|
2
|
+
|
|
3
|
+
The default mode uses a dedicated task branch in the current clean checkout. The core
|
|
4
|
+
does not create or remove worktrees. An externally supplied worktree or clone must already
|
|
5
|
+
be on a dedicated non-base branch; its provider owns merge and cleanup. Every completed
|
|
6
|
+
Step becomes one commit with Task and Step trailers. Unexpected changed paths block the
|
|
7
|
+
commit. Base advancement invalidates validation and final acceptance before merge.
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# State Machine Rules
|
|
2
|
+
|
|
3
|
+
All mutations use an expected revision. A mismatch fails instead of merging concurrent
|
|
4
|
+
updates. Execution requires authorization bound to Brief and Plan hashes. Review is bound
|
|
5
|
+
to the task commit and Brief, Plan, and evidence hashes. Final acceptance is a separate
|
|
6
|
+
human event bound to Result, evidence, and commit. Locks expire only diagnostically;
|
|
7
|
+
removing a stale lock is always an explicit repair operation.
|
|
8
|
+
|
|
9
|
+
Milestone authorization is bound to its Plan and membership revision. Plan amendments
|
|
10
|
+
supersede authorization. Milestone validation and acceptance are bound to the current base
|
|
11
|
+
HEAD; cancellation records intent but performs no Git reversal.
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# Validation and Review
|
|
2
|
+
|
|
3
|
+
Configured Step checks must pass before the Step commit is recorded. Submission produces
|
|
4
|
+
evidence for the exact task-branch head. Independent review is read-only and produces a
|
|
5
|
+
version-bound result. Any later commit or change to Brief, Plan, or evidence makes that
|
|
6
|
+
review stale. The user grants final acceptance only after a passing fresh review and a
|
|
7
|
+
human-readable Result.
|
|
8
|
+
|
|
9
|
+
The strict path is `task review-launch`. It starts an ephemeral Codex process with user
|
|
10
|
+
configuration and rules ignored, a read-only sandbox, structured output, and an attempted
|
|
11
|
+
write probe. The core seals repository HEAD, status, and content before/after the process.
|
|
12
|
+
Any process error, malformed output, successful write, or changed seal records an
|
|
13
|
+
`unverified` review and blocks Result creation and final acceptance.
|