@mriekki/project-forge 0.0.0-stage → 2.0.0
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 +134 -2
- package/assets/components.json +33 -0
- package/assets/core/distribution.json +66 -0
- package/assets/deployment/distribution.json +54 -0
- package/assets/generated/ASSEMBLY.json +557 -0
- package/assets/generated/core/core/agents/coach.agent.md +69 -0
- package/assets/generated/core/core/agents/reviewer.agent.md +85 -0
- package/assets/generated/core/core/instructions/project-forge-docs.instructions.md +45 -0
- package/assets/generated/core/core/instructions/project-forge-workflow.instructions.md +79 -0
- package/assets/generated/core/core/learning/CODING_DRILLS.md +35 -0
- package/assets/generated/core/core/learning/DIAGRAM_GUIDE.md +59 -0
- package/assets/generated/core/core/learning/ENGINEERING_LEARNING_WORKBOOK.md +108 -0
- package/assets/generated/core/core/learning/LEARNING_MAP.md +108 -0
- package/assets/generated/core/core/learning/LEARNING_PROGRESS.md +39 -0
- package/assets/generated/core/core/learning/RESOURCE_CATALOG.md +25 -0
- package/assets/generated/core/core/learning/SQL_DRILLS.md +90 -0
- package/assets/generated/core/core/learning/SYSTEM_DESIGN_DRILLS.md +301 -0
- package/assets/generated/core/core/process/COACHING_GUIDE.md +92 -0
- package/assets/generated/core/core/process/DATABASE_LEARNING_WORKBENCH.md +397 -0
- package/assets/generated/core/core/process/DEPLOYMENT_ENABLEMENT.md +166 -0
- package/assets/generated/core/core/process/GUIDED_NEXT_STEPS.md +48 -0
- package/assets/generated/core/core/process/HUMAN_GATES.md +83 -0
- package/assets/generated/core/core/process/INTERACTIVE_SESSION_GUIDE.md +64 -0
- package/assets/generated/core/core/process/PROJECT_DOCUMENTATION_FRAMEWORK.md +326 -0
- package/assets/generated/core/core/process/PROJECT_FORGE_ENGINEERING_GUIDE.md +308 -0
- package/assets/generated/core/core/process/PR_WORKFLOW.md +55 -0
- package/assets/generated/core/core/process/SETUP_ACCEPTANCE_CHECKLIST.md +72 -0
- package/assets/generated/core/core/process/SYSTEM_DESIGN_LEARNING_WORKBENCH.md +520 -0
- package/assets/generated/core/core/process/WORK_ITEM_MODEL.md +56 -0
- package/assets/generated/core/core/skills/cleanup-branches/SKILL.md +190 -0
- package/assets/generated/core/core/skills/coach/SKILL.md +174 -0
- package/assets/generated/core/core/skills/code-walkthrough/SKILL.md +197 -0
- package/assets/generated/core/core/skills/core-sync/SKILL.md +178 -0
- package/assets/generated/core/core/skills/db-lab/SKILL.md +245 -0
- package/assets/generated/core/core/skills/define-feature/SKILL.md +144 -0
- package/assets/generated/core/core/skills/deliver/SKILL.md +397 -0
- package/assets/generated/core/core/skills/deploy/SKILL.md +188 -0
- package/assets/generated/core/core/skills/deployment-readiness/SKILL.md +234 -0
- package/assets/generated/core/core/skills/developer-env-mode/SKILL.md +231 -0
- package/assets/generated/core/core/skills/docs/SKILL.md +116 -0
- package/assets/generated/core/core/skills/grill-me/SKILL.md +77 -0
- package/assets/generated/core/core/skills/grill-with-docs/SKILL.md +90 -0
- package/assets/generated/core/core/skills/learning-review/SKILL.md +90 -0
- package/assets/generated/core/core/skills/next-step/SKILL.md +221 -0
- package/assets/generated/core/core/skills/progress/SKILL.md +207 -0
- package/assets/generated/core/core/skills/project-forge-update/SKILL.md +228 -0
- package/assets/generated/core/core/skills/pull-latest/SKILL.md +166 -0
- package/assets/generated/core/core/skills/refine-requirements/SKILL.md +207 -0
- package/assets/generated/core/core/skills/setup/SKILL.md +362 -0
- package/assets/generated/core/core/skills/start-work/SKILL.md +190 -0
- package/assets/generated/core/core/skills/system-lab/SKILL.md +333 -0
- package/assets/generated/core/core/skills/tear-down/SKILL.md +140 -0
- package/assets/generated/core/core/skills/upstream-fix/SKILL.md +221 -0
- package/assets/generated/core/core/skills/wait-what/SKILL.md +86 -0
- package/assets/generated/core/core/templates/ADR_TEMPLATE.md +41 -0
- package/assets/generated/core/core/templates/FEATURE_BRIEF_TEMPLATE.md +27 -0
- package/assets/generated/core/core/templates/PRODUCT_BRIEF_TEMPLATE.md +27 -0
- package/assets/generated/core/core/templates/PULL_REQUEST_TEMPLATE.md +37 -0
- package/assets/generated/core/core/templates/REQUIREMENTS_TEMPLATE.md +17 -0
- package/assets/generated/core/profiles/greenfield/project-forge-workspace.json +12 -0
- package/assets/generated/core/tools/db_lab/sqlite_workbench.py +463 -0
- package/assets/generated/core/tools/docs_site/docs_site.py +512 -0
- package/assets/generated/core/tools/package/check_baseline.py +102 -0
- package/assets/generated/core/tools/package/check_upstream.py +171 -0
- package/assets/generated/core/tools/system_lab/system_workbench.py +243 -0
- package/assets/generated/deployment/distribution/project-forge-deploy.py +8 -0
- package/assets/generated/deployment/docs/DEVELOPER_ENVIRONMENTS.md +335 -0
- package/assets/generated/deployment/docs/ENVIRONMENT_PROOF.md +95 -0
- package/assets/generated/deployment/docs/WORKSPACE_INSTANCES.md +154 -0
- package/assets/generated/deployment/docs/images/developer-environment-journey.svg +56 -0
- package/assets/generated/deployment/docs/images/personal-environment-architecture.svg +54 -0
- package/assets/generated/deployment/docs/images/poc-environment-model.svg +61 -0
- package/assets/generated/deployment/src/project_forge_deployment/__init__.py +3 -0
- package/assets/generated/deployment/src/project_forge_deployment/__main__.py +3 -0
- package/assets/generated/deployment/src/project_forge_deployment/app_cli.py +163 -0
- package/assets/generated/deployment/src/project_forge_deployment/app_runtime.py +455 -0
- package/assets/generated/deployment/src/project_forge_deployment/app_runtime_remote.py +416 -0
- package/assets/generated/deployment/src/project_forge_deployment/app_runtime_workstation.py +136 -0
- package/assets/generated/deployment/src/project_forge_deployment/box_platform.py +208 -0
- package/assets/generated/deployment/src/project_forge_deployment/box_platform_assets.py +100 -0
- package/assets/generated/deployment/src/project_forge_deployment/box_platform_remote.py +271 -0
- package/assets/generated/deployment/src/project_forge_deployment/cli.py +437 -0
- package/assets/generated/deployment/src/project_forge_deployment/doctor.py +121 -0
- package/assets/generated/deployment/src/project_forge_deployment/entrypoint.py +37 -0
- package/assets/generated/deployment/src/project_forge_deployment/environment_cli.py +271 -0
- package/assets/generated/deployment/src/project_forge_deployment/environment_probe.py +228 -0
- package/assets/generated/deployment/src/project_forge_deployment/errors.py +5 -0
- package/assets/generated/deployment/src/project_forge_deployment/home_lab.py +328 -0
- package/assets/generated/deployment/src/project_forge_deployment/image_transfer.py +105 -0
- package/assets/generated/deployment/src/project_forge_deployment/keys.py +171 -0
- package/assets/generated/deployment/src/project_forge_deployment/local_cli.py +189 -0
- package/assets/generated/deployment/src/project_forge_deployment/local_runtime.py +526 -0
- package/assets/generated/deployment/src/project_forge_deployment/local_spec.py +82 -0
- package/assets/generated/deployment/src/project_forge_deployment/local_sqlite.py +205 -0
- package/assets/generated/deployment/src/project_forge_deployment/portable_profile.py +181 -0
- package/assets/generated/deployment/src/project_forge_deployment/profile_migration.py +70 -0
- package/assets/generated/deployment/src/project_forge_deployment/profile_repository.py +348 -0
- package/assets/generated/deployment/src/project_forge_deployment/profiles.py +204 -0
- package/assets/generated/deployment/src/project_forge_deployment/registry_access.py +114 -0
- package/assets/generated/deployment/src/project_forge_deployment/registry_cli.py +51 -0
- package/assets/generated/deployment/src/project_forge_deployment/route_registry.py +367 -0
- package/assets/generated/deployment/src/project_forge_deployment/route_registry_remote.py +443 -0
- package/assets/generated/deployment/src/project_forge_deployment/security.py +290 -0
- package/assets/generated/deployment/src/project_forge_deployment/sqlite_adapter.py +335 -0
- package/assets/generated/deployment/src/project_forge_deployment/sqlite_adapter_remote.py +340 -0
- package/assets/generated/deployment/src/project_forge_deployment/sqlite_cli.py +86 -0
- package/assets/generated/deployment/src/project_forge_deployment/sqlite_import_recovery.py +437 -0
- package/assets/generated/deployment/src/project_forge_deployment/ssh.py +119 -0
- package/assets/generated/deployment/src/project_forge_deployment/teardown.py +300 -0
- package/assets/generated/deployment/src/project_forge_deployment/teardown_cli.py +139 -0
- package/assets/generated/deployment/src/project_forge_deployment/teardown_remote.py +100 -0
- package/assets/generated/deployment/src/project_forge_deployment/trust.py +278 -0
- package/bin/project-forge.mjs +9 -0
- package/package.json +31 -4
- package/src/cli.mjs +150 -0
- package/src/engine.mjs +243 -0
- package/src/package-data.mjs +18 -0
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: grill-with-docs
|
|
3
|
+
description: Continuously challenge requirements/design and reconcile resolved decisions into permitted authoritative/supplemental documents or proposed external-work-item updates.
|
|
4
|
+
argument-hint: "<work-item ID, external key, document, plan, or topic>"
|
|
5
|
+
user-invocable: true
|
|
6
|
+
disable-model-invocation: true
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Grill With Docs
|
|
10
|
+
|
|
11
|
+
This is the documentation-aware form of `/grill-me`.
|
|
12
|
+
|
|
13
|
+
## 1. Resolve authority
|
|
14
|
+
|
|
15
|
+
Read `.github/project-forge-workspace.json` when present.
|
|
16
|
+
|
|
17
|
+
Determine:
|
|
18
|
+
- authoritative work-item source,
|
|
19
|
+
- which local documents are authoritative/supplemental/read-only/not-used,
|
|
20
|
+
- whether an external write integration is actually available and permitted.
|
|
21
|
+
|
|
22
|
+
Never assume Product/Feature Briefs exist. Never assume `Jira Epic == Feature Brief`.
|
|
23
|
+
|
|
24
|
+
## 2. Continuous grilling
|
|
25
|
+
|
|
26
|
+
Ask one material question at a time and challenge:
|
|
27
|
+
- ambiguous outcomes,
|
|
28
|
+
- missing domain/engineering rules,
|
|
29
|
+
- contradictory requirements,
|
|
30
|
+
- lifecycle/destructive behavior,
|
|
31
|
+
- data integrity/concurrency,
|
|
32
|
+
- failure behavior,
|
|
33
|
+
- accessibility/UX implications when relevant,
|
|
34
|
+
- architecture/operational tradeoffs,
|
|
35
|
+
- testability.
|
|
36
|
+
|
|
37
|
+
When the challenge is a bounded decision with a small credible option set, use the choice-first interaction guidance from `INTERACTIVE_SESSION_GUIDE.md` and explain important tradeoffs. When the purpose is to expose or strengthen the human's reasoning, ask open-ended first; introduce options or hints later only when useful as scaffolding.
|
|
38
|
+
|
|
39
|
+
Cadence:
|
|
40
|
+
|
|
41
|
+
```text
|
|
42
|
+
question
|
|
43
|
+
→ human answer
|
|
44
|
+
→ challenge/analyze
|
|
45
|
+
→ reconcile the resolved decision when already authorized
|
|
46
|
+
→ next material question
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
Do not ask whether to continue after every answer.
|
|
50
|
+
|
|
51
|
+
## 3. Reconcile to the right authority
|
|
52
|
+
|
|
53
|
+
When a decision is resolved:
|
|
54
|
+
- update an existing permitted local authority/supplement only when the current session authorizes document edits;
|
|
55
|
+
- if Jira/GitHub/another external system is authoritative and no permitted write integration is available, accumulate a concise `PROPOSED EXTERNAL WORK-ITEM UPDATE`;
|
|
56
|
+
- if a permitted external write integration exists, require an explicit `[EXTERNAL WRITE]` choice before writing externally;
|
|
57
|
+
- never create a competing local source merely to store an answer.
|
|
58
|
+
|
|
59
|
+
For local-document models, common homes are:
|
|
60
|
+
- brief: high-level scope/outcome/major rule,
|
|
61
|
+
- combined requirements: detailed user/engineering behavior and testable scenarios,
|
|
62
|
+
- decisions: resolved work-item decision/basis,
|
|
63
|
+
- ADR: only a meaningful cross-cutting architecture decision.
|
|
64
|
+
|
|
65
|
+
## 4. Editing authorization
|
|
66
|
+
|
|
67
|
+
Invocation alone does not imply broad document-write permission.
|
|
68
|
+
|
|
69
|
+
When document changes are needed, present a bounded choice such as:
|
|
70
|
+
|
|
71
|
+
```text
|
|
72
|
+
1. Continue grilling only [READ ONLY]
|
|
73
|
+
2. Reconcile resolved decisions during this session [MODIFIES DOCS]
|
|
74
|
+
3. Stop [NO ACTION]
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
After option 2 is selected, focused updates to the permitted current work-item documents are authorized for the active session. Do not ask again after each answer.
|
|
78
|
+
|
|
79
|
+
Pause only when a new answer would change higher-level approved scope, contradict another authority/ADR, or require a new cross-cutting decision.
|
|
80
|
+
|
|
81
|
+
## 5. Stop boundary
|
|
82
|
+
|
|
83
|
+
Do not implement production code.
|
|
84
|
+
|
|
85
|
+
At natural completion summarize:
|
|
86
|
+
- decisions resolved,
|
|
87
|
+
- documents/proposed external updates changed,
|
|
88
|
+
- remaining conflicts/open items.
|
|
89
|
+
|
|
90
|
+
If systematic detailed coverage is still needed, recommend `/refine-requirements`.
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: learning-review
|
|
3
|
+
description: Optional structured post-build understanding check using actual implementation, tests, decisions, and work-item context.
|
|
4
|
+
argument-hint: "<work-item ID, external key, or topic>"
|
|
5
|
+
user-invocable: true
|
|
6
|
+
disable-model-invocation: true
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Learning Review
|
|
10
|
+
|
|
11
|
+
Default to post-build learning from real evidence.
|
|
12
|
+
|
|
13
|
+
`/learning-review` is primarily assessment. For an instructional changed-file walkthrough first, use `/code-walkthrough`.
|
|
14
|
+
|
|
15
|
+
## 1. Context
|
|
16
|
+
|
|
17
|
+
Read only relevant:
|
|
18
|
+
- work-item/requirements context,
|
|
19
|
+
- changed code/diff,
|
|
20
|
+
- tests and observed results,
|
|
21
|
+
- important decisions/architecture.
|
|
22
|
+
|
|
23
|
+
Identify 3–6 concepts the developer should understand.
|
|
24
|
+
|
|
25
|
+
## 2. Continuous cadence
|
|
26
|
+
|
|
27
|
+
Ask one question at a time:
|
|
28
|
+
|
|
29
|
+
```text
|
|
30
|
+
question
|
|
31
|
+
→ human answer
|
|
32
|
+
→ critique accuracy/depth/credibility
|
|
33
|
+
→ teach missing concept when useful
|
|
34
|
+
→ next question
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
Do not ask whether to continue after every answer.
|
|
38
|
+
|
|
39
|
+
Assess:
|
|
40
|
+
- architecture/request/data flow,
|
|
41
|
+
- technical decisions and alternatives,
|
|
42
|
+
- debugging/testing,
|
|
43
|
+
- failure modes/tradeoffs,
|
|
44
|
+
- interview explanation.
|
|
45
|
+
|
|
46
|
+
Do not edit production code while in learning-review mode.
|
|
47
|
+
|
|
48
|
+
## 3. Relationship to code walkthrough
|
|
49
|
+
|
|
50
|
+
Use `/code-walkthrough` when the primary need is:
|
|
51
|
+
|
|
52
|
+
```text
|
|
53
|
+
AI explains the actual implementation
|
|
54
|
+
→ developer explores changed files
|
|
55
|
+
→ developer builds a mental model
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
Use `/learning-review` when the primary need is:
|
|
59
|
+
|
|
60
|
+
```text
|
|
61
|
+
AI asks
|
|
62
|
+
→ developer explains
|
|
63
|
+
→ AI critiques
|
|
64
|
+
→ gaps become visible
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
A walkthrough may naturally hand off to a learning review, but neither is required for engineering completion or delivery.
|
|
68
|
+
|
|
69
|
+
## 4. Credibility
|
|
70
|
+
|
|
71
|
+
Explicitly distinguish:
|
|
72
|
+
- what the developer actually implemented/used,
|
|
73
|
+
- what AI generated but the developer reviewed/understands,
|
|
74
|
+
- what was studied/practiced,
|
|
75
|
+
- what remains a gap.
|
|
76
|
+
|
|
77
|
+
Do not manufacture professional experience.
|
|
78
|
+
|
|
79
|
+
## 5. Completion
|
|
80
|
+
|
|
81
|
+
Stop when the human stops/switches workflow, the planned check is complete, or no material learning gaps remain for this session.
|
|
82
|
+
|
|
83
|
+
Summarize:
|
|
84
|
+
- understood well,
|
|
85
|
+
- needs reinforcement,
|
|
86
|
+
- optional next target.
|
|
87
|
+
|
|
88
|
+
Then offer a small menu such as continue, optional learning notes/progress, return to engineering workflow, or stop.
|
|
89
|
+
|
|
90
|
+
`/learning-review` is optional and never blocks engineering completion/delivery.
|
|
@@ -0,0 +1,221 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: next-step
|
|
3
|
+
description: Read-only orientation over setup, work-item, Git, review, PR, PR CI, merge, post-merge default-branch CI, deployment readiness, deployment handoff state, and optional documentation/learning surfaces.
|
|
4
|
+
argument-hint: "[optional work-item ID or external key]"
|
|
5
|
+
user-invocable: true
|
|
6
|
+
disable-model-invocation: true
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Next Step
|
|
10
|
+
|
|
11
|
+
Purpose: answer `Where am I, and what is the sensible next action?`
|
|
12
|
+
|
|
13
|
+
Invocation is read-only. `/progress` gives the broader milestone/status view; `/next-step` recommends one useful action from current evidence.
|
|
14
|
+
|
|
15
|
+
## 1. Resolve minimum context
|
|
16
|
+
|
|
17
|
+
Before assuming implementation has started, inspect enough workspace evidence to determine whether this checkout has completed local setup and human workspace acceptance. Useful setup evidence may include `DEV_ENVIRONMENT.json`, generated setup/doctor outputs, workstation-local developer-mode evidence, and the current session's acceptance state.
|
|
18
|
+
|
|
19
|
+
Read `.github/project-forge-workspace.json` when present and use the optional work-item key or infer from current branch/session context.
|
|
20
|
+
|
|
21
|
+
Inspect only what is needed. Never invent setup/Jira/Issue/PR/CI/review/merge/readiness/deployment state.
|
|
22
|
+
|
|
23
|
+
Local Git examples:
|
|
24
|
+
|
|
25
|
+
```text
|
|
26
|
+
git branch --show-current
|
|
27
|
+
git status --short --branch
|
|
28
|
+
git diff --stat
|
|
29
|
+
git diff --cached --stat
|
|
30
|
+
git log -1 --oneline
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
When GitHub CLI is available/authenticated:
|
|
34
|
+
|
|
35
|
+
```text
|
|
36
|
+
gh pr status
|
|
37
|
+
gh pr view
|
|
38
|
+
gh pr checks
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
When post-merge CI matters, inspect the configured default branch/workflow rather than assuming it is named `main`.
|
|
42
|
+
|
|
43
|
+
## 2. Setup comes before implementation
|
|
44
|
+
|
|
45
|
+
When the repository is generated but this workstation is not ready, recommend:
|
|
46
|
+
|
|
47
|
+
```text
|
|
48
|
+
/setup
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
Do not make the developer manually sequence tool installation, dependency restore, local mode convergence, doctor, or remote-target setup when `/setup` can route those concerns.
|
|
52
|
+
|
|
53
|
+
Typical pre-work states:
|
|
54
|
+
|
|
55
|
+
```text
|
|
56
|
+
LOCAL_SETUP_PENDING
|
|
57
|
+
LOCAL_SETUP_BLOCKED
|
|
58
|
+
WORKSPACE_ACCEPTANCE_PENDING
|
|
59
|
+
READY_FOR_FIRST_WORK_ITEM
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
Rules:
|
|
63
|
+
|
|
64
|
+
- local readiness is the first success target;
|
|
65
|
+
- intentionally unconfigured/deferred Staging or Production does not block local coding;
|
|
66
|
+
- a deferred application scaffold may still have a ready workspace;
|
|
67
|
+
- machine checks do not accept the editor/workspace experience on the human's behalf.
|
|
68
|
+
|
|
69
|
+
When deterministic setup passes but human workspace acceptance is still needed, recommend the smallest meaningful acceptance check using `docs/process/SETUP_ACCEPTANCE_CHECKLIST.md` and current editor/agent evidence. Do not rerun setup without evidence it is needed.
|
|
70
|
+
|
|
71
|
+
When the workspace is accepted and the first approved work item is clear, recommend `/start-work <ID>`.
|
|
72
|
+
|
|
73
|
+
If the developer wants the broader status instead of one action, offer `/progress` as a read-only option.
|
|
74
|
+
|
|
75
|
+
## 3. Engineering/delivery states
|
|
76
|
+
|
|
77
|
+
Examples:
|
|
78
|
+
|
|
79
|
+
```text
|
|
80
|
+
IMPLEMENTING
|
|
81
|
+
LOCAL_REVIEW_PENDING
|
|
82
|
+
REVIEW_CHANGES_REQUIRED
|
|
83
|
+
REVIEW_READY
|
|
84
|
+
HUMAN_LOCAL_ACCEPTANCE_PENDING
|
|
85
|
+
DELIVERY_READY
|
|
86
|
+
PUSHED_NO_PR
|
|
87
|
+
PR_CI_PENDING
|
|
88
|
+
PR_CI_FAILED
|
|
89
|
+
PR_CI_GREEN
|
|
90
|
+
MERGE_READY
|
|
91
|
+
MERGED_DEFAULT_BRANCH_CI_PENDING
|
|
92
|
+
MERGED_DEFAULT_BRANCH_CI_FAILED
|
|
93
|
+
DELIVERY_COMPLETE
|
|
94
|
+
ENVIRONMENT_READINESS_PENDING
|
|
95
|
+
ENVIRONMENT_READY_TO_DEPLOY
|
|
96
|
+
DEPLOYMENT_VALIDATION_PENDING
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
Use only states supported by observed evidence.
|
|
100
|
+
|
|
101
|
+
Do not add a separate final-PR-acceptance state when the PR still exactly matches the already accepted local implementation. In that normal case, `/deliver` combines final acceptance and merge into the single `MERGE_READY` decision. If PR evidence changed materially, describe the required final PR review explicitly before returning to `MERGE_READY`.
|
|
102
|
+
|
|
103
|
+
Do not add learning- or documentation-only states. Optional coaching, labs, and project documentation do not change engineering delivery state unless the approved work item explicitly makes documentation acceptance evidence.
|
|
104
|
+
|
|
105
|
+
## 4. Output
|
|
106
|
+
|
|
107
|
+
```text
|
|
108
|
+
CURRENT STATE
|
|
109
|
+
<evidence-backed summary>
|
|
110
|
+
|
|
111
|
+
RECOMMENDED NEXT STEP
|
|
112
|
+
<one action and why>
|
|
113
|
+
|
|
114
|
+
OPTIONS
|
|
115
|
+
1. ... [READ ONLY]
|
|
116
|
+
2. ... [MODIFIES FILES]
|
|
117
|
+
3. ... [GIT + GITHUB WRITE]
|
|
118
|
+
4. Stop [NO ACTION]
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
Only show relevant options. `/next-step` orients; it does not become another workflow database.
|
|
122
|
+
|
|
123
|
+
For an unprepared generated workspace, a good result is simply:
|
|
124
|
+
|
|
125
|
+
```text
|
|
126
|
+
CURRENT STATE
|
|
127
|
+
Local setup has not been completed on this computer.
|
|
128
|
+
|
|
129
|
+
RECOMMENDED NEXT STEP
|
|
130
|
+
/setup
|
|
131
|
+
|
|
132
|
+
OPTIONS
|
|
133
|
+
1. /progress [READ ONLY]
|
|
134
|
+
2. Stop [NO ACTION]
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
## 5. Optional documentation and learning choices
|
|
138
|
+
|
|
139
|
+
When implementation is stable enough to understand or document, `/next-step` may offer these choices without making them gates:
|
|
140
|
+
|
|
141
|
+
```text
|
|
142
|
+
/docs [open|check|build]
|
|
143
|
+
/code-walkthrough <scope>
|
|
144
|
+
/learning-review <scope>
|
|
145
|
+
/coach <topic>
|
|
146
|
+
/db-lab [changes <work-item>]
|
|
147
|
+
/system-lab [changes <work-item>]
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
Prefer `/docs` for the coherent project briefing/document map, `/code-walkthrough` for implementation flow, `/db-lab` for concrete schema/query/index/ORM evidence, and `/system-lab` for architecture/runtime/failure/scale evidence.
|
|
151
|
+
|
|
152
|
+
Safe generated projections may be prepared automatically. Do not silently rewrite project-owned prose, accept an ADR, or make learning mandatory before `/deliver` unless the approved work item explicitly requires it.
|
|
153
|
+
|
|
154
|
+
## 6. Delivery handoff
|
|
155
|
+
|
|
156
|
+
When all are ready:
|
|
157
|
+
|
|
158
|
+
```text
|
|
159
|
+
implementation complete
|
|
160
|
+
local verification satisfactory
|
|
161
|
+
Reviewer READY
|
|
162
|
+
human meaningful-diff approval complete
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
recommend `/deliver` rather than separate branch/commit/push/create-PR confirmations.
|
|
166
|
+
|
|
167
|
+
`/deliver` owns the compound delivery action:
|
|
168
|
+
|
|
169
|
+
```text
|
|
170
|
+
short-lived branch setup/recovery when needed
|
|
171
|
+
→ selective stage
|
|
172
|
+
→ verify staged diff
|
|
173
|
+
→ commit
|
|
174
|
+
→ push
|
|
175
|
+
→ create/update PR
|
|
176
|
+
→ PR CI
|
|
177
|
+
→ one Merge and finalize delivery decision
|
|
178
|
+
→ merge
|
|
179
|
+
→ post-merge default-branch CI
|
|
180
|
+
→ safe delivered-branch finalization
|
|
181
|
+
```
|
|
182
|
+
|
|
183
|
+
Because `/deliver` is manually invoked, do not insert another permission menu merely to begin those routine mechanics. It will stop itself for changed evidence, ambiguity/risk, CI failure requiring code changes, or the merge/finalize decision.
|
|
184
|
+
|
|
185
|
+
If PR CI failed, recommend inspect/diagnose/targeted fix. Do not silently change code. If PR CI is green and evidence still matches the accepted implementation, return to `/deliver` for the single merge/finalize gate. Never merge from `/next-step` merely because CI is green.
|
|
186
|
+
|
|
187
|
+
After merge, return to `/deliver` while required default-branch CI/finalization is incomplete; otherwise report delivery complete and only optional relevant documentation/learning follow-ups.
|
|
188
|
+
|
|
189
|
+
## 7. Deployment handoff
|
|
190
|
+
|
|
191
|
+
For release/deployment engineering after engineering delivery is complete, recommend the selected environment's state-driven readiness workflow:
|
|
192
|
+
|
|
193
|
+
```text
|
|
194
|
+
/deployment-readiness <environment>
|
|
195
|
+
```
|
|
196
|
+
|
|
197
|
+
Use the same command whether the environment still needs initial discovery, prerequisite setup, repair, or final pre-deploy verification. Readiness re-discovers current state and resumes automatically; do not tell the human to choose discovery/enable/resume modes.
|
|
198
|
+
|
|
199
|
+
When evidence shows a configured named environment is ready to deploy, recommend:
|
|
200
|
+
|
|
201
|
+
```text
|
|
202
|
+
/deploy <environment>
|
|
203
|
+
```
|
|
204
|
+
|
|
205
|
+
`ENVIRONMENT_READY_TO_DEPLOY` means pre-deploy prerequisites are satisfied. It does not require live application health, smoke, route resolution, or release-specific rollback evidence that can only be established by deploying the selected artifact.
|
|
206
|
+
|
|
207
|
+
After `/deploy`, use repository/tool evidence to distinguish a successfully validated deployment from `DEPLOYMENT_VALIDATION_PENDING` or a deployment failure.
|
|
208
|
+
|
|
209
|
+
For a read-only overview across configured environments recommend:
|
|
210
|
+
|
|
211
|
+
```text
|
|
212
|
+
/deployment-readiness status
|
|
213
|
+
```
|
|
214
|
+
|
|
215
|
+
Do not infer readiness of one environment from another. Production is never an implicit/default environment, and `/next-step` never authorizes a remote or production deployment merely by recommending `/deploy`.
|
|
216
|
+
|
|
217
|
+
## 8. Keep it focused
|
|
218
|
+
|
|
219
|
+
Do not auto-run Reviewer, auto-run learning activities, auto-merge, auto-deploy, pin/select a model, or maintain duplicate workflow state outside Git/GitHub and the configured work-item/readiness authority.
|
|
220
|
+
|
|
221
|
+
Generating a disposable read-only documentation or learning workbench is not the same as performing a learning activity, approving documentation prose, or proving understanding.
|
|
@@ -0,0 +1,207 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: progress
|
|
3
|
+
description: "Read-only developer-facing progress view across POC creation, this workspace instance, work-item/delivery state, and exact project-defined environment capabilities."
|
|
4
|
+
argument-hint: "[optional work-item ID or environment]"
|
|
5
|
+
user-invocable: true
|
|
6
|
+
disable-model-invocation: true
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Progress
|
|
10
|
+
|
|
11
|
+
Purpose: answer `What is complete, what is happening now, and who needs to act?`
|
|
12
|
+
|
|
13
|
+
Invocation is read-only. `/progress` is a navigation/status surface, not a second workflow database or central workstation registry.
|
|
14
|
+
|
|
15
|
+
## 1. Reconstruct progress from evidence
|
|
16
|
+
|
|
17
|
+
Inspect only the evidence needed for the current lifecycle position. Useful sources include:
|
|
18
|
+
|
|
19
|
+
- `PROJECT_BOOTSTRAP.json`, generated baselines, and repository history for project creation/provenance;
|
|
20
|
+
- `DEPLOYMENT_TOPOLOGY.json` as preferred project-owned mutable environment topology when present;
|
|
21
|
+
- `DEV_ENVIRONMENT.json`, generated setup scripts, workstation-local setup/developer-mode evidence, and safe setup checks for local readiness;
|
|
22
|
+
- observed OS/platform and machine-local evidence for **this workspace instance**;
|
|
23
|
+
- current Git branch/status/upstream and safe remote-tracking evidence;
|
|
24
|
+
- work-item docs, Reviewer evidence, PR/CI state, and default-branch evidence;
|
|
25
|
+
- environment proof/readiness/deployment evidence for exact project-defined environments.
|
|
26
|
+
|
|
27
|
+
If `DEPLOYMENT_TOPOLOGY.json` does not exist, use `PROJECT_BOOTSTRAP.json` deployment topology only as the initial topology fallback.
|
|
28
|
+
|
|
29
|
+
Never invent completion because a prior step normally happens. Prefer `UNKNOWN`/`NOT EVIDENCED` over false green state.
|
|
30
|
+
|
|
31
|
+
Do not mutate setup, Git, GitHub, target, deployment, or project state.
|
|
32
|
+
|
|
33
|
+
## 2. Use a small status vocabulary
|
|
34
|
+
|
|
35
|
+
```text
|
|
36
|
+
✓ COMPLETE / READY
|
|
37
|
+
● IN PROGRESS
|
|
38
|
+
○ NOT STARTED
|
|
39
|
+
! ACTION NEEDED
|
|
40
|
+
✕ BLOCKED
|
|
41
|
+
– DEFERRED / NOT APPLICABLE
|
|
42
|
+
? NOT EVIDENCED
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
Do not use percentage-complete estimates.
|
|
46
|
+
|
|
47
|
+
## 3. Distinguish project state from this workspace instance
|
|
48
|
+
|
|
49
|
+
A **workspace instance** is one checkout of one Project Forge project on one developer workstation. Multiple instances may be active at the same time.
|
|
50
|
+
|
|
51
|
+
When useful, report:
|
|
52
|
+
|
|
53
|
+
```text
|
|
54
|
+
THIS WORKSPACE
|
|
55
|
+
|
|
56
|
+
Platform ............. Windows / macOS
|
|
57
|
+
Local setup .......... READY / NOT CONFIGURED / BLOCKED
|
|
58
|
+
Branch ................ <branch>
|
|
59
|
+
Upstream .............. <remote branch or NONE>
|
|
60
|
+
Remote sync ........... UP TO DATE / AHEAD / BEHIND / DIVERGED / NOT EVIDENCED
|
|
61
|
+
Personal profile ...... READY / DEFERRED / BLOCKED
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
Do not imply another workstation is offline/idle/authoritative unless concrete evidence says so. Machine-local databases, Docker state, credentials, SSH private keys, and host trust are not project-shared state.
|
|
65
|
+
|
|
66
|
+
If another workspace advanced the same remote branch, report that as normal coordination evidence and recommend fetch/reconciliation before history-sensitive work. Never rebase/reset/force/stash/merge from `/progress`.
|
|
67
|
+
|
|
68
|
+
## 4. Show meaningful lifecycle milestones
|
|
69
|
+
|
|
70
|
+
Prefer milestones such as:
|
|
71
|
+
|
|
72
|
+
```text
|
|
73
|
+
Project creation
|
|
74
|
+
This workspace setup
|
|
75
|
+
Workspace acceptance
|
|
76
|
+
Current work item
|
|
77
|
+
Engineering delivery
|
|
78
|
+
Environment capabilities
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
Do not expose Bootstrap/package/control-plane plumbing unless a failure there is the actionable blocker.
|
|
82
|
+
|
|
83
|
+
## 5. Always identify ownership of the next action
|
|
84
|
+
|
|
85
|
+
Distinguish:
|
|
86
|
+
|
|
87
|
+
```text
|
|
88
|
+
Owner: Project Forge
|
|
89
|
+
Action from developer: None
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
from:
|
|
93
|
+
|
|
94
|
+
```text
|
|
95
|
+
Owner: Developer
|
|
96
|
+
Action: <one concrete action>
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
Never claim asynchronous/background work unless an actual current operation exists.
|
|
100
|
+
|
|
101
|
+
## 6. Local setup/readiness
|
|
102
|
+
|
|
103
|
+
Before first setup on this computer:
|
|
104
|
+
|
|
105
|
+
```text
|
|
106
|
+
PROJECT STATUS
|
|
107
|
+
|
|
108
|
+
✓ Project creation
|
|
109
|
+
○ This workspace setup
|
|
110
|
+
○ Workspace acceptance
|
|
111
|
+
○ First work item
|
|
112
|
+
|
|
113
|
+
THIS WORKSPACE
|
|
114
|
+
Platform ............. macOS
|
|
115
|
+
Local setup .......... NOT CONFIGURED
|
|
116
|
+
|
|
117
|
+
Next:
|
|
118
|
+
/setup
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
After machine checks pass but before human acceptance, show setup ready and workspace acceptance as the developer action.
|
|
122
|
+
|
|
123
|
+
Do not treat deferred application scaffolding or optional remote environments as failed local setup.
|
|
124
|
+
|
|
125
|
+
## 7. Engineering/delivery progress
|
|
126
|
+
|
|
127
|
+
When implementation has begun, summarize the current work item and only delivery states supported by evidence.
|
|
128
|
+
|
|
129
|
+
Different workstations may work on independent work items/branches concurrently. Same-branch remote advancement is coordination evidence, not corruption.
|
|
130
|
+
|
|
131
|
+
If work is delivery-complete and deployment is the next useful action, identify the exact project-defined environment; do not assume Staging unless topology/policy says so.
|
|
132
|
+
|
|
133
|
+
## 8. Environment capabilities are topology-driven
|
|
134
|
+
|
|
135
|
+
Enumerate exact names from current project topology rather than a fixed Local/Staging/Production list.
|
|
136
|
+
|
|
137
|
+
A useful shape is:
|
|
138
|
+
|
|
139
|
+
```text
|
|
140
|
+
ENVIRONMENT CAPABILITIES — THIS WORKSTATION
|
|
141
|
+
|
|
142
|
+
Local ............ READY
|
|
143
|
+
Demo ............. PROVEN
|
|
144
|
+
QA ............... NOT CONFIGURED
|
|
145
|
+
prod-east ........ ACCESS READY
|
|
146
|
+
```
|
|
147
|
+
|
|
148
|
+
For each named environment distinguish evidence when useful:
|
|
149
|
+
|
|
150
|
+
```text
|
|
151
|
+
purpose/classification
|
|
152
|
+
placement/binding
|
|
153
|
+
target access from this workstation
|
|
154
|
+
environment proof deployment state
|
|
155
|
+
real project application deployment state
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
Example:
|
|
159
|
+
|
|
160
|
+
```text
|
|
161
|
+
Demo
|
|
162
|
+
Purpose .............. demo
|
|
163
|
+
Target access ........ READY
|
|
164
|
+
Deployment path ...... PROVEN
|
|
165
|
+
Project application .. NOT YET DEPLOYED
|
|
166
|
+
```
|
|
167
|
+
|
|
168
|
+
A setup-time disposable proof means the environment mechanics were proven from this workstation; it does not mean the real project application is deployed.
|
|
169
|
+
|
|
170
|
+
A custom name such as `prod-east` with purpose `production` must be presented as Production-class and retain stronger later gates.
|
|
171
|
+
|
|
172
|
+
`Production-class NOT CONFIGURED` does not make local/non-Production work incomplete.
|
|
173
|
+
|
|
174
|
+
Shared remote environments may be reachable from multiple workspace instances. Access/trust proof is per workstation; remote runtime/environment state is shared. Respect app/environment deployment locking when reporting concurrent mutations.
|
|
175
|
+
|
|
176
|
+
## 9. Handoff to `/next-step`
|
|
177
|
+
|
|
178
|
+
`/progress` answers where the developer is. `/next-step` recommends one sensible action.
|
|
179
|
+
|
|
180
|
+
Examples:
|
|
181
|
+
|
|
182
|
+
```text
|
|
183
|
+
Next:
|
|
184
|
+
/setup
|
|
185
|
+
```
|
|
186
|
+
|
|
187
|
+
```text
|
|
188
|
+
Next:
|
|
189
|
+
/start-work EN01
|
|
190
|
+
```
|
|
191
|
+
|
|
192
|
+
```text
|
|
193
|
+
Next:
|
|
194
|
+
/setup demo
|
|
195
|
+
```
|
|
196
|
+
|
|
197
|
+
```text
|
|
198
|
+
Next:
|
|
199
|
+
/deployment-readiness demo
|
|
200
|
+
```
|
|
201
|
+
|
|
202
|
+
```text
|
|
203
|
+
Next:
|
|
204
|
+
/deploy demo
|
|
205
|
+
```
|
|
206
|
+
|
|
207
|
+
Do not perform that action from `/progress`.
|