@t275005746/gse 0.1.0 → 0.1.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/.github/ISSUE_TEMPLATE/bug_report.yml +42 -42
- package/.github/ISSUE_TEMPLATE/change_request.yml +50 -50
- package/.github/ISSUE_TEMPLATE/config.yml +5 -5
- package/.github/PULL_REQUEST_TEMPLATE.md +38 -38
- package/.github/workflows/validate-gse.yml +33 -33
- package/.gse/README.md +18 -18
- package/.gse/gse-development-protocol.md +50 -50
- package/.gse/project-profile.md +29 -29
- package/.gse/quality-gates.md +25 -25
- package/.gse/releases/public-registry-publication-npm.md +49 -0
- package/.gse/releases/public-release-owner-required.md +65 -65
- package/.gse/releases/public-security-contact-owner-required.md +45 -45
- package/.gse/state.json +3 -4
- package/CHANGELOG.md +24 -24
- package/CONTRIBUTING.md +64 -64
- package/LICENSE +21 -21
- package/README.md +1 -1
- package/README.zh-CN.md +1 -1
- package/SECURITY.md +41 -41
- package/SUPPORT.md +38 -38
- package/assets/marketplace/README.md +7 -7
- package/assets/marketplace/gse-listing.json +75 -75
- package/assets/templates/acceptance-execution-packet.md +73 -73
- package/assets/templates/adr.md +14 -14
- package/assets/templates/change-brief.md +16 -16
- package/assets/templates/design.md +18 -18
- package/assets/templates/dispatch-packet.md +104 -104
- package/assets/templates/evidence.md +14 -14
- package/assets/templates/execution-quality-pack.md +65 -65
- package/assets/templates/goal-map.md +21 -21
- package/assets/templates/host-adapter.md +48 -48
- package/assets/templates/host-ui-invocation-record.md +42 -42
- package/assets/templates/incident-review.md +60 -60
- package/assets/templates/public-channel-publication-record.md +49 -49
- package/assets/templates/public-ci-run-record.md +53 -53
- package/assets/templates/public-release-record.md +65 -65
- package/assets/templates/public-repository-settings-record.md +59 -59
- package/assets/templates/public-security-contact-record.md +45 -45
- package/assets/templates/release-trust-record.md +32 -32
- package/assets/templates/review.md +18 -18
- package/assets/templates/spec.md +16 -16
- package/assets/templates/target-adoption-evidence.md +29 -29
- package/assets/templates/tasks.md +17 -17
- package/assets/templates/update-release-acceptance-record.md +58 -58
- package/examples/README.md +22 -22
- package/examples/agent-runtime-host/.claude/gse-adapter.md +6 -6
- package/examples/agent-runtime-host/.codex/gse-adapter.md +7 -7
- package/examples/agent-runtime-host/.gse/goal-map.md +7 -7
- package/examples/agent-runtime-host/.gse/project-profile.md +27 -27
- package/examples/agent-runtime-host/.gse/tooling.md +5 -5
- package/examples/agent-runtime-host/.mcp.json +9 -9
- package/examples/agent-runtime-host/AGENTS.md +5 -5
- package/examples/agent-runtime-host/README.md +10 -10
- package/examples/agent-runtime-host/docs/model-routing.md +5 -5
- package/examples/cli-tool/.gse/project-profile.md +21 -21
- package/examples/cli-tool/AGENTS.md +5 -5
- package/examples/cli-tool/README.md +12 -12
- package/examples/cli-tool/package.json +21 -21
- package/examples/small-app/.env.example +2 -2
- package/examples/small-app/.github/workflows/ci.yml +8 -8
- package/examples/small-app/AGENTS.md +5 -5
- package/examples/small-app/README.md +12 -12
- package/examples/small-app/package.json +26 -26
- package/examples/small-app/playwright.config.ts +4 -4
- package/package.json +53 -53
- package/references/adoption-recipes.md +171 -171
- package/references/agent-roles.md +49 -49
- package/references/architecture-health.md +101 -101
- package/references/benchmark-audit.md +73 -73
- package/references/community-channels.md +46 -46
- package/references/compatibility.md +70 -70
- package/references/design-basis.md +38 -38
- package/references/domain-model.md +129 -129
- package/references/domain-quality-gates.md +75 -75
- package/references/drift-audit.md +81 -81
- package/references/evidence-taxonomy.md +123 -123
- package/references/file-ownership.md +107 -107
- package/references/final-readiness.md +84 -84
- package/references/forward-test.md +133 -133
- package/references/goal-map.md +36 -36
- package/references/host-adapters.md +119 -119
- package/references/learning-system.md +35 -35
- package/references/marketplace-discovery.md +46 -46
- package/references/model-routing.md +103 -103
- package/references/open-source-defaults.md +39 -39
- package/references/operating-model.md +52 -52
- package/references/packaging.md +277 -277
- package/references/project-agent-workspace.md +89 -89
- package/references/project-bootstrap.md +122 -122
- package/references/project-profile.md +57 -57
- package/references/public-release.md +174 -174
- package/references/quality-gates.md +100 -100
- package/references/recovery.md +176 -176
- package/references/release-trust.md +43 -43
- package/references/release.md +126 -126
- package/references/review.md +141 -141
- package/references/router.md +90 -90
- package/references/spec-workflow.md +66 -66
- package/references/task-levels.md +81 -81
- package/references/tool-adapters.md +73 -73
- package/scripts/audit-acceptance-execution-packet.mjs +133 -133
- package/scripts/audit-adoption-recipes.mjs +99 -99
- package/scripts/audit-change-lifecycle.mjs +77 -77
- package/scripts/audit-change-system.mjs +134 -134
- package/scripts/audit-ci-readiness.mjs +107 -107
- package/scripts/audit-close-gate.mjs +323 -323
- package/scripts/audit-command-adapters.mjs +91 -91
- package/scripts/audit-command-execution.mjs +210 -210
- package/scripts/audit-compatibility.mjs +149 -149
- package/scripts/audit-completion-readiness.mjs +292 -292
- package/scripts/audit-distribution.mjs +251 -251
- package/scripts/audit-domain-quality-gates.mjs +108 -108
- package/scripts/audit-evidence-placeholders.mjs +126 -126
- package/scripts/audit-final-readiness-promotion.mjs +255 -255
- package/scripts/audit-final-readiness.mjs +226 -226
- package/scripts/audit-fixtures.mjs +154 -154
- package/scripts/audit-fresh-session-readiness.mjs +177 -177
- package/scripts/audit-host-runtime-evidence-handoff.mjs +159 -159
- package/scripts/audit-host-runtime-invocation-drill.mjs +240 -240
- package/scripts/audit-host-runtime-invocations.mjs +254 -254
- package/scripts/audit-host-ui-invocation.mjs +132 -132
- package/scripts/audit-marketplace-discovery.mjs +122 -122
- package/scripts/audit-npm-package-metadata.mjs +155 -155
- package/scripts/audit-npm-publish-dry-run.mjs +191 -169
- package/scripts/audit-npm-tarball-install.mjs +191 -191
- package/scripts/audit-open-source-defaults.mjs +92 -92
- package/scripts/audit-open-source-readiness.mjs +97 -97
- package/scripts/audit-project.mjs +138 -138
- package/scripts/audit-public-acceptance-command-dry-run-drill.mjs +203 -203
- package/scripts/audit-public-acceptance-readiness.mjs +224 -224
- package/scripts/audit-public-channel-publication.mjs +248 -248
- package/scripts/audit-public-ci-run.mjs +184 -184
- package/scripts/audit-public-collaboration-templates.mjs +98 -98
- package/scripts/audit-public-external-gate-probe.mjs +206 -206
- package/scripts/audit-public-release-decision.mjs +201 -201
- package/scripts/audit-public-release-metadata.mjs +176 -176
- package/scripts/audit-public-repository-settings.mjs +237 -237
- package/scripts/audit-public-security-contact.mjs +171 -171
- package/scripts/audit-readme-docs.mjs +6 -4
- package/scripts/audit-recovery-readiness.mjs +98 -98
- package/scripts/audit-release-readiness.mjs +106 -106
- package/scripts/audit-release-trust.mjs +62 -62
- package/scripts/audit-remote-distribution.mjs +266 -266
- package/scripts/audit-roadmap-consistency.mjs +235 -235
- package/scripts/audit-signing.mjs +147 -147
- package/scripts/audit-state-freshness.mjs +14 -9
- package/scripts/audit-target-adoption-evidence.mjs +117 -117
- package/scripts/audit-target-project.mjs +507 -507
- package/scripts/audit-update-release-acceptance.mjs +136 -136
- package/scripts/audit-v1-target-validation.mjs +269 -269
- package/scripts/audit-validation-profiles.mjs +125 -125
- package/scripts/close-change.mjs +116 -116
- package/scripts/discover-project-profile.mjs +307 -307
- package/scripts/generate-command-adapter.mjs +231 -231
- package/scripts/generate-final-acceptance-packet.mjs +181 -181
- package/scripts/generate-final-form-progress-report.mjs +205 -205
- package/scripts/generate-host-runtime-evidence-handoff.mjs +206 -206
- package/scripts/generate-owner-external-gate-kit.mjs +295 -295
- package/scripts/generate-public-acceptance-handoff.mjs +168 -168
- package/scripts/generate-public-release-checklist.mjs +207 -207
- package/scripts/generate-release-bundle.mjs +505 -505
- package/scripts/generate-release-owner-action-plan.mjs +172 -172
- package/scripts/generate-release-status-manifest.mjs +200 -200
- package/scripts/generate-session-prompt.mjs +188 -188
- package/scripts/gse.mjs +67 -67
- package/scripts/init-change.mjs +265 -265
- package/scripts/init-project.mjs +785 -785
- package/scripts/install-gse.mjs +234 -234
- package/scripts/lib/evidence-placeholders.mjs +28 -28
- package/scripts/package-gse.mjs +174 -174
- package/scripts/probe-public-external-gates.mjs +167 -167
- package/scripts/record-host-invocation.mjs +151 -151
- package/scripts/record-public-channel-publication.mjs +178 -178
- package/scripts/record-public-ci-run.mjs +180 -180
- package/scripts/record-public-release.mjs +175 -175
- package/scripts/record-public-repository-settings.mjs +209 -209
- package/scripts/record-public-security-contact.mjs +157 -157
- package/scripts/sign-gse-package.mjs +83 -83
- package/scripts/update-project-state.mjs +223 -223
- package/scripts/verify-gse-package.mjs +85 -85
|
@@ -1,133 +1,133 @@
|
|
|
1
|
-
# Forward Test Protocol
|
|
2
|
-
|
|
3
|
-
Use this when changing GSE itself, changing reusable project scaffolds, or changing workflow rules that future agents must follow.
|
|
4
|
-
|
|
5
|
-
Forward testing asks: can a future agent, fresh session, or fixture project use this change without relying on the author's memory?
|
|
6
|
-
|
|
7
|
-
## Test Levels
|
|
8
|
-
|
|
9
|
-
| Level | Meaning | Evidence gate | Use when |
|
|
10
|
-
|---|---|---|---|
|
|
11
|
-
| Structural smoke | Files, routing, audit criteria, and key text exist | verified for structure | Small reference/template/script changes |
|
|
12
|
-
| Fixture forward test | A temp project or example repo uses the GSE path end to end | verified for workflow behavior | Bootstrap/profile/templates/adapters change |
|
|
13
|
-
| Fresh-session forward test | A separate agent/session follows GSE with minimal context | accepted candidate | Non-trivial skill behavior, routing, multi-agent, release, recovery, or public-facing workflow changes |
|
|
14
|
-
|
|
15
|
-
Do not call structural smoke a true forward-test acceptance. It proves the artifact is wired; it does not prove future-agent usability.
|
|
16
|
-
|
|
17
|
-
## When Required
|
|
18
|
-
|
|
19
|
-
Forward testing is required for:
|
|
20
|
-
|
|
21
|
-
- New or changed scripts under `scripts/` that future projects will run.
|
|
22
|
-
- Project scaffold changes under `scripts/init-project.mjs` or `assets/templates/` that affect downstream projects.
|
|
23
|
-
- Router, quality gate, evidence, role, ownership, host adapter, release, recovery, or packaging rules.
|
|
24
|
-
- Any change that claims a GSE capability is accepted rather than merely present or structurally verified.
|
|
25
|
-
|
|
26
|
-
Forward testing is optional for:
|
|
27
|
-
|
|
28
|
-
- Narrow wording edits that do not change behavior.
|
|
29
|
-
- Evidence log updates.
|
|
30
|
-
- Internal goal-map/current-slice status updates.
|
|
31
|
-
- Small typo fixes in already tested references.
|
|
32
|
-
|
|
33
|
-
Forward testing is unnecessary for:
|
|
34
|
-
|
|
35
|
-
- Purely transient notes.
|
|
36
|
-
- Local-only command output not used as reusable workflow evidence.
|
|
37
|
-
- Work explicitly marked as draft or design judgment.
|
|
38
|
-
|
|
39
|
-
## Core Scenarios
|
|
40
|
-
|
|
41
|
-
Pick the smallest scenario that covers the changed behavior.
|
|
42
|
-
|
|
43
|
-
### Fresh Project Bootstrap
|
|
44
|
-
|
|
45
|
-
Use when bootstrap, templates, project profile, quality gates, or scaffold layout changes.
|
|
46
|
-
|
|
47
|
-
Smoke:
|
|
48
|
-
|
|
49
|
-
1. Create a temp project directory.
|
|
50
|
-
2. Run `node <gse>/scripts/init-project.mjs --target <temp> --mode lite|standard|enterprise` as appropriate.
|
|
51
|
-
3. Verify expected `.gse/` files exist.
|
|
52
|
-
4. Verify rerun safety without `--force` when relevant.
|
|
53
|
-
5. Record generated-file and cleanup policy.
|
|
54
|
-
|
|
55
|
-
### Existing Repo Adoption
|
|
56
|
-
|
|
57
|
-
Use when project-profile, discovery, dirty-worktree, tool adapters, or quality gates change.
|
|
58
|
-
|
|
59
|
-
Smoke:
|
|
60
|
-
|
|
61
|
-
1. Use a fixture or temp repo with representative files such as `package.json`, `AGENTS.md`, CI config, browser config, and `.env.example`.
|
|
62
|
-
2. Run discovery or manual project-profile steps.
|
|
63
|
-
3. Verify tool statuses stay `documented`, `verified`, `unknown`, or `unavailable` without inventing support.
|
|
64
|
-
4. Verify dirty or pre-existing files are not overwritten.
|
|
65
|
-
|
|
66
|
-
### Host Adapter Usage
|
|
67
|
-
|
|
68
|
-
Use when `.codex/`, `.claude/`, `.agents/`, Hermes/AION-style runtime, WorkBuddy, MCP, hook, skill, or plugin adapter rules change.
|
|
69
|
-
|
|
70
|
-
Smoke:
|
|
71
|
-
|
|
72
|
-
1. Create or inspect a host adapter note using `assets/templates/host-adapter.md`.
|
|
73
|
-
2. Confirm it points back to `.gse/` as source of truth.
|
|
74
|
-
3. Mark host-specific capabilities with tool status evidence.
|
|
75
|
-
4. Confirm no unsupported subagent, MCP, hook, or browser capability is claimed as verified.
|
|
76
|
-
|
|
77
|
-
### Subagent Or Role Fallback
|
|
78
|
-
|
|
79
|
-
Use when agent roles, dispatch packets, ownership, review, or multi-agent rules change.
|
|
80
|
-
|
|
81
|
-
Smoke:
|
|
82
|
-
|
|
83
|
-
1. Fill `assets/templates/dispatch-packet.md` for one locator, builder, reviewer, QA, or docs role.
|
|
84
|
-
2. Include role, objective, required context, allowed files, forbidden files, expected output, verification, and stop conditions.
|
|
85
|
-
3. State whether execution is real-subagent, sequential-role, or handoff-session.
|
|
86
|
-
4. Verify fallback says no real delegation occurred when subagent tools are unavailable.
|
|
87
|
-
5. Verify final evidence distinguishes result, verified, and accepted.
|
|
88
|
-
|
|
89
|
-
## Evidence Requirements
|
|
90
|
-
|
|
91
|
-
Every forward-test record should include:
|
|
92
|
-
|
|
93
|
-
```text
|
|
94
|
-
Forward-test level:
|
|
95
|
-
Scenario:
|
|
96
|
-
Changed behavior:
|
|
97
|
-
Commands or inspection:
|
|
98
|
-
Result evidence:
|
|
99
|
-
Verification evidence:
|
|
100
|
-
Accepted by:
|
|
101
|
-
Residual risk:
|
|
102
|
-
Next action:
|
|
103
|
-
```
|
|
104
|
-
|
|
105
|
-
Use `accepted by: policy` only when the applicable policy is named. Use `accepted by: fresh-session` only when a separate agent/session actually ran the path.
|
|
106
|
-
|
|
107
|
-
Use `assets/templates/acceptance-execution-packet.md` when a fresh-session or owner-approved project write needs an explicit execution boundary before acceptance can be claimed.
|
|
108
|
-
|
|
109
|
-
## Acceptance Rules
|
|
110
|
-
|
|
111
|
-
- Structural smoke can make a slice `verified` for file/routing coverage.
|
|
112
|
-
- Fixture forward test can make a workflow `verified` for the tested scenario.
|
|
113
|
-
- Fresh-session forward test can support `accepted` when the fresh agent completes the intended path with only the documented GSE inputs.
|
|
114
|
-
- If only structural smoke ran, record the remaining need for fixture or fresh-session testing as residual risk.
|
|
115
|
-
- If a host tool is unavailable, the fallback path can be verified, but the unavailable tool capability is not verified.
|
|
116
|
-
|
|
117
|
-
## Failure Handling
|
|
118
|
-
|
|
119
|
-
If a forward test fails:
|
|
120
|
-
|
|
121
|
-
1. Record the exact missing context, broken route, command failure, or ambiguity.
|
|
122
|
-
2. Fix the smallest reusable artifact: script, template, reference, router, or gate.
|
|
123
|
-
3. Re-run the same scenario.
|
|
124
|
-
4. Add a learning entry only when the failure is reusable beyond the current slice.
|
|
125
|
-
|
|
126
|
-
## Integration Points
|
|
127
|
-
|
|
128
|
-
- `references/evidence-taxonomy.md` decides result, verified, and accepted status.
|
|
129
|
-
- `references/benchmark-audit.md` decides when a GSE change needs forward-test coverage.
|
|
130
|
-
- `references/quality-gates.md` applies forward-test requirements before completion.
|
|
131
|
-
- `scripts/audit-project.mjs` verifies bootstrap scaffold generation and rerun safety in temporary project directories.
|
|
132
|
-
- `scripts/audit-fixtures.mjs` provides a lightweight fixture audit for project-profile discovery and host-adapter/drift scenarios.
|
|
133
|
-
- `.gse/evidence/YYYY-MM-DD.md` records scenario, commands, results, residual risk, and next action.
|
|
1
|
+
# Forward Test Protocol
|
|
2
|
+
|
|
3
|
+
Use this when changing GSE itself, changing reusable project scaffolds, or changing workflow rules that future agents must follow.
|
|
4
|
+
|
|
5
|
+
Forward testing asks: can a future agent, fresh session, or fixture project use this change without relying on the author's memory?
|
|
6
|
+
|
|
7
|
+
## Test Levels
|
|
8
|
+
|
|
9
|
+
| Level | Meaning | Evidence gate | Use when |
|
|
10
|
+
|---|---|---|---|
|
|
11
|
+
| Structural smoke | Files, routing, audit criteria, and key text exist | verified for structure | Small reference/template/script changes |
|
|
12
|
+
| Fixture forward test | A temp project or example repo uses the GSE path end to end | verified for workflow behavior | Bootstrap/profile/templates/adapters change |
|
|
13
|
+
| Fresh-session forward test | A separate agent/session follows GSE with minimal context | accepted candidate | Non-trivial skill behavior, routing, multi-agent, release, recovery, or public-facing workflow changes |
|
|
14
|
+
|
|
15
|
+
Do not call structural smoke a true forward-test acceptance. It proves the artifact is wired; it does not prove future-agent usability.
|
|
16
|
+
|
|
17
|
+
## When Required
|
|
18
|
+
|
|
19
|
+
Forward testing is required for:
|
|
20
|
+
|
|
21
|
+
- New or changed scripts under `scripts/` that future projects will run.
|
|
22
|
+
- Project scaffold changes under `scripts/init-project.mjs` or `assets/templates/` that affect downstream projects.
|
|
23
|
+
- Router, quality gate, evidence, role, ownership, host adapter, release, recovery, or packaging rules.
|
|
24
|
+
- Any change that claims a GSE capability is accepted rather than merely present or structurally verified.
|
|
25
|
+
|
|
26
|
+
Forward testing is optional for:
|
|
27
|
+
|
|
28
|
+
- Narrow wording edits that do not change behavior.
|
|
29
|
+
- Evidence log updates.
|
|
30
|
+
- Internal goal-map/current-slice status updates.
|
|
31
|
+
- Small typo fixes in already tested references.
|
|
32
|
+
|
|
33
|
+
Forward testing is unnecessary for:
|
|
34
|
+
|
|
35
|
+
- Purely transient notes.
|
|
36
|
+
- Local-only command output not used as reusable workflow evidence.
|
|
37
|
+
- Work explicitly marked as draft or design judgment.
|
|
38
|
+
|
|
39
|
+
## Core Scenarios
|
|
40
|
+
|
|
41
|
+
Pick the smallest scenario that covers the changed behavior.
|
|
42
|
+
|
|
43
|
+
### Fresh Project Bootstrap
|
|
44
|
+
|
|
45
|
+
Use when bootstrap, templates, project profile, quality gates, or scaffold layout changes.
|
|
46
|
+
|
|
47
|
+
Smoke:
|
|
48
|
+
|
|
49
|
+
1. Create a temp project directory.
|
|
50
|
+
2. Run `node <gse>/scripts/init-project.mjs --target <temp> --mode lite|standard|enterprise` as appropriate.
|
|
51
|
+
3. Verify expected `.gse/` files exist.
|
|
52
|
+
4. Verify rerun safety without `--force` when relevant.
|
|
53
|
+
5. Record generated-file and cleanup policy.
|
|
54
|
+
|
|
55
|
+
### Existing Repo Adoption
|
|
56
|
+
|
|
57
|
+
Use when project-profile, discovery, dirty-worktree, tool adapters, or quality gates change.
|
|
58
|
+
|
|
59
|
+
Smoke:
|
|
60
|
+
|
|
61
|
+
1. Use a fixture or temp repo with representative files such as `package.json`, `AGENTS.md`, CI config, browser config, and `.env.example`.
|
|
62
|
+
2. Run discovery or manual project-profile steps.
|
|
63
|
+
3. Verify tool statuses stay `documented`, `verified`, `unknown`, or `unavailable` without inventing support.
|
|
64
|
+
4. Verify dirty or pre-existing files are not overwritten.
|
|
65
|
+
|
|
66
|
+
### Host Adapter Usage
|
|
67
|
+
|
|
68
|
+
Use when `.codex/`, `.claude/`, `.agents/`, Hermes/AION-style runtime, WorkBuddy, MCP, hook, skill, or plugin adapter rules change.
|
|
69
|
+
|
|
70
|
+
Smoke:
|
|
71
|
+
|
|
72
|
+
1. Create or inspect a host adapter note using `assets/templates/host-adapter.md`.
|
|
73
|
+
2. Confirm it points back to `.gse/` as source of truth.
|
|
74
|
+
3. Mark host-specific capabilities with tool status evidence.
|
|
75
|
+
4. Confirm no unsupported subagent, MCP, hook, or browser capability is claimed as verified.
|
|
76
|
+
|
|
77
|
+
### Subagent Or Role Fallback
|
|
78
|
+
|
|
79
|
+
Use when agent roles, dispatch packets, ownership, review, or multi-agent rules change.
|
|
80
|
+
|
|
81
|
+
Smoke:
|
|
82
|
+
|
|
83
|
+
1. Fill `assets/templates/dispatch-packet.md` for one locator, builder, reviewer, QA, or docs role.
|
|
84
|
+
2. Include role, objective, required context, allowed files, forbidden files, expected output, verification, and stop conditions.
|
|
85
|
+
3. State whether execution is real-subagent, sequential-role, or handoff-session.
|
|
86
|
+
4. Verify fallback says no real delegation occurred when subagent tools are unavailable.
|
|
87
|
+
5. Verify final evidence distinguishes result, verified, and accepted.
|
|
88
|
+
|
|
89
|
+
## Evidence Requirements
|
|
90
|
+
|
|
91
|
+
Every forward-test record should include:
|
|
92
|
+
|
|
93
|
+
```text
|
|
94
|
+
Forward-test level:
|
|
95
|
+
Scenario:
|
|
96
|
+
Changed behavior:
|
|
97
|
+
Commands or inspection:
|
|
98
|
+
Result evidence:
|
|
99
|
+
Verification evidence:
|
|
100
|
+
Accepted by:
|
|
101
|
+
Residual risk:
|
|
102
|
+
Next action:
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
Use `accepted by: policy` only when the applicable policy is named. Use `accepted by: fresh-session` only when a separate agent/session actually ran the path.
|
|
106
|
+
|
|
107
|
+
Use `assets/templates/acceptance-execution-packet.md` when a fresh-session or owner-approved project write needs an explicit execution boundary before acceptance can be claimed.
|
|
108
|
+
|
|
109
|
+
## Acceptance Rules
|
|
110
|
+
|
|
111
|
+
- Structural smoke can make a slice `verified` for file/routing coverage.
|
|
112
|
+
- Fixture forward test can make a workflow `verified` for the tested scenario.
|
|
113
|
+
- Fresh-session forward test can support `accepted` when the fresh agent completes the intended path with only the documented GSE inputs.
|
|
114
|
+
- If only structural smoke ran, record the remaining need for fixture or fresh-session testing as residual risk.
|
|
115
|
+
- If a host tool is unavailable, the fallback path can be verified, but the unavailable tool capability is not verified.
|
|
116
|
+
|
|
117
|
+
## Failure Handling
|
|
118
|
+
|
|
119
|
+
If a forward test fails:
|
|
120
|
+
|
|
121
|
+
1. Record the exact missing context, broken route, command failure, or ambiguity.
|
|
122
|
+
2. Fix the smallest reusable artifact: script, template, reference, router, or gate.
|
|
123
|
+
3. Re-run the same scenario.
|
|
124
|
+
4. Add a learning entry only when the failure is reusable beyond the current slice.
|
|
125
|
+
|
|
126
|
+
## Integration Points
|
|
127
|
+
|
|
128
|
+
- `references/evidence-taxonomy.md` decides result, verified, and accepted status.
|
|
129
|
+
- `references/benchmark-audit.md` decides when a GSE change needs forward-test coverage.
|
|
130
|
+
- `references/quality-gates.md` applies forward-test requirements before completion.
|
|
131
|
+
- `scripts/audit-project.mjs` verifies bootstrap scaffold generation and rerun safety in temporary project directories.
|
|
132
|
+
- `scripts/audit-fixtures.mjs` provides a lightweight fixture audit for project-profile discovery and host-adapter/drift scenarios.
|
|
133
|
+
- `.gse/evidence/YYYY-MM-DD.md` records scenario, commands, results, residual risk, and next action.
|
package/references/goal-map.md
CHANGED
|
@@ -1,36 +1,36 @@
|
|
|
1
|
-
# Goal Map
|
|
2
|
-
|
|
3
|
-
Goal maps keep long-running agent work from drifting.
|
|
4
|
-
|
|
5
|
-
## Minimal Goal Node
|
|
6
|
-
|
|
7
|
-
```yaml
|
|
8
|
-
id: short-id
|
|
9
|
-
title: Human-readable goal
|
|
10
|
-
outcome: User or business outcome
|
|
11
|
-
status: planned | in_progress | verified | accepted | blocked
|
|
12
|
-
priority: P0 | P1 | P2 | P3
|
|
13
|
-
dependencies: []
|
|
14
|
-
acceptance: []
|
|
15
|
-
evidence: []
|
|
16
|
-
risks: []
|
|
17
|
-
next_slice: Short next action
|
|
18
|
-
last_updated: YYYY-MM-DD
|
|
19
|
-
```
|
|
20
|
-
|
|
21
|
-
## Update Rules
|
|
22
|
-
|
|
23
|
-
- Keep the goal map short enough to guide the next session.
|
|
24
|
-
- Put long logs under `.gse/evidence/` or project-specific evidence logs.
|
|
25
|
-
- Update status only when evidence supports the change.
|
|
26
|
-
- Show the next three slices for large projects.
|
|
27
|
-
|
|
28
|
-
## Drift Checks
|
|
29
|
-
|
|
30
|
-
Run a goal-map review when:
|
|
31
|
-
|
|
32
|
-
- The same topic repeats without progress.
|
|
33
|
-
- A module is marked done but lacks evidence.
|
|
34
|
-
- The project has many commits but no visible product progress.
|
|
35
|
-
- Agent sessions keep rediscovering the same context.
|
|
36
|
-
|
|
1
|
+
# Goal Map
|
|
2
|
+
|
|
3
|
+
Goal maps keep long-running agent work from drifting.
|
|
4
|
+
|
|
5
|
+
## Minimal Goal Node
|
|
6
|
+
|
|
7
|
+
```yaml
|
|
8
|
+
id: short-id
|
|
9
|
+
title: Human-readable goal
|
|
10
|
+
outcome: User or business outcome
|
|
11
|
+
status: planned | in_progress | verified | accepted | blocked
|
|
12
|
+
priority: P0 | P1 | P2 | P3
|
|
13
|
+
dependencies: []
|
|
14
|
+
acceptance: []
|
|
15
|
+
evidence: []
|
|
16
|
+
risks: []
|
|
17
|
+
next_slice: Short next action
|
|
18
|
+
last_updated: YYYY-MM-DD
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
## Update Rules
|
|
22
|
+
|
|
23
|
+
- Keep the goal map short enough to guide the next session.
|
|
24
|
+
- Put long logs under `.gse/evidence/` or project-specific evidence logs.
|
|
25
|
+
- Update status only when evidence supports the change.
|
|
26
|
+
- Show the next three slices for large projects.
|
|
27
|
+
|
|
28
|
+
## Drift Checks
|
|
29
|
+
|
|
30
|
+
Run a goal-map review when:
|
|
31
|
+
|
|
32
|
+
- The same topic repeats without progress.
|
|
33
|
+
- A module is marked done but lacks evidence.
|
|
34
|
+
- The project has many commits but no visible product progress.
|
|
35
|
+
- Agent sessions keep rediscovering the same context.
|
|
36
|
+
|
|
@@ -1,119 +1,119 @@
|
|
|
1
|
-
# Host Adapters
|
|
2
|
-
|
|
3
|
-
Use this when a project needs GSE to work across Codex, Claude Code, Hermes/AION-style runtimes, WorkBuddy, Copilot-style agents, Gemini-style agents, or another agent host. Use `references/compatibility.md` to check host support status and adoption evidence before making capability claims.
|
|
4
|
-
|
|
5
|
-
## Core Rule
|
|
6
|
-
|
|
7
|
-
`.gse/` is the portable source of truth. Host-specific folders are adapters.
|
|
8
|
-
|
|
9
|
-
Adapters may expose commands, hooks, skills, MCP servers, indexes, or local UI metadata for one host, but they must point back to `.gse/` for project policy, goals, evidence, quality gates, and learning rules.
|
|
10
|
-
|
|
11
|
-
## Adapter Decision
|
|
12
|
-
|
|
13
|
-
Create or update a host adapter only when at least one condition is true:
|
|
14
|
-
|
|
15
|
-
- The host has a real folder, command, hook, skill, MCP, index, or plugin mechanism.
|
|
16
|
-
- The project already has host-specific rules that future agents need to find.
|
|
17
|
-
- A host-specific capability needs a short pointer to `.gse/` to avoid duplicate policy.
|
|
18
|
-
- A migration is needed from an existing `.claude/`, `.codex/`, `.agents/`, or runtime-specific workflow into `.gse/`.
|
|
19
|
-
|
|
20
|
-
Do not create host folders just for decoration. If the host capability is unknown, document it as `unknown` in `.gse/project-profile.md` or `.gse/tooling.md`.
|
|
21
|
-
|
|
22
|
-
## Supported Host Shapes
|
|
23
|
-
|
|
24
|
-
| Host shape | Common adapter location | Adapter should contain | Must not contain |
|
|
25
|
-
|---|---|---|---|
|
|
26
|
-
| Codex-style | `.codex/`, Codex skills, MCP config | Pointer to `.gse/`, skill routing notes, MCP/index notes when verified | Full duplicate goal map or stale project rules |
|
|
27
|
-
| Claude Code-style | `.claude/commands/`, `.claude/agents/`, `.claude/hooks/` | Command/agent/hook entrypoints that read `.gse/` first | Independent process constitution that conflicts with `.gse/` |
|
|
28
|
-
| Hermes/AION-style runtime | runtime skills, worker adapters, memory/tool substrate docs | Runtime bridge notes and internal capability mapping | User-facing product identity or runtime leakage |
|
|
29
|
-
| WorkBuddy/other IDE agents | local docs, plugin settings, task templates | How that host finds `.gse/` and which tools are verified | Claims that unsupported subagent or tool APIs exist |
|
|
30
|
-
| Copilot/Gemini-style assistants | repository instructions, workspace docs | Short instruction to use `.gse/project-profile.md` and relevant gates | Host-specific long workflow copies |
|
|
31
|
-
|
|
32
|
-
## Adapter Contents
|
|
33
|
-
|
|
34
|
-
Use `assets/templates/host-adapter.md` for each adapter note.
|
|
35
|
-
|
|
36
|
-
For command adapters, use:
|
|
37
|
-
|
|
38
|
-
```text
|
|
39
|
-
node <gse-skill>/scripts/generate-command-adapter.mjs --target <project-root> --host claude|codex|hermes|workbuddy|copilot|gemini|generic|all
|
|
40
|
-
```
|
|
41
|
-
|
|
42
|
-
This creates the smallest host command pointer available for the selected host. Generated files must still point back to `.gse/`.
|
|
43
|
-
|
|
44
|
-
Generated command adapter locations:
|
|
45
|
-
|
|
46
|
-
| Host | Generated path | Native slash-command claim |
|
|
47
|
-
|---|---|---|
|
|
48
|
-
| Claude Code-style | `.claude/commands/gse.md` | yes, file-shape only; runtime proof still needs a host invocation record |
|
|
49
|
-
| Codex-style | `.codex/gse-command.md` | no |
|
|
50
|
-
| Hermes/AION-style runtime | `.gse/host-adapters/hermes-runtime.md` | no |
|
|
51
|
-
| WorkBuddy-style IDE agent | `.gse/host-adapters/workbuddy.md` | no |
|
|
52
|
-
| GitHub Copilot-style assistant | `.github/copilot-instructions.md` | no |
|
|
53
|
-
| Gemini-style assistant | `GEMINI.md` | no |
|
|
54
|
-
| Generic or unknown agent host | `.gse/host-adapters/generic-agent.md` | no |
|
|
55
|
-
|
|
56
|
-
The Hermes, WorkBuddy, Copilot, Gemini, and generic adapters are portable pointers. They exist to prevent host workflow drift, not to prove runtime support.
|
|
57
|
-
|
|
58
|
-
For real host execution evidence, use:
|
|
59
|
-
|
|
60
|
-
```text
|
|
61
|
-
node <gse-skill>/scripts/record-host-invocation.mjs --root <skill-or-project> --host <host> --invocation-method <method> --evidence-owner <owner> --evidence <thread-or-log> --portable-text-command true --native-slash-command false
|
|
62
|
-
```
|
|
63
|
-
|
|
64
|
-
Then run:
|
|
65
|
-
|
|
66
|
-
```text
|
|
67
|
-
node <gse-skill>/scripts/audit-host-runtime-invocations.mjs --root <skill-or-project>
|
|
68
|
-
```
|
|
69
|
-
|
|
70
|
-
Before release handoff or cross-host claims, run the fixture drill:
|
|
71
|
-
|
|
72
|
-
```text
|
|
73
|
-
node <gse-skill>/scripts/audit-host-runtime-invocation-drill.mjs --root <skill-or-project>
|
|
74
|
-
```
|
|
75
|
-
|
|
76
|
-
The drill writes temporary records for Claude, Codex, Hermes/AION-style, WorkBuddy, and generic hosts, then audits native versus portable evidence counts. It proves the record/audit mechanics only; it does not prove real host runtime support.
|
|
77
|
-
|
|
78
|
-
Generated adapters are not runtime proof. A host capability becomes verified only when a persistent host invocation record exists and the audit can parse it.
|
|
79
|
-
|
|
80
|
-
Minimum fields:
|
|
81
|
-
|
|
82
|
-
- Host name and adapter path.
|
|
83
|
-
- Source of truth: always `.gse/` unless the project explicitly says otherwise.
|
|
84
|
-
- Verified capabilities: commands, hooks, MCP, LSP/index, subagents, browser, CI.
|
|
85
|
-
- Unverified or unavailable capabilities.
|
|
86
|
-
- How to start meaningful work in this host.
|
|
87
|
-
- Safety and permissions.
|
|
88
|
-
- Drift check owner or cadence.
|
|
89
|
-
|
|
90
|
-
## Tool Status Rules
|
|
91
|
-
|
|
92
|
-
Use the same vocabulary as `references/tool-adapters.md`:
|
|
93
|
-
|
|
94
|
-
- `verified`: checked in this project or trusted local docs.
|
|
95
|
-
- `documented`: present in docs or config, not tested in this session.
|
|
96
|
-
- `unknown`: not confirmed.
|
|
97
|
-
- `unavailable`: expected but missing or failing.
|
|
98
|
-
|
|
99
|
-
Never mark a host capability as `verified` because another host has it. Subagents, hooks, MCP, and browser tools are host-specific.
|
|
100
|
-
|
|
101
|
-
## Drift Prevention
|
|
102
|
-
|
|
103
|
-
Use `references/drift-audit.md` when host-specific folders, hooks, skills, MCP, subagents, runtime adapters, or capability claims may have drifted from `.gse/`.
|
|
104
|
-
|
|
105
|
-
When adding a host adapter:
|
|
106
|
-
|
|
107
|
-
1. Keep policy in `.gse/` and link back from the host folder.
|
|
108
|
-
2. Copy only the shortest host-specific command or pointer needed.
|
|
109
|
-
3. Add the adapter to `.gse/project-profile.md` under `Agent Host Adapters`.
|
|
110
|
-
4. Add any verified commands to `.gse/tooling.md`.
|
|
111
|
-
5. If the adapter changes task routing, update `.gse/goal-map.md` or `.gse/quality-gates.md` only once in the portable layer.
|
|
112
|
-
|
|
113
|
-
## Review Checklist
|
|
114
|
-
|
|
115
|
-
- Does the adapter point to `.gse/` before host-specific instructions?
|
|
116
|
-
- Are verified and unverified capabilities separated?
|
|
117
|
-
- Are secrets and write-capable tools documented without exposing credentials?
|
|
118
|
-
- Is there only one authoritative goal map and evidence location?
|
|
119
|
-
- Can a future agent using a different host still follow the project workflow?
|
|
1
|
+
# Host Adapters
|
|
2
|
+
|
|
3
|
+
Use this when a project needs GSE to work across Codex, Claude Code, Hermes/AION-style runtimes, WorkBuddy, Copilot-style agents, Gemini-style agents, or another agent host. Use `references/compatibility.md` to check host support status and adoption evidence before making capability claims.
|
|
4
|
+
|
|
5
|
+
## Core Rule
|
|
6
|
+
|
|
7
|
+
`.gse/` is the portable source of truth. Host-specific folders are adapters.
|
|
8
|
+
|
|
9
|
+
Adapters may expose commands, hooks, skills, MCP servers, indexes, or local UI metadata for one host, but they must point back to `.gse/` for project policy, goals, evidence, quality gates, and learning rules.
|
|
10
|
+
|
|
11
|
+
## Adapter Decision
|
|
12
|
+
|
|
13
|
+
Create or update a host adapter only when at least one condition is true:
|
|
14
|
+
|
|
15
|
+
- The host has a real folder, command, hook, skill, MCP, index, or plugin mechanism.
|
|
16
|
+
- The project already has host-specific rules that future agents need to find.
|
|
17
|
+
- A host-specific capability needs a short pointer to `.gse/` to avoid duplicate policy.
|
|
18
|
+
- A migration is needed from an existing `.claude/`, `.codex/`, `.agents/`, or runtime-specific workflow into `.gse/`.
|
|
19
|
+
|
|
20
|
+
Do not create host folders just for decoration. If the host capability is unknown, document it as `unknown` in `.gse/project-profile.md` or `.gse/tooling.md`.
|
|
21
|
+
|
|
22
|
+
## Supported Host Shapes
|
|
23
|
+
|
|
24
|
+
| Host shape | Common adapter location | Adapter should contain | Must not contain |
|
|
25
|
+
|---|---|---|---|
|
|
26
|
+
| Codex-style | `.codex/`, Codex skills, MCP config | Pointer to `.gse/`, skill routing notes, MCP/index notes when verified | Full duplicate goal map or stale project rules |
|
|
27
|
+
| Claude Code-style | `.claude/commands/`, `.claude/agents/`, `.claude/hooks/` | Command/agent/hook entrypoints that read `.gse/` first | Independent process constitution that conflicts with `.gse/` |
|
|
28
|
+
| Hermes/AION-style runtime | runtime skills, worker adapters, memory/tool substrate docs | Runtime bridge notes and internal capability mapping | User-facing product identity or runtime leakage |
|
|
29
|
+
| WorkBuddy/other IDE agents | local docs, plugin settings, task templates | How that host finds `.gse/` and which tools are verified | Claims that unsupported subagent or tool APIs exist |
|
|
30
|
+
| Copilot/Gemini-style assistants | repository instructions, workspace docs | Short instruction to use `.gse/project-profile.md` and relevant gates | Host-specific long workflow copies |
|
|
31
|
+
|
|
32
|
+
## Adapter Contents
|
|
33
|
+
|
|
34
|
+
Use `assets/templates/host-adapter.md` for each adapter note.
|
|
35
|
+
|
|
36
|
+
For command adapters, use:
|
|
37
|
+
|
|
38
|
+
```text
|
|
39
|
+
node <gse-skill>/scripts/generate-command-adapter.mjs --target <project-root> --host claude|codex|hermes|workbuddy|copilot|gemini|generic|all
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
This creates the smallest host command pointer available for the selected host. Generated files must still point back to `.gse/`.
|
|
43
|
+
|
|
44
|
+
Generated command adapter locations:
|
|
45
|
+
|
|
46
|
+
| Host | Generated path | Native slash-command claim |
|
|
47
|
+
|---|---|---|
|
|
48
|
+
| Claude Code-style | `.claude/commands/gse.md` | yes, file-shape only; runtime proof still needs a host invocation record |
|
|
49
|
+
| Codex-style | `.codex/gse-command.md` | no |
|
|
50
|
+
| Hermes/AION-style runtime | `.gse/host-adapters/hermes-runtime.md` | no |
|
|
51
|
+
| WorkBuddy-style IDE agent | `.gse/host-adapters/workbuddy.md` | no |
|
|
52
|
+
| GitHub Copilot-style assistant | `.github/copilot-instructions.md` | no |
|
|
53
|
+
| Gemini-style assistant | `GEMINI.md` | no |
|
|
54
|
+
| Generic or unknown agent host | `.gse/host-adapters/generic-agent.md` | no |
|
|
55
|
+
|
|
56
|
+
The Hermes, WorkBuddy, Copilot, Gemini, and generic adapters are portable pointers. They exist to prevent host workflow drift, not to prove runtime support.
|
|
57
|
+
|
|
58
|
+
For real host execution evidence, use:
|
|
59
|
+
|
|
60
|
+
```text
|
|
61
|
+
node <gse-skill>/scripts/record-host-invocation.mjs --root <skill-or-project> --host <host> --invocation-method <method> --evidence-owner <owner> --evidence <thread-or-log> --portable-text-command true --native-slash-command false
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
Then run:
|
|
65
|
+
|
|
66
|
+
```text
|
|
67
|
+
node <gse-skill>/scripts/audit-host-runtime-invocations.mjs --root <skill-or-project>
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
Before release handoff or cross-host claims, run the fixture drill:
|
|
71
|
+
|
|
72
|
+
```text
|
|
73
|
+
node <gse-skill>/scripts/audit-host-runtime-invocation-drill.mjs --root <skill-or-project>
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
The drill writes temporary records for Claude, Codex, Hermes/AION-style, WorkBuddy, and generic hosts, then audits native versus portable evidence counts. It proves the record/audit mechanics only; it does not prove real host runtime support.
|
|
77
|
+
|
|
78
|
+
Generated adapters are not runtime proof. A host capability becomes verified only when a persistent host invocation record exists and the audit can parse it.
|
|
79
|
+
|
|
80
|
+
Minimum fields:
|
|
81
|
+
|
|
82
|
+
- Host name and adapter path.
|
|
83
|
+
- Source of truth: always `.gse/` unless the project explicitly says otherwise.
|
|
84
|
+
- Verified capabilities: commands, hooks, MCP, LSP/index, subagents, browser, CI.
|
|
85
|
+
- Unverified or unavailable capabilities.
|
|
86
|
+
- How to start meaningful work in this host.
|
|
87
|
+
- Safety and permissions.
|
|
88
|
+
- Drift check owner or cadence.
|
|
89
|
+
|
|
90
|
+
## Tool Status Rules
|
|
91
|
+
|
|
92
|
+
Use the same vocabulary as `references/tool-adapters.md`:
|
|
93
|
+
|
|
94
|
+
- `verified`: checked in this project or trusted local docs.
|
|
95
|
+
- `documented`: present in docs or config, not tested in this session.
|
|
96
|
+
- `unknown`: not confirmed.
|
|
97
|
+
- `unavailable`: expected but missing or failing.
|
|
98
|
+
|
|
99
|
+
Never mark a host capability as `verified` because another host has it. Subagents, hooks, MCP, and browser tools are host-specific.
|
|
100
|
+
|
|
101
|
+
## Drift Prevention
|
|
102
|
+
|
|
103
|
+
Use `references/drift-audit.md` when host-specific folders, hooks, skills, MCP, subagents, runtime adapters, or capability claims may have drifted from `.gse/`.
|
|
104
|
+
|
|
105
|
+
When adding a host adapter:
|
|
106
|
+
|
|
107
|
+
1. Keep policy in `.gse/` and link back from the host folder.
|
|
108
|
+
2. Copy only the shortest host-specific command or pointer needed.
|
|
109
|
+
3. Add the adapter to `.gse/project-profile.md` under `Agent Host Adapters`.
|
|
110
|
+
4. Add any verified commands to `.gse/tooling.md`.
|
|
111
|
+
5. If the adapter changes task routing, update `.gse/goal-map.md` or `.gse/quality-gates.md` only once in the portable layer.
|
|
112
|
+
|
|
113
|
+
## Review Checklist
|
|
114
|
+
|
|
115
|
+
- Does the adapter point to `.gse/` before host-specific instructions?
|
|
116
|
+
- Are verified and unverified capabilities separated?
|
|
117
|
+
- Are secrets and write-capable tools documented without exposing credentials?
|
|
118
|
+
- Is there only one authoritative goal map and evidence location?
|
|
119
|
+
- Can a future agent using a different host still follow the project workflow?
|
|
@@ -1,35 +1,35 @@
|
|
|
1
|
-
# Learning System
|
|
2
|
-
|
|
3
|
-
Learnings keep long projects from repeating mistakes.
|
|
4
|
-
|
|
5
|
-
## Capture When
|
|
6
|
-
|
|
7
|
-
- User corrects an assumption.
|
|
8
|
-
- A command, tool, API, or integration fails unexpectedly.
|
|
9
|
-
- A bug root cause was non-obvious.
|
|
10
|
-
- A recurring workflow can be shortened or hardened.
|
|
11
|
-
- A missing quality gate allowed a defect through.
|
|
12
|
-
|
|
13
|
-
## Do Not Capture
|
|
14
|
-
|
|
15
|
-
- Raw chain of thought.
|
|
16
|
-
- Temporary attempts.
|
|
17
|
-
- Long command output.
|
|
18
|
-
- One-off details unlikely to help future work.
|
|
19
|
-
|
|
20
|
-
## Upgrade Rule
|
|
21
|
-
|
|
22
|
-
Use `references/drift-audit.md` when a repeated lesson suggests stale docs, stale project-profile facts, stale host adapters, stale tool assumptions, or stale evidence state.
|
|
23
|
-
|
|
24
|
-
- First occurrence: learning note.
|
|
25
|
-
- Second occurrence: checklist or template update.
|
|
26
|
-
- Third occurrence: project rule or quality gate.
|
|
27
|
-
- Fifth occurrence: script, test, or dedicated skill.
|
|
28
|
-
|
|
29
|
-
## Suggested Stores
|
|
30
|
-
|
|
31
|
-
- `.gse/learnings.md` for portable project lessons.
|
|
32
|
-
- `.learnings/` when the project already uses that convention.
|
|
33
|
-
- `AGENTS.md` for durable project rules.
|
|
34
|
-
- ADRs for architectural decisions.
|
|
35
|
-
|
|
1
|
+
# Learning System
|
|
2
|
+
|
|
3
|
+
Learnings keep long projects from repeating mistakes.
|
|
4
|
+
|
|
5
|
+
## Capture When
|
|
6
|
+
|
|
7
|
+
- User corrects an assumption.
|
|
8
|
+
- A command, tool, API, or integration fails unexpectedly.
|
|
9
|
+
- A bug root cause was non-obvious.
|
|
10
|
+
- A recurring workflow can be shortened or hardened.
|
|
11
|
+
- A missing quality gate allowed a defect through.
|
|
12
|
+
|
|
13
|
+
## Do Not Capture
|
|
14
|
+
|
|
15
|
+
- Raw chain of thought.
|
|
16
|
+
- Temporary attempts.
|
|
17
|
+
- Long command output.
|
|
18
|
+
- One-off details unlikely to help future work.
|
|
19
|
+
|
|
20
|
+
## Upgrade Rule
|
|
21
|
+
|
|
22
|
+
Use `references/drift-audit.md` when a repeated lesson suggests stale docs, stale project-profile facts, stale host adapters, stale tool assumptions, or stale evidence state.
|
|
23
|
+
|
|
24
|
+
- First occurrence: learning note.
|
|
25
|
+
- Second occurrence: checklist or template update.
|
|
26
|
+
- Third occurrence: project rule or quality gate.
|
|
27
|
+
- Fifth occurrence: script, test, or dedicated skill.
|
|
28
|
+
|
|
29
|
+
## Suggested Stores
|
|
30
|
+
|
|
31
|
+
- `.gse/learnings.md` for portable project lessons.
|
|
32
|
+
- `.learnings/` when the project already uses that convention.
|
|
33
|
+
- `AGENTS.md` for durable project rules.
|
|
34
|
+
- ADRs for architectural decisions.
|
|
35
|
+
|