@dzhechkov/skills-idea2prd 0.1.3 → 0.1.5
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/.dz-manifest.json +34 -10
- package/package.json +1 -1
- package/sbom.json +69 -9
- package/templates/.claude/skills/explore/SKILL.md +1 -1
- package/templates/.claude/skills/goap-research-ed25519/SKILL.md +141 -11
- package/templates/.claude/skills/goap-research-ed25519/scripts/check_report_evidence.py +363 -0
- package/templates/.claude/skills/goap-research-ed25519/scripts/ed25519_verifier.py +297 -4
- package/templates/.claude/skills/goap-research-ed25519/scripts/evidence_fetch.py +277 -0
- package/templates/.claude/skills/goap-research-ed25519/scripts/fixture_legacy_v1_fact.json +21 -0
- package/templates/.claude/skills/goap-research-ed25519/scripts/learning_bridge.py +462 -0
- package/templates/.claude/skills/goap-research-ed25519/scripts/source_tiers.py +170 -0
- package/templates/.claude/skills/goap-research-ed25519/scripts/test_evidence_provenance.py +784 -0
- package/templates/.claude/skills/idea2prd-manual/SKILL.md +44 -12
- package/templates/.claude/skills/idea2prd-manual/references/adr-catalog.md +3 -2
- package/templates/.claude/skills/idea2prd-manual/references/pseudocode-style.md +1 -1
- package/templates/.claude/skills/problem-solver-enhanced/SKILL.md +1 -1
|
@@ -422,12 +422,14 @@ idea2prd-manual/
|
|
|
422
422
|
|
|
423
423
|
| ADR | Decision | Status | Load-bearing property | Falsifying test |
|
|
424
424
|
|-----|----------|--------|-----------------------|-----------------|
|
|
425
|
-
| ADR-001 | [Architecture]: [choice] | Accepted | [property] | FF-
|
|
426
|
-
| ADR-002 | [Database]: [choice] | Accepted | [property] | FF-
|
|
425
|
+
| ADR-001 | [Architecture]: [choice] | Accepted | [property] | FF-NNN / [feature].feature |
|
|
426
|
+
| ADR-002 | [Database]: [choice] | Accepted | [property] | FF-NNN / [feature].feature |
|
|
427
427
|
...
|
|
428
428
|
|
|
429
|
-
> **Confirmation check:** every row above MUST name a load-bearing property and a real falsifying test
|
|
430
|
-
>
|
|
429
|
+
> **Confirmation check:** every row above MUST name a load-bearing property and a real falsifying test —
|
|
430
|
+
> a `FF-NNN` fitness function id (3-digit, matching `references/fitness-functions-catalog.md`) or a Gherkin
|
|
431
|
+
> `.feature` scenario. A blank = an incomplete ADR — go back. **Phase 5 re-checks this table** (see the
|
|
432
|
+
> Phase-5 "ADR Confirmation reconciliation" step): every id named here must EXIST in the Phase-5 output.
|
|
431
433
|
|
|
432
434
|
## C4 Diagrams
|
|
433
435
|
|
|
@@ -484,7 +486,7 @@ idea2prd-manual/
|
|
|
484
486
|
|
|
485
487
|
**Reference:** `references/pseudocode-style.md`
|
|
486
488
|
|
|
487
|
-
**Псевдокод фиксирует алгоритмическую логику ДО кодогенерации —
|
|
489
|
+
**Псевдокод фиксирует алгоритмическую логику ДО кодогенерации — кодоген реализует уже принятый дизайн, а не изобретает его по ходу.** (Никаких неподтверждённых процентов: любые метрики качества эмитятся только с честным тегом — см. раздел «Claim Discipline».)
|
|
488
490
|
|
|
489
491
|
**Действие Claude:**
|
|
490
492
|
```
|
|
@@ -563,10 +565,27 @@ END FUNCTION
|
|
|
563
565
|
### Phase 5: Validation, Tests & AI Context [ENHANCED]
|
|
564
566
|
|
|
565
567
|
**Генерирует:**
|
|
566
|
-
- 5+ Fitness Functions
|
|
568
|
+
- 5+ Fitness Functions (ids in the canonical `FF-NNN` 3-digit form — see `references/fitness-functions-catalog.md`)
|
|
567
569
|
- 5+ Gherkin Test Scenarios
|
|
568
570
|
- 8 .ai-context/ files
|
|
569
571
|
|
|
572
|
+
**ADR Confirmation reconciliation (REQUIRED — consumes the Phase-3 ADR table):**
|
|
573
|
+
|
|
574
|
+
Phase 5 is where each ADR's Confirmation stops being a promise. Before the Phase-5 checkpoint, iterate the
|
|
575
|
+
Checkpoint-3 **ADRs Summary** table and, for EVERY ADR, verify:
|
|
576
|
+
|
|
577
|
+
1. Its `Falsifying test` names a concrete artifact — a `FF-NNN` id or a `<feature>.feature` scenario — not
|
|
578
|
+
a placeholder (`FF-NNN`, `[feature]`, `TBD`, blank).
|
|
579
|
+
2. That artifact ACTUALLY EXISTS in this Phase-5 output: the `FF-NNN` id appears in the Fitness Functions
|
|
580
|
+
table (and `references/fitness-functions-catalog.md` / `scripts/fitness_validator.py`), or the `.feature`
|
|
581
|
+
file is in `docs/tests/`.
|
|
582
|
+
3. The named test is tied to the ADR's **load-bearing property** — it would go RED if that property were
|
|
583
|
+
violated (not merely a generic happy-path scenario).
|
|
584
|
+
|
|
585
|
+
A missing, placeholder, or property-mismatched test is an **incomplete ADR ⇒ Phase 5 is NOT signed off**:
|
|
586
|
+
go back and add the fitness function / Gherkin scenario (or correct the ADR). Emit the result as the "ADR
|
|
587
|
+
Confirmation Coverage" block below (every ADR row must read `✅ mapped`; any `🔴 unmapped` blocks sign-off).
|
|
588
|
+
|
|
570
589
|
**Test Scenarios (Gherkin):**
|
|
571
590
|
|
|
572
591
|
```gherkin
|
|
@@ -589,10 +608,23 @@ Feature: Order Placement
|
|
|
589
608
|
|
|
590
609
|
| ID | Rule | Target |
|
|
591
610
|
|----|------|--------|
|
|
592
|
-
| FF-
|
|
593
|
-
| FF-
|
|
611
|
+
| FF-001 | BC Independence | [target — tag MEASURED baseline or ESTIMATED from an NFR] |
|
|
612
|
+
| FF-002 | Aggregate Size | [threshold — e.g. entity cap, tag ESTIMATED with its basis] |
|
|
594
613
|
...
|
|
595
614
|
|
|
615
|
+
> Targets are claims: fill each with a tagged value (MEASURED baseline / ESTIMATED target), never a naked
|
|
616
|
+
> perfect score. See "Authoring Discipline → Claim Discipline".
|
|
617
|
+
|
|
618
|
+
## ADR Confirmation Coverage
|
|
619
|
+
|
|
620
|
+
| ADR | Load-bearing property | Named test | Exists in Phase 5? |
|
|
621
|
+
|-----|-----------------------|------------|--------------------|
|
|
622
|
+
| ADR-001 | [property] | FF-NNN / [feature].feature | ✅ mapped |
|
|
623
|
+
| ADR-002 | [property] | FF-NNN / [feature].feature | ✅ mapped |
|
|
624
|
+
...
|
|
625
|
+
|
|
626
|
+
> Any `🔴 unmapped` row blocks Phase-5 sign-off (the ADR named a test that does not exist here).
|
|
627
|
+
|
|
596
628
|
## Test Scenarios
|
|
597
629
|
|
|
598
630
|
| Feature | Scenarios | Coverage |
|
|
@@ -650,14 +682,14 @@ so nothing fragments.
|
|
|
650
682
|
3. For each genuinely NEW lesson, via Bash run VERBATIM (one call per lesson):
|
|
651
683
|
|
|
652
684
|
```bash
|
|
653
|
-
cd <BRAIN> && dz teach "<one-line reusable lesson>" --reward 0.7 --domain idea2prd --project <BRAIN>
|
|
685
|
+
cd "<BRAIN>" && dz teach "<one-line reusable lesson>" --reward 0.7 --domain idea2prd --project "<BRAIN>"
|
|
654
686
|
```
|
|
655
687
|
|
|
656
688
|
4. Log how many lessons were taught (0 is a valid, honest result on a run that surfaced nothing new).
|
|
657
689
|
|
|
658
|
-
> **Pin discipline:** Step 0 recall and this teach MUST hit the SAME `<BRAIN>` (project root) via
|
|
659
|
-
> `--project
|
|
660
|
-
> the loop does not accumulate in a single place. This mirrors the feature-adr `args.brain` rule.
|
|
690
|
+
> **Pin discipline:** Step 0 recall and this teach MUST hit the SAME absolute `<BRAIN>` (project root) via
|
|
691
|
+
> `--project`, shell-quoted — if recall reads one store and teach writes another, the two stores stay
|
|
692
|
+
> separate and the loop does not accumulate in a single place. This mirrors the feature-adr `args.brain` rule.
|
|
661
693
|
|
|
662
694
|
---
|
|
663
695
|
|
|
@@ -60,8 +60,9 @@
|
|
|
60
60
|
> Its `Required automated check` MUST name a REAL Phase-5 artifact — a `FF-NNN` fitness function
|
|
61
61
|
> (`references/fitness-functions-catalog.md` / `scripts/fitness_validator.py`) or a Gherkin `.feature`
|
|
62
62
|
> scenario — so the decision's load-bearing property is *falsifiable*, not prose. This wires Phase 3 (ADR)
|
|
63
|
-
> to Phase 5 (fitness/tests):
|
|
64
|
-
> lesson
|
|
63
|
+
> to Phase 5 (fitness/tests): the property an ADR names is often the one left untested (CLAIMED — harness
|
|
64
|
+
> feature-adr lesson, `.claude/rules/feature-adr-ultracode.md`), so the Confirmation stanza forces it to
|
|
65
|
+
> name its falsifying test.
|
|
65
66
|
> An ADR whose Confirmation names no falsifying check is **incomplete** — do not accept it at Checkpoint 3.
|
|
66
67
|
|
|
67
68
|
### Supersession discipline
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
Pseudocode в idea2prd используется для:
|
|
6
6
|
1. Точного описания алгоритмов до написания кода
|
|
7
|
-
2.
|
|
7
|
+
2. Фиксации алгоритмической логики до кодогенерации (логика описана независимо от синтаксиса реализации)
|
|
8
8
|
3. Документирования business logic
|
|
9
9
|
|
|
10
10
|
## Syntax Conventions
|
|
@@ -3,7 +3,7 @@ name: problem-solver-enhanced
|
|
|
3
3
|
description: Elite problem-solving system combining first principles thinking, game theory, root cause analysis, systematic frameworks AND TRIZ inventive principles for solving complex challenges. Use when facing complex challenges with unclear solutions, strategic decisions with multiple stakeholders, problems requiring breakthrough (not incremental) solutions, trade-offs that seem impossible to resolve, competitive scenarios requiring game-theoretic analysis, system design problems, or any situation requiring both analytical rigor and inventive thinking beyond surface-level solutions.
|
|
4
4
|
trust_tier: 1
|
|
5
5
|
trust_tier_label: "Structured"
|
|
6
|
-
trust_tier_path: "Run
|
|
6
|
+
trust_tier_path: "Run a BTO evaluation (see the skills-bto package) to promote to Tier 2"
|
|
7
7
|
---
|
|
8
8
|
|
|
9
9
|
# Elite Problem Solver (Enhanced with TRIZ)
|