gentle-pi 2.1.2 → 2.2.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 +70 -12
- package/assets/agents/gentle-ai-worker.md +7 -3
- package/assets/agents/jd-fix-agent.md +1 -1
- package/assets/agents/jd-judge-a.md +3 -1
- package/assets/agents/jd-judge-b.md +3 -1
- package/assets/agents/review-readability.md +4 -1
- package/assets/agents/review-reliability.md +4 -1
- package/assets/agents/review-resilience.md +4 -1
- package/assets/agents/review-risk.md +4 -1
- package/assets/agents/sdd-apply.md +6 -1
- package/assets/agents/sdd-archive.md +6 -1
- package/assets/agents/sdd-design.md +6 -1
- package/assets/agents/sdd-explore.md +6 -2
- package/assets/agents/sdd-init.md +10 -2
- package/assets/agents/sdd-onboard.md +6 -1
- package/assets/agents/sdd-proposal.md +6 -1
- package/assets/agents/sdd-spec.md +6 -1
- package/assets/agents/sdd-status.md +6 -1
- package/assets/agents/sdd-sync.md +6 -1
- package/assets/agents/sdd-tasks.md +6 -1
- package/assets/agents/sdd-verify.md +6 -1
- package/assets/chains/4r-review.chain.md +2 -0
- package/assets/chains/sdd-full.chain.md +1 -1
- package/assets/chains/sdd-plan.chain.md +1 -1
- package/assets/chains/sdd-verify.chain.md +1 -1
- package/assets/orchestrator-delegation.md +246 -67
- package/assets/orchestrator.md +7 -14
- package/assets/sdd-orchestrator-workflow.md +154 -9
- package/assets/support/sdd-status-contract.md +19 -1
- package/contracts/review-integration/v1/fixtures/consent.fixture.json +3 -3
- package/contracts/review-integration/v1/fixtures/start-v2.fixture.json +19 -28
- package/contracts/review-integration/v1/fixtures/start.fixture.json +1 -10
- package/contracts/review-integration/v1/fixtures/status-v2.fixture.json +12 -21
- package/contracts/review-integration/v1/schemas/correction-plan-request.schema.json +49 -0
- package/contracts/review-integration/v1/schemas/operation.schema.json +76 -0
- package/contracts/review-integration/v1/schemas/repair.schema.json +39 -0
- package/contracts/review-integration/v1/schemas/status-v2.schema.json +4 -2
- package/contracts/review-integration/v1/schemas/status.schema.json +4 -2
- package/contracts/review-integration/v2/fixtures/consent.fixture.json +1 -1
- package/contracts/review-integration/v2/fixtures/start.fixture.json +1 -10
- package/contracts/review-integration/v2/fixtures/status.fixture.json +1 -10
- package/contracts/review-integration/v2/schemas/failure.schema.json +5 -1
- package/contracts/review-integration/v2/schemas/operation.schema.json +6 -1
- package/contracts/review-integration/v2/schemas/repair.schema.json +4 -2
- package/contracts/review-integration/v2/schemas/start.schema.json +5 -2
- package/contracts/review-integration/v2/schemas/status.schema.json +4 -2
- package/contracts/review-provider-contract-mirror/provider-contract.lock.json +30 -0
- package/contracts/review-provider-contract-mirror/v1.1.0/bundle/README.md +12 -0
- package/contracts/review-provider-contract-mirror/v1.1.0/bundle/manifest.json +65 -0
- package/contracts/review-provider-contract-mirror/v1.1.0/bundle/schemas/lens.schema.json +16 -0
- package/contracts/review-provider-contract-mirror/v1.1.0/bundle/schemas/refuter.schema.json +1 -0
- package/contracts/review-provider-contract-mirror/v1.1.0/bundle/schemas/targeted-validator.schema.json +1 -0
- package/contracts/review-provider-contract-mirror/v1.1.0/bundle/vectors/lens.json +1 -0
- package/contracts/review-provider-contract-mirror/v1.1.0/bundle/vectors/refuter.json +1 -0
- package/contracts/review-provider-contract-mirror/v1.1.0/bundle/vectors/targeted-validator.json +1 -0
- package/contracts/review-provider-contract-mirror/v1.1.0/generated/provider-capabilities.baseline.json +15 -0
- package/contracts/review-provider-contract-mirror/v1.1.0/generated/provider-roles.baseline.json +42 -0
- package/docs/native-authority-architecture.md +5 -5
- package/docs/review-integration.md +22 -2
- package/extensions/gentle-ai.ts +1595 -201
- package/extensions/sdd-init.ts +19 -6
- package/extensions/skill-registry.ts +10 -2
- package/extensions/startup-banner.ts +10 -4
- package/lib/gentle-ai-binary.ts +173 -2
- package/lib/git-commit-transaction.ts +77 -17
- package/lib/native-review-cli.ts +528 -65
- package/lib/provider-contract-bundle.ts +704 -0
- package/lib/review-candidate-view.ts +527 -18
- package/lib/review-compact-contract.ts +59 -248
- package/lib/review-host-relay.ts +436 -0
- package/lib/review-integration-v2.ts +537 -36
- package/lib/review-relay-contract.ts +16 -0
- package/lib/sdd-preflight.ts +53 -1
- package/package.json +5 -2
- package/runtime/gentle-ai-binary.mjs +173 -2
- package/runtime/git-commit-transaction.mjs +75 -15
- package/runtime/native-review-cli.mjs +524 -61
- package/runtime/review-integration-v2.mjs +536 -35
- package/runtime/review-relay-contract.mjs +17 -0
- package/scripts/build-git-commit-transaction-runner.mjs +1 -0
- package/scripts/check-provider-contract.mjs +138 -0
- package/scripts/gentle-ai-installer.mjs +23 -13
- package/scripts/maintainer/provider-relay-matrix.mjs +219 -0
- package/scripts/mirror-provider-contract.mjs +143 -0
- package/scripts/test-packed-runner.mjs +16 -2
- package/scripts/verify-package-files.mjs +110 -33
- package/skills/_shared/review-ledger-contract.md +4 -6
- package/skills/gentle-ai/SKILL.md +4 -4
- package/skills/issue-creation/SKILL.md +94 -168
- package/skills/judgment-day/SKILL.md +7 -1
- package/skills/judgment-day/references/prompts-and-formats.md +2 -0
- package/skills/rdd-defect-workflow/SKILL.md +54 -0
- package/tests/background-subagents.test.ts +771 -0
- package/tests/crosslane/cross-lane.mjs +1169 -0
- package/tests/delegated-key-learnings-contract.test.ts +238 -0
- package/tests/fixtures/devbinary/capabilities-v2.1.derived.json +331 -0
- package/tests/fixtures/devbinary/capabilities-v2.2.captured.json +340 -0
- package/tests/fixtures/devbinary/consent-v3.captured.json +37 -0
- package/tests/fixtures/devbinary/failure-v2-capture-evidence.captured.json +16 -0
- package/tests/fixtures/devbinary/result-artifact-v2-path.captured.json +12 -0
- package/tests/fixtures/devbinary/result-artifact-v2.captured.json +12 -0
- package/tests/fixtures/devbinary/start-v3-consent-declined.captured.json +19 -0
- package/tests/fixtures/devbinary/start-v3-consent-granted.captured.json +109 -0
- package/tests/fixtures/devbinary/status-v5-capture-result-submission.captured.json +184 -0
- package/tests/fixtures/devbinary/status-v5-repository-context.captured.json +138 -0
- package/tests/fixtures/devbinary/status-v5.captured.json +88 -0
- package/tests/fixtures/provider-contract-bundle/v1.1.0/README.md +12 -0
- package/tests/fixtures/provider-contract-bundle/v1.1.0/manifest.json +65 -0
- package/tests/fixtures/provider-contract-bundle/v1.1.0/schemas/lens.schema.json +16 -0
- package/tests/fixtures/provider-contract-bundle/v1.1.0/schemas/refuter.schema.json +1 -0
- package/tests/fixtures/provider-contract-bundle/v1.1.0/schemas/targeted-validator.schema.json +1 -0
- package/tests/fixtures/provider-contract-bundle/v1.1.0/vectors/lens.json +1 -0
- package/tests/fixtures/provider-contract-bundle/v1.1.0/vectors/refuter.json +1 -0
- package/tests/fixtures/provider-contract-bundle/v1.1.0/vectors/targeted-validator.json +1 -0
- package/tests/gentle-ai-binary.test.ts +1 -1
- package/tests/gentle-ai-dev-binary-surfacing.test.ts +195 -0
- package/tests/gentle-ai-dev-binary.test.ts +336 -0
- package/tests/gentle-ai-installer.test.ts +46 -46
- package/tests/git-commit-transaction.test.ts +229 -1
- package/tests/maintainer/provider-relay.maintest.ts +265 -0
- package/tests/native-review-capability-contract.test.ts +48 -2
- package/tests/native-review-cli.test.ts +56 -0
- package/tests/native-review-consent.test.ts +164 -3
- package/tests/native-review-parity-runtime.test.ts +37 -0
- package/tests/native-review-parity.test.ts +218 -15
- package/tests/native-sdd-attempt-authority.test.ts +235 -0
- package/tests/orchestrator-budget.test.ts +30 -5
- package/tests/package-manifest.test.ts +98 -72
- package/tests/provider-contract-bundle.test.ts +385 -0
- package/tests/provider-contract-mirror.test.ts +206 -0
- package/tests/provider-defect-handoff.test.ts +355 -0
- package/tests/review-actor-tool-deny.test.ts +12 -13
- package/tests/review-candidate-view.test.ts +489 -9
- package/tests/review-compact-contract.test.ts +52 -119
- package/tests/review-controller-native-recovery.test.ts +643 -47
- package/tests/review-controller-native-routing.test.ts +1667 -222
- package/tests/review-controller-workspace-root.test.ts +17 -2
- package/tests/review-corrected-finalize-binding.test.ts +175 -0
- package/tests/review-dispatch-hydration-gap.test.ts +197 -0
- package/tests/review-host-relay-routing.test.ts +317 -0
- package/tests/review-host-relay.test.ts +520 -0
- package/tests/review-integration-v2-forward.test.ts +631 -0
- package/tests/review-integration-v2.test.ts +114 -0
- package/tests/review-ledger-contract.test.ts +12 -28
- package/tests/review-recovered-lineage-routing.test.ts +246 -0
- package/tests/review-relay-transport-agent.test.ts +249 -0
- package/tests/runtime-harness.mjs +242 -14
- package/tests/sdd-agent-tools.test.ts +18 -33
- package/tests/skill-collision-prefixes.test.ts +1 -0
- package/tests/skill-registry.test.ts +50 -1
- package/tests/verify-package-files.test.ts +62 -0
- package/assets/agents/review-refuter.md +0 -40
- package/assets/agents/review-validator.md +0 -23
- package/lib/native-review-remediation.ts +0 -49
- package/lib/review-compact.ts +0 -947
- package/lib/review-refuter-adapter.ts +0 -129
- package/lib/review-runtime-contract.ts +0 -68
- package/prompts/gcl.md +0 -54
- package/prompts/gis.md +0 -25
- package/prompts/gpr.md +0 -41
- package/prompts/gwr.md +0 -31
- package/tests/fixtures/native-review-cli/v2.1.2/bind-sdd.json +0 -25
- package/tests/fixtures/native-review-cli/v2.1.2/finalize.json +0 -8
- package/tests/fixtures/native-review-cli/v2.1.2/sdd-status-engram.json +0 -139
- package/tests/fixtures/native-review-cli/v2.1.2/sdd-status.json +0 -200
- package/tests/fixtures/native-review-cli/v2.1.2/start.json +0 -12
- package/tests/fixtures/native-review-cli/v2.1.2/validate-allow.json +0 -24
- package/tests/fixtures/native-review-cli/v2.1.2/validate-deny-empty-context.json +0 -20
- package/tests/fixtures/native-review-cli/v2.1.2/validate-deny.json +0 -28
- package/tests/review-compact.test.ts +0 -243
- package/tests/review-refuter-adapter.test.ts +0 -89
|
@@ -1,223 +1,149 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: gentle-ai-issue-creation
|
|
3
|
-
description: "Create
|
|
3
|
+
description: "Create and triage GitHub issues from repository evidence. Trigger: issue creation, bug reports, feature requests, or issue approval."
|
|
4
4
|
license: Apache-2.0
|
|
5
5
|
metadata:
|
|
6
6
|
author: gentleman-programming
|
|
7
|
-
version: "1.
|
|
7
|
+
version: "1.2"
|
|
8
8
|
---
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
# Issue Creation
|
|
11
11
|
|
|
12
|
-
|
|
13
|
-
- Creating a GitHub issue (bug report or feature request)
|
|
14
|
-
- Helping a contributor file an issue
|
|
15
|
-
- Triaging or approving issues as a maintainer
|
|
12
|
+
## When To Use
|
|
16
13
|
|
|
17
|
-
|
|
14
|
+
Use this skill when creating, drafting, triaging, or approving an issue in the current GitHub repository.
|
|
18
15
|
|
|
19
|
-
##
|
|
16
|
+
## Core Rule
|
|
20
17
|
|
|
21
|
-
|
|
22
|
-
2. **Every issue gets `status:needs-review` automatically** on creation
|
|
23
|
-
3. **A maintainer MUST add `status:approved`** before any PR can be opened
|
|
24
|
-
4. **Questions go to [Discussions](https://github.com/Gentleman-Programming/agent-teams-lite/discussions)**, not issues
|
|
18
|
+
Discover the repository's actual contribution workflow before proposing or publishing an issue. Templates, labels, approval gates, and Discussions support are repository policy, not universal GitHub behavior.
|
|
25
19
|
|
|
26
|
-
|
|
20
|
+
## Safe Discovery
|
|
27
21
|
|
|
28
|
-
|
|
22
|
+
Run read-only checks first:
|
|
29
23
|
|
|
24
|
+
```bash
|
|
25
|
+
gh auth status
|
|
26
|
+
REPO="$(gh repo view --json nameWithOwner -q .nameWithOwner)"
|
|
27
|
+
REPO_URL="$(gh repo view --json url -q .url)"
|
|
28
|
+
HOST="${REPO_URL#*://}"
|
|
29
|
+
HOST="${HOST%%/*}"
|
|
30
|
+
gh repo view --json nameWithOwner,url,hasDiscussionsEnabled,hasIssuesEnabled,isBlankIssuesEnabled
|
|
31
|
+
git ls-files CONTRIBUTING.md CONTRIBUTING.* .github/CONTRIBUTING.md .github/ISSUE_TEMPLATE
|
|
32
|
+
gh api --hostname "$HOST" --paginate "repos/$REPO/labels?per_page=100" --jq '.[].name'
|
|
30
33
|
```
|
|
31
|
-
1. Search existing issues for duplicates
|
|
32
|
-
2. Choose the correct template (Bug Report or Feature Request)
|
|
33
|
-
3. Fill in ALL required fields
|
|
34
|
-
4. Check pre-flight checkboxes
|
|
35
|
-
5. Submit → issue gets status:needs-review automatically
|
|
36
|
-
6. Wait for maintainer to add status:approved
|
|
37
|
-
7. Only then open a PR linking this issue
|
|
38
|
-
```
|
|
39
|
-
|
|
40
|
-
---
|
|
41
|
-
|
|
42
|
-
## Issue Templates
|
|
43
34
|
|
|
44
|
-
|
|
35
|
+
Also inspect:
|
|
45
36
|
|
|
46
|
-
|
|
47
|
-
|
|
37
|
+
- repository instructions such as `CONTRIBUTING.md` and `README.md`;
|
|
38
|
+
- files under `.github/ISSUE_TEMPLATE`;
|
|
39
|
+
- `.github/ISSUE_TEMPLATE/config.yml` when present;
|
|
40
|
+
- issue forms, required fields, and labels declared by each template;
|
|
41
|
+
- existing open and closed issues for duplicates and established wording.
|
|
48
42
|
|
|
49
|
-
|
|
43
|
+
Stop and ask for repository context if authentication, repository resolution, verification that REPO and HOST are non-empty, required metadata is unavailable, hasIssuesEnabled is false, or policy discovery fails. Never continue from failed discovery into issue publication.
|
|
50
44
|
|
|
51
|
-
|
|
52
|
-
|-------|-------------|
|
|
53
|
-
| **Pre-flight Checks** | Checkboxes: no duplicate + understands approval workflow |
|
|
54
|
-
| **Bug Description** | Clear description of the bug |
|
|
55
|
-
| **Steps to Reproduce** | Numbered steps to reproduce |
|
|
56
|
-
| **Expected Behavior** | What should have happened |
|
|
57
|
-
| **Actual Behavior** | What happened instead (include errors/logs) |
|
|
58
|
-
| **Operating System** | Dropdown: macOS, Linux variants, Windows, WSL |
|
|
59
|
-
| **Agent / Client** | Dropdown: Claude Code, OpenCode, Gemini CLI, Cursor, Windsurf, Codex, Other |
|
|
60
|
-
| **Shell** | Dropdown: bash, zsh, fish, Other |
|
|
45
|
+
A no-template fallback is allowed only when isBlankIssuesEnabled is explicitly true. Otherwise follow discovered contact links or stop and ask; never publish.
|
|
61
46
|
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
| Field | Description |
|
|
65
|
-
|-------|-------------|
|
|
66
|
-
| **Relevant Logs** | Log output (auto-formatted as code block) |
|
|
67
|
-
| **Additional Context** | Screenshots, workarounds, extra info |
|
|
68
|
-
|
|
69
|
-
#### Example — Bug Report via CLI
|
|
47
|
+
After discovery and review, build optional label arguments using only labels that exist and repository policy permits the actor to apply:
|
|
70
48
|
|
|
71
49
|
```bash
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
- [x] I have searched existing issues and this is not a duplicate
|
|
77
|
-
- [x] I understand this issue needs status:approved before a PR can be opened
|
|
78
|
-
|
|
79
|
-
### Bug Description
|
|
80
|
-
Running setup.sh on zsh throws a glob error when no matching files exist.
|
|
81
|
-
|
|
82
|
-
### Steps to Reproduce
|
|
83
|
-
1. Clone the repo
|
|
84
|
-
2. Run \`./scripts/setup.sh\` in zsh
|
|
85
|
-
3. See error: \`zsh: no matches found: skills/*\`
|
|
86
|
-
|
|
87
|
-
### Expected Behavior
|
|
88
|
-
The script should handle missing glob matches gracefully.
|
|
89
|
-
|
|
90
|
-
### Actual Behavior
|
|
91
|
-
Script crashes with glob error.
|
|
50
|
+
LABEL_ARGS=()
|
|
51
|
+
# Repeat for each reviewed, permitted discovered label.
|
|
52
|
+
LABEL_ARGS+=(--label "$LABEL")
|
|
53
|
+
```
|
|
92
54
|
|
|
93
|
-
|
|
94
|
-
macOS
|
|
55
|
+
An empty array applies no label; do not invent labels.
|
|
95
56
|
|
|
96
|
-
|
|
97
|
-
Claude Code
|
|
57
|
+
## Workflow
|
|
98
58
|
|
|
99
|
-
|
|
100
|
-
|
|
59
|
+
1. Describe the problem or request in one sentence and derive a short search query.
|
|
60
|
+
2. Search open and closed issues:
|
|
101
61
|
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
\`\`\`
|
|
106
|
-
"
|
|
107
|
-
```
|
|
62
|
+
```bash
|
|
63
|
+
gh issue list --repo "$HOST/$REPO" --state all --search "$QUERY" --limit 1000
|
|
64
|
+
```
|
|
108
65
|
|
|
109
|
-
|
|
66
|
+
If 1000 results are returned or completeness remains uncertain, narrow the search, use read-only API discovery, or stop and ask before publishing.
|
|
110
67
|
|
|
111
|
-
|
|
68
|
+
3. If an issue already covers the same behavior, comment there instead of creating a duplicate.
|
|
69
|
+
4. Choose a repository-provided template only when its purpose matches the report.
|
|
70
|
+
5. Fill every required template field from known evidence. Ask for missing facts rather than inventing them.
|
|
71
|
+
6. Apply labels only when they exist and repository guidance establishes who should apply them.
|
|
72
|
+
7. Publish only after the title, body, target repository, and selected template or fallback have been reviewed, and the pre-submission privacy review below has passed.
|
|
112
73
|
|
|
113
|
-
|
|
114
|
-
Auto-labels: `enhancement`, `status:needs-review`
|
|
74
|
+
## Pre-submission Privacy Review
|
|
115
75
|
|
|
116
|
-
|
|
76
|
+
Pre-submission privacy review is mandatory. Scan every issue body immediately before `gh issue create`. The scan replaces — never deletes — environment-specific data with explicit placeholders so the reproduction still teaches:
|
|
117
77
|
|
|
118
|
-
|
|
|
119
|
-
|
|
120
|
-
|
|
|
121
|
-
|
|
|
122
|
-
|
|
|
123
|
-
|
|
|
78
|
+
| Category | Replace with | Example (before → after) |
|
|
79
|
+
|----------|---------------|---------------------------|
|
|
80
|
+
| Private project names | `<project-name>` | `my-private-project-b` → `<project-name>` |
|
|
81
|
+
| Usernames | `<user>` | `C:\Users\my-real-username\go\bin` → `C:\Users\<user>\go\bin` |
|
|
82
|
+
| Hostnames | `<hostname>` | `devbox-macbook.local` → `<hostname>` |
|
|
83
|
+
| Home paths | `/home/<user>` or `C:\Users\<user>` | (covered above) |
|
|
84
|
+
| API keys, tokens, passwords | `<token>` / `<password>` | `ghp_abc123...` → `<token>` |
|
|
85
|
+
| Internal ports / hostnames | `<host>:<port>` | `10.0.0.42:5432` → `<host>:<port>` |
|
|
124
86
|
|
|
125
|
-
|
|
87
|
+
Do NOT redact intentionally public identifiers: tool names (`gentle-ai`, `engram`, `go`, `node`, `python`), package names, public documentation URLs, generic example domains (`example.com`, `localhost`). Keep reproduction structure with placeholders — never redact an example into nothingness.
|
|
126
88
|
|
|
127
|
-
|
|
128
|
-
|-------|-------------|
|
|
129
|
-
| **Alternatives Considered** | Other approaches or workarounds |
|
|
130
|
-
| **Additional Context** | Mockups, examples, references |
|
|
89
|
+
**Rule of thumb:** if the reader can run the reproduction step after you replace every identifier with its placeholder, the sanitization is correct. If a step becomes impossible (because the placeholder consumed a needed value), that step needs the value — and you should mark it `<value-required>` and explain in the body what the user should fill in.
|
|
131
90
|
|
|
132
|
-
|
|
91
|
+
## Template Paths
|
|
133
92
|
|
|
134
|
-
|
|
135
|
-
gh issue create --template "feature_request.yml" \
|
|
136
|
-
--title "feat(scripts): add Codex support to setup.sh" \
|
|
137
|
-
--body "
|
|
138
|
-
### Pre-flight Checks
|
|
139
|
-
- [x] I have searched existing issues and this is not a duplicate
|
|
140
|
-
- [x] I understand this issue needs status:approved before a PR can be opened
|
|
141
|
-
|
|
142
|
-
### Problem Description
|
|
143
|
-
The setup script only configures Claude Code, Gemini CLI, and OpenCode. Codex users have to manually copy skills.
|
|
144
|
-
|
|
145
|
-
### Proposed Solution
|
|
146
|
-
Add a Codex option to setup.sh that links skills to the .codex/ directory.
|
|
147
|
-
|
|
148
|
-
Example:
|
|
149
|
-
\`\`\`bash
|
|
150
|
-
./scripts/setup.sh --agent codex
|
|
151
|
-
\`\`\`
|
|
152
|
-
|
|
153
|
-
### Affected Area
|
|
154
|
-
Scripts (setup, installation)
|
|
155
|
-
|
|
156
|
-
### Alternatives Considered
|
|
157
|
-
Manually symlinking, but that defeats the purpose of the setup script.
|
|
158
|
-
"
|
|
159
|
-
```
|
|
93
|
+
Do not guess a template filename. If multiple templates could apply and repository guidance does not distinguish them, stop and ask which one to use.
|
|
160
94
|
|
|
161
|
-
|
|
95
|
+
- .yml and .yaml files are GitHub Issue Forms. Do not parse or render their schema. Open the web issue chooser and stop for human completion:
|
|
162
96
|
|
|
163
|
-
|
|
97
|
+
```bash
|
|
98
|
+
gh issue create --repo "$HOST/$REPO" --web "${LABEL_ARGS[@]}"
|
|
99
|
+
```
|
|
164
100
|
|
|
165
|
-
|
|
101
|
+
- .md files are Markdown templates. Read the matching template, complete it from known evidence into a reviewed BODY_FILE, then publish it:
|
|
166
102
|
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
| Feature Request | `enhancement`, `status:needs-review` |
|
|
103
|
+
```bash
|
|
104
|
+
gh issue create --repo "$HOST/$REPO" --title "$TITLE" --body-file "$BODY_FILE" "${LABEL_ARGS[@]}"
|
|
105
|
+
```
|
|
171
106
|
|
|
172
|
-
|
|
107
|
+
## No-Template Fallback
|
|
173
108
|
|
|
174
|
-
|
|
175
|
-
|-------|--------------|
|
|
176
|
-
| `status:approved` | Issue accepted for implementation — PRs can now be opened |
|
|
177
|
-
| `priority:high` | Critical bug or urgent feature |
|
|
178
|
-
| `priority:medium` | Important but not blocking |
|
|
179
|
-
| `priority:low` | Nice to have |
|
|
109
|
+
When the repository permits issue creation, provides no matching template, and isBlankIssuesEnabled is explicitly true, prepare a structured body with these sections:
|
|
180
110
|
|
|
181
|
-
|
|
111
|
+
- problem or requested outcome;
|
|
112
|
+
- reproduction or motivating example;
|
|
113
|
+
- expected behavior;
|
|
114
|
+
- actual behavior or current limitation;
|
|
115
|
+
- environment and relevant evidence;
|
|
116
|
+
- alternatives or workarounds, when applicable.
|
|
182
117
|
|
|
183
|
-
|
|
118
|
+
Publish the reviewed fallback explicitly:
|
|
184
119
|
|
|
185
|
-
```
|
|
186
|
-
|
|
187
|
-
2. Review the issue — is it valid, clear, and in scope?
|
|
188
|
-
3. If YES → add status:approved label
|
|
189
|
-
4. If NO → comment with reason, close if needed
|
|
190
|
-
5. Contributor can now open a PR linking this issue
|
|
120
|
+
```bash
|
|
121
|
+
gh issue create --repo "$HOST/$REPO" --title "$TITLE" --body "$BODY" "${LABEL_ARGS[@]}"
|
|
191
122
|
```
|
|
192
123
|
|
|
193
|
-
|
|
124
|
+
If blank issues are not explicitly enabled, follow discovered contact links or stop and ask. Never publish a no-template fallback.
|
|
194
125
|
|
|
195
|
-
##
|
|
126
|
+
## Labels And Approval
|
|
196
127
|
|
|
197
|
-
|
|
198
|
-
Is it a bug? → Use Bug Report template
|
|
199
|
-
Is it a new feature/improvement? → Use Feature Request template
|
|
200
|
-
Is it a question? → Use Discussions, NOT issues
|
|
201
|
-
Is it a duplicate? → Link to existing issue, close
|
|
202
|
-
```
|
|
128
|
+
Treat labels and approval gates as conditional:
|
|
203
129
|
|
|
204
|
-
|
|
130
|
+
- use only labels returned by repository discovery;
|
|
131
|
+
- follow contribution guidance for who may apply each label;
|
|
132
|
+
- wait when repository policy requires maintainer approval before implementation;
|
|
133
|
+
- do not invent a status or priority taxonomy when none is documented.
|
|
205
134
|
|
|
206
|
-
##
|
|
135
|
+
## Questions And Discussions
|
|
207
136
|
|
|
208
|
-
|
|
209
|
-
# Search existing issues before creating
|
|
210
|
-
gh issue list --search "keyword"
|
|
137
|
+
Use Discussions only when `hasDiscussionsEnabled` is true and repository guidance routes the question there. Otherwise follow documented support/contact links or ask the user where the question belongs. Never link to another repository's Discussions page.
|
|
211
138
|
|
|
212
|
-
|
|
213
|
-
gh issue create --template "bug_report.yml" --title "fix(scope): description"
|
|
139
|
+
## Triage Decision
|
|
214
140
|
|
|
215
|
-
|
|
216
|
-
gh issue create --template "feature_request.yml" --title "feat(scope): description"
|
|
141
|
+
Before approving or closing an issue, verify:
|
|
217
142
|
|
|
218
|
-
|
|
219
|
-
|
|
143
|
+
- it describes a concrete bug or scoped improvement rather than an unsupported question;
|
|
144
|
+
- it is not a duplicate;
|
|
145
|
+
- the report contains enough evidence for an implementation decision;
|
|
146
|
+
- the requested behavior is in repository scope;
|
|
147
|
+
- labels and status changes follow the current repository's policy.
|
|
220
148
|
|
|
221
|
-
|
|
222
|
-
gh issue edit <number> --add-label "priority:high"
|
|
223
|
-
```
|
|
149
|
+
If any point is uncertain, keep the issue in the repository's review state and request the smallest missing evidence.
|
|
@@ -4,13 +4,15 @@ description: "Trigger: judgment day, judgement day, dual review, adversarial rev
|
|
|
4
4
|
license: Apache-2.0
|
|
5
5
|
metadata:
|
|
6
6
|
author: gentleman-programming
|
|
7
|
-
version: "1.
|
|
7
|
+
version: "1.7"
|
|
8
8
|
---
|
|
9
9
|
|
|
10
10
|
## Activation Contract
|
|
11
11
|
|
|
12
12
|
Load this skill only when the user explicitly requests Judgment Day, Judgement Day, dual/adversarial review, or an equivalent trigger. Resolve one exact target before starting.
|
|
13
13
|
|
|
14
|
+
Judgment Day is a standalone developer tool: judges run whenever asked, on any runtime, and need no review transaction, runtime identity, or delivery-receipt machinery to start. It replaces ordinary 4R as the adversarial method for that target; never run both.
|
|
15
|
+
|
|
14
16
|
Judgment Day starts only when explicitly requested and replaces ordinary review for that lineage.
|
|
15
17
|
|
|
16
18
|
## Transaction Rules
|
|
@@ -25,6 +27,8 @@ Initial discovery and scoped re-judgment are separate modes.
|
|
|
25
27
|
|
|
26
28
|
During initial discovery, run exactly once against the supplied `initial_review_tree` and return candidate rows only.
|
|
27
29
|
|
|
30
|
+
Judges hold a sweep budget: one exhaustive read-only sweep per judge is the standard budget, and at most two sweeps for a full-4R-scale target (hot auth/update/security/payments paths, or more than 400 changed lines). There is no loop-until-dry mechanism; the sweep budget is the entire discovery pass.
|
|
31
|
+
|
|
28
32
|
During initial discovery, do not persist state, mutate claims, launch actors, request fixes, validate fixes, or deliver anything.
|
|
29
33
|
|
|
30
34
|
On controller-requested scoped re-judgment, receive only requested frozen IDs, their exact hash-bound rows, and the fix diff.
|
|
@@ -59,6 +63,8 @@ Each scoped fix returns candidate-tree and fix-diff evidence. It cannot mint aut
|
|
|
59
63
|
|
|
60
64
|
## Lifecycle Boundary
|
|
61
65
|
|
|
66
|
+
A judgment issues no receipt and carries no delivery authority: it satisfies no commit, push, PR, or release gate. When the caller explicitly wants delivery authority for the same target, run the ordinary negotiated review lifecycle as its own step; a runtime that cannot uphold receipt guarantees loses the receipt, not the judgment.
|
|
67
|
+
|
|
62
68
|
Pre-commit, pre-push, and PR gates validate approved receipts and exact typed targets with zero actors.
|
|
63
69
|
Release from protected `main` may bypass receipt validation only when the tag targets the current immutable `origin/main` SHA, required CI for that exact SHA is successful, the remote head is rechecked before tag push, and no fresh risk evidence exists; otherwise release fails closed through native receipt validation.
|
|
64
70
|
Major and post-incident releases require explicit extraordinary review even when fast-path checks pass.
|
|
@@ -23,6 +23,8 @@ Initial discovery and scoped re-judgment are separate modes.
|
|
|
23
23
|
|
|
24
24
|
During initial discovery, run exactly once against the supplied `initial_review_tree` and return candidate rows only.
|
|
25
25
|
|
|
26
|
+
Run one exhaustive read-only sweep — at most two sweeps for a full-4R-scale target (hot auth/update/security/payments paths, or more than 400 changed lines). Do not edit, delegate, refute, or inspect unrelated scope.
|
|
27
|
+
|
|
26
28
|
During initial discovery, do not persist state, mutate claims, launch actors, request fixes, validate fixes, or deliver anything.
|
|
27
29
|
|
|
28
30
|
Each candidate contains stable ID, exact location, severity, evidence class, and concrete user-impact claim. WARNING and SUGGESTION are informational. Return an empty `rows` array when clean.
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: gentle-ai-rdd-defect-workflow
|
|
3
|
+
description: "Trigger: RDD, receipt-driven development, review authority, receipt/lineage, correction/recovery, delivery gate/kill switch, bounded review defects. Guide work."
|
|
4
|
+
license: Apache-2.0
|
|
5
|
+
metadata:
|
|
6
|
+
author: gentleman-programming
|
|
7
|
+
version: "1.0"
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## Activation Contract
|
|
11
|
+
|
|
12
|
+
Load when the frontmatter trigger terms apply to a defect workflow.
|
|
13
|
+
|
|
14
|
+
This skill guides public collaboration. It does not grant issue approval, label, review, exception, or merge authority.
|
|
15
|
+
|
|
16
|
+
## Hard Rules
|
|
17
|
+
|
|
18
|
+
- Check the user-owned RDD kill switch first. When disabled, do not start receipt reviews or fabricate approval; follow ordinary policy and report `disabled/unmanaged`.
|
|
19
|
+
- Require an approved issue (`status:approved`) and clean current `main` reproduction before implementation. Audit existing PRs for supersession or conflict; stop or narrow stale claims.
|
|
20
|
+
- Group by causal authority invariant. Use one issue and one PR or explicit chain per independent invariant and rollback boundary. Split independent causes; never merge a superseded or conflicting authority line.
|
|
21
|
+
- Inventory every operator flow claimed by the issue or PR, including entry, mode, environment, expectation, and negative controls. Require one truthful black-box bench journey per CLI or lifecycle flow, or actual runtime E2E proof when the core bench cannot represent it. Synthetic proxy coverage never proves another runtime.
|
|
22
|
+
- Use CodeGraph-first impact mapping, a dedicated worktree, and behavior-first tests. Run source-mutating normalization before candidate freeze.
|
|
23
|
+
- Forecast authored changes before edits. The hard limit is 400 additions plus deletions; above it, STOP for a chain or explicit maintainer-approved exception.
|
|
24
|
+
- Only when RDD is enabled, bind receipts, lineage, correction, recovery, and delivery gates to the exact candidate. Keep bounded review defects in one correction transaction.
|
|
25
|
+
- Require independent read-only candidate validation before publication. Validation cannot edit source or authority; findings require a new candidate.
|
|
26
|
+
- Keep communication humane and evidence-based. Repository labels and workflow metadata are maintainer-owned, never evidence of contributor blame.
|
|
27
|
+
|
|
28
|
+
## Decision Gates
|
|
29
|
+
|
|
30
|
+
| Condition | Action |
|
|
31
|
+
| --- | --- |
|
|
32
|
+
| RDD disabled | Ordinary policy; `disabled/unmanaged`; no receipt or approval claim. |
|
|
33
|
+
| Issue gate or reproduction fails | Wait, stop, or narrow with evidence. |
|
|
34
|
+
| Invariant or rollback is independent | Separate issue and authoritative PR line. |
|
|
35
|
+
| Core bench fits / does not fit | Bench journey / actual runtime E2E; never proxy. |
|
|
36
|
+
| Forecast exceeds 400 lines | Chain or approved exception before edits. |
|
|
37
|
+
|
|
38
|
+
## Execution Steps
|
|
39
|
+
|
|
40
|
+
1. Check mode, approval, PR conflicts, and current-main reproduction.
|
|
41
|
+
2. Name invariant and rollback; isolate the worktree; CodeGraph-map code, tests, evidence, docs, distribution, and registration.
|
|
42
|
+
3. Inventory flows and controls; add failing tests and the smallest correction.
|
|
43
|
+
4. Normalize, enforce budget, run tests, and record each flow's exact candidate, command, scenario, and result.
|
|
44
|
+
5. Freeze, validate read-only, and give the verdict, evidence, and one humane next action.
|
|
45
|
+
|
|
46
|
+
## Output Contract
|
|
47
|
+
|
|
48
|
+
Return `rdd_mode`, `issue_pr`, `causal_invariant`, `operator_flows`, `journey_runtime_evidence`, `changed_line_budget`, `tests`, `rollback`, and `unresolved_authority_decisions`.
|
|
49
|
+
|
|
50
|
+
Identify approved and superseded/conflicting authority lines; every flow, negative control, and candidate-bound proof; additions plus deletions and chain/exception; test results; independent rollback; and unresolved maintainer decisions.
|
|
51
|
+
|
|
52
|
+
## References
|
|
53
|
+
|
|
54
|
+
No supporting files. Current repository policy remains authoritative.
|