@haus-tech/haus-workflow 5.0.0 → 5.1.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/CHANGELOG.md +13 -0
- package/dist/cli.js +913 -751
- package/library/catalog/manifest.json +67 -61
- package/library/global/agents/request-assessor.md +10 -2
- package/library/global/agents/request-specifier-eskalerad.md +8 -0
- package/library/global/agents/request-specifier.md +8 -3
- package/library/global/skills/request/SKILL.md +590 -227
- package/library/global/skills/request/scripts/archive.mjs +736 -59
- package/library/global/skills/request/scripts/compare-scores.mjs +119 -13
- package/library/global/skills/request/scripts/contract-check.mjs +268 -40
- package/library/global/skills/request/scripts/kontroll.mjs +622 -0
- package/library/global/skills/request/scripts/korning.mjs +1502 -0
- package/library/global/skills/request/scripts/lib.mjs +477 -5
- package/library/global/skills/request/scripts/precheck.mjs +132 -5
- package/library/global/skills/request/scripts/report.mjs +85 -14
- package/library/global/skills/request/scripts/svep.mjs +640 -0
- package/library/global/skills/request-assess-impact/SKILL.md +45 -4
- package/library/global/skills/request-score/SKILL.md +51 -11
- package/library/global/skills/request-score/references/poangskala.md +3 -0
- package/library/global/skills/request-sync/SKILL.md +3 -3
- package/library/global/skills/request-write-spec/SKILL.md +9 -4
- package/library/global/skills/request-write-spec/references/specformat.md +48 -0
- package/package.json +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "6.4.
|
|
2
|
+
"version": "6.4.1",
|
|
3
3
|
"manifestFormat": 2,
|
|
4
4
|
"globalPlugins": [
|
|
5
5
|
{
|
|
@@ -529,7 +529,7 @@
|
|
|
529
529
|
},
|
|
530
530
|
{
|
|
531
531
|
"id": "haus.ecc-tdd-guide",
|
|
532
|
-
"version": "1.
|
|
532
|
+
"version": "1.1.0",
|
|
533
533
|
"source": "curated",
|
|
534
534
|
"type": "agent",
|
|
535
535
|
"path": "sources/ecc/agents/tdd-guide.md",
|
|
@@ -575,12 +575,6 @@
|
|
|
575
575
|
},
|
|
576
576
|
{
|
|
577
577
|
"dependency": "typescript"
|
|
578
|
-
},
|
|
579
|
-
{
|
|
580
|
-
"stack": "playwright"
|
|
581
|
-
},
|
|
582
|
-
{
|
|
583
|
-
"dependency": "@playwright/test"
|
|
584
578
|
}
|
|
585
579
|
]
|
|
586
580
|
},
|
|
@@ -834,6 +828,70 @@
|
|
|
834
828
|
}
|
|
835
829
|
]
|
|
836
830
|
},
|
|
831
|
+
{
|
|
832
|
+
"id": "haus.ecc-tdd-workflow",
|
|
833
|
+
"version": "1.0.0",
|
|
834
|
+
"source": "curated",
|
|
835
|
+
"type": "skill",
|
|
836
|
+
"path": "sources/ecc/skills/tdd-workflow",
|
|
837
|
+
"title": "Ecc Tdd Workflow",
|
|
838
|
+
"purpose": "Use this skill when writing new features, fixing bugs, or refactoring code. Enforces test-driven development with 80%+ coverage including unit, integration, and E2E tests.",
|
|
839
|
+
"whenToUse": "Use this skill when writing new features, fixing bugs, or refactoring code. Enforces test-driven development with 80%+ coverage including unit, integration, and E2E tests.",
|
|
840
|
+
"whenNotToUse": "Not the house TDD bar — that lives in the workflow standard and the superpowers test-driven-development plugin. This is the ECC companion that haus.ecc-tdd-guide, haus.ecc-react-testing, and haus.ecc-laravel-tdd dispatch to; do not load it as a second general TDD procedure.",
|
|
841
|
+
"tags": ["workflow", "testing"],
|
|
842
|
+
"repoRoles": [],
|
|
843
|
+
"tokenEstimate": 5366,
|
|
844
|
+
"tokenBudget": 6976,
|
|
845
|
+
"installMode": "copy-selected",
|
|
846
|
+
"default": false,
|
|
847
|
+
"reviewStatus": "approved",
|
|
848
|
+
"riskLevel": "low",
|
|
849
|
+
"useMode": "copy",
|
|
850
|
+
"license": "MIT",
|
|
851
|
+
"licenseConfidence": "high",
|
|
852
|
+
"originSourceId": "ecc-affaanm",
|
|
853
|
+
"originUrl": "https://github.com/affaan-m/ECC/blob/ca185ef5f7667078a1e70a763bd3a9c71c48acf0/skills/tdd-workflow/SKILL.md",
|
|
854
|
+
"pinnedRef": "ca185ef5f7667078a1e70a763bd3a9c71c48acf0",
|
|
855
|
+
"ecosystem": "testing",
|
|
856
|
+
"requiresAny": [
|
|
857
|
+
{
|
|
858
|
+
"dependency": "react"
|
|
859
|
+
},
|
|
860
|
+
{
|
|
861
|
+
"stack": "testing-library"
|
|
862
|
+
},
|
|
863
|
+
{
|
|
864
|
+
"dependency": "@testing-library/react"
|
|
865
|
+
},
|
|
866
|
+
{
|
|
867
|
+
"dependency": "@testing-library/dom"
|
|
868
|
+
},
|
|
869
|
+
{
|
|
870
|
+
"stack": "vue"
|
|
871
|
+
},
|
|
872
|
+
{
|
|
873
|
+
"dependency": "vue"
|
|
874
|
+
},
|
|
875
|
+
{
|
|
876
|
+
"stack": "typescript5"
|
|
877
|
+
},
|
|
878
|
+
{
|
|
879
|
+
"dependency": "typescript"
|
|
880
|
+
},
|
|
881
|
+
{
|
|
882
|
+
"stack": "laravel"
|
|
883
|
+
},
|
|
884
|
+
{
|
|
885
|
+
"dependency": "laravel/framework"
|
|
886
|
+
},
|
|
887
|
+
{
|
|
888
|
+
"stack": "phpunit"
|
|
889
|
+
},
|
|
890
|
+
{
|
|
891
|
+
"dependency": "phpunit/phpunit"
|
|
892
|
+
}
|
|
893
|
+
]
|
|
894
|
+
},
|
|
837
895
|
{
|
|
838
896
|
"id": "haus.ecc-laravel-verification",
|
|
839
897
|
"version": "1.0.2",
|
|
@@ -4663,7 +4721,7 @@
|
|
|
4663
4721
|
},
|
|
4664
4722
|
{
|
|
4665
4723
|
"id": "haus.ecc-common-testing-rule",
|
|
4666
|
-
"version": "1.
|
|
4724
|
+
"version": "1.2.0",
|
|
4667
4725
|
"source": "curated",
|
|
4668
4726
|
"type": "rule",
|
|
4669
4727
|
"path": "sources/ecc/rules/common/testing.md",
|
|
@@ -4710,12 +4768,6 @@
|
|
|
4710
4768
|
},
|
|
4711
4769
|
{
|
|
4712
4770
|
"dependency": "typescript"
|
|
4713
|
-
},
|
|
4714
|
-
{
|
|
4715
|
-
"stack": "playwright"
|
|
4716
|
-
},
|
|
4717
|
-
{
|
|
4718
|
-
"dependency": "@playwright/test"
|
|
4719
4771
|
}
|
|
4720
4772
|
]
|
|
4721
4773
|
},
|
|
@@ -4857,52 +4909,6 @@
|
|
|
4857
4909
|
}
|
|
4858
4910
|
]
|
|
4859
4911
|
},
|
|
4860
|
-
{
|
|
4861
|
-
"id": "haus.ecc-typescript-testing-rule",
|
|
4862
|
-
"version": "1.1.0",
|
|
4863
|
-
"source": "curated",
|
|
4864
|
-
"type": "rule",
|
|
4865
|
-
"path": "sources/ecc/rules/typescript/testing.md",
|
|
4866
|
-
"title": "Ecc Typescript Testing Rule",
|
|
4867
|
-
"purpose": "TypeScript/JavaScript Testing",
|
|
4868
|
-
"whenToUse": "TypeScript/JavaScript Testing",
|
|
4869
|
-
"whenNotToUse": "Do not use when a more specific skill or command applies.",
|
|
4870
|
-
"tags": ["workflow", "typescript"],
|
|
4871
|
-
"repoRoles": [],
|
|
4872
|
-
"tokenEstimate": 94,
|
|
4873
|
-
"tokenBudget": 123,
|
|
4874
|
-
"installMode": "copy-selected",
|
|
4875
|
-
"default": false,
|
|
4876
|
-
"reviewStatus": "approved",
|
|
4877
|
-
"riskLevel": "low",
|
|
4878
|
-
"useMode": "copy",
|
|
4879
|
-
"license": "MIT",
|
|
4880
|
-
"licenseConfidence": "high",
|
|
4881
|
-
"originSourceId": "ecc-affaanm",
|
|
4882
|
-
"originUrl": "https://github.com/affaan-m/ECC/blob/a15c8e853309818e96fe495d373a7aea47b1298d/rules/typescript/testing.md",
|
|
4883
|
-
"pinnedRef": "a15c8e853309818e96fe495d373a7aea47b1298d",
|
|
4884
|
-
"ecosystem": "typescript",
|
|
4885
|
-
"requiresAny": [
|
|
4886
|
-
{
|
|
4887
|
-
"dependency": "react"
|
|
4888
|
-
},
|
|
4889
|
-
{
|
|
4890
|
-
"stack": "testing-library"
|
|
4891
|
-
},
|
|
4892
|
-
{
|
|
4893
|
-
"dependency": "@testing-library/react"
|
|
4894
|
-
},
|
|
4895
|
-
{
|
|
4896
|
-
"dependency": "@testing-library/dom"
|
|
4897
|
-
},
|
|
4898
|
-
{
|
|
4899
|
-
"stack": "playwright"
|
|
4900
|
-
},
|
|
4901
|
-
{
|
|
4902
|
-
"dependency": "@playwright/test"
|
|
4903
|
-
}
|
|
4904
|
-
]
|
|
4905
|
-
},
|
|
4906
4912
|
{
|
|
4907
4913
|
"id": "haus.samber-golang-golang-testing",
|
|
4908
4914
|
"version": "1.0.0",
|
|
@@ -18,7 +18,13 @@ repot — du läser koden på riktigt. Du frågar aldrig något och skriver inga
|
|
|
18
18
|
för grinden), `GRANSKARBLOCK:` (specens interna granskarblock: flaggorna där
|
|
19
19
|
är ofta analysens viktigaste ingång — använd dem som underlag, men citera
|
|
20
20
|
dem aldrig i dokumentets kundvända delar), `REPO-ROT:` (bekräfta att
|
|
21
|
-
katalogen finns och ser ut som rätt projekt innan du börjar)
|
|
21
|
+
katalogen finns och ser ut som rätt projekt innan du börjar), `DEPS:`
|
|
22
|
+
(`installerade` eller `saknas`: vid saknas finns inga paket i arbetskopian,
|
|
23
|
+
installera aldrig något, och redovisa det du inte kunnat belägga i paketen
|
|
24
|
+
under _Ej verifierat_ enligt skillen), `KÄLLOR:` (källmanifestet specifiern
|
|
25
|
+
fick: grep-träffar och sökvägar från starten, ett underlag att verifiera,
|
|
26
|
+
aldrig ett facit; läs vidare själv där det pekar och belägg varje påstående
|
|
27
|
+
i koden som förut).
|
|
22
28
|
3. Spåra påverkan i koden med Read/Grep/Glob: delad kod, datalagring,
|
|
23
29
|
integrationspunkter, flöden, gränssnitt, testtäckning. Det du inte kan
|
|
24
30
|
verifiera skrivs ordagrant som overifierat, enligt skillen.
|
|
@@ -32,7 +38,9 @@ repot — du läser koden på riktigt. Du frågar aldrig något och skriver inga
|
|
|
32
38
|
## Svarskontrakt
|
|
33
39
|
|
|
34
40
|
- Exakt skillens dokumentformat: en sida med de fasta rubrikerna, därefter
|
|
35
|
-
`## Till granskaren`-blocket
|
|
41
|
+
`## Till granskaren`-blocket, där raden _Avvikelse mot specen_ ALLTID börjar
|
|
42
|
+
med etiketten `ingen`, `precisering` eller `motsägelse` (formkontrollen
|
|
43
|
+
läser den). Ingen inledning, ingen avslutning, med EXAKT
|
|
36
44
|
ett undantag: allra sist raden `MODELL: <ditt modell-id>` (dispatchern
|
|
37
45
|
strippar den före arkivering).
|
|
38
46
|
|
|
@@ -19,6 +19,10 @@ en känslig kategori flyttar pengar: lägg din omsorg där.
|
|
|
19
19
|
Kan skillen eller dess referensfil inte läsas: skriv ingen spec, säg det, stanna.
|
|
20
20
|
2. Läs prompten: `ÖNSKEMÅL:` (ordagrant underlag), `KÄLLOR:` (manifest med
|
|
21
21
|
absoluta sökvägar), `REPO-ROT:` (absolut sökväg eller "saknas"),
|
|
22
|
+
`DEPS:` (`installerade` eller `saknas`: vid saknas finns inga paket att
|
|
23
|
+
verifiera exporter mot, redovisa det som antagande i stället för att gissa),
|
|
24
|
+
`SPRÅK:` och `RUBRIKER:` (specens språk och rubrikskelettet på det språket,
|
|
25
|
+
använd literalerna ordagrant, blanda aldrig språk),
|
|
22
26
|
`ESKALERAD: ja` (alltid ja för dig — orsaken kan stå efter flaggan).
|
|
23
27
|
3. **Grunda innan du antar.** Verifiera källmanifestets påståenden med
|
|
24
28
|
Read/Grep/Glob innan du bygger på dem, och leta vidare själv under
|
|
@@ -35,6 +39,10 @@ en känslig kategori flyttar pengar: lägg din omsorg där.
|
|
|
35
39
|
`## Till granskaren`-block. Ingen inledning, ingen avslutning, ingen metatext,
|
|
36
40
|
med EXAKT ett undantag: allra sist raden `MODELL: <ditt modell-id>`
|
|
37
41
|
(dispatchern strippar den före arkivering).
|
|
42
|
+
- Ofullständigt underlag hanteras enligt skillen (kvalificerat antagande, eller
|
|
43
|
+
kandidatformen: markörraden `**Koncept-kandidat**`/`**Diagnos-kandidat**` direkt
|
|
44
|
+
under rubriken, Problem, ingen Lösning), aldrig genom att fråga tillbaka och
|
|
45
|
+
aldrig genom en låtsasspec.
|
|
38
46
|
|
|
39
47
|
## Förbjudet
|
|
40
48
|
|
|
@@ -17,7 +17,10 @@ inget, frågar aldrig något, och skriver inga filer — ditt svar är leveranse
|
|
|
17
17
|
Kan skillen eller dess referensfil inte läsas: skriv ingen spec, säg det, stanna.
|
|
18
18
|
2. Läs prompten: `ÖNSKEMÅL:` (ordagrant underlag), `KÄLLOR:` (manifest med
|
|
19
19
|
absoluta sökvägar), `REPO-ROT:` (absolut sökväg eller "saknas"),
|
|
20
|
-
|
|
20
|
+
`DEPS:` (`installerade` eller `saknas`: vid saknas finns inga paket att
|
|
21
|
+
verifiera exporter mot, redovisa det som antagande i stället för att gissa),
|
|
22
|
+
`SPRÅK:` och `RUBRIKER:` (specens språk och rubrikskelettet på det språket,
|
|
23
|
+
använd literalerna ordagrant, blanda aldrig språk), ev. `ESKALERAD: ja`.
|
|
21
24
|
3. **Grunda innan du antar.** Verifiera källmanifestets påståenden med
|
|
22
25
|
Read/Grep/Glob innan du bygger på dem, och leta vidare själv under
|
|
23
26
|
`REPO-ROT` där manifestet pekar. Är `REPO-ROT: saknas` eller `KÄLLOR: inga`:
|
|
@@ -34,8 +37,10 @@ inget, frågar aldrig något, och skriver inga filer — ditt svar är leveranse
|
|
|
34
37
|
`## Till granskaren`-block. Ingen inledning, ingen avslutning, ingen metatext,
|
|
35
38
|
med EXAKT ett undantag: allra sist raden `MODELL: <ditt modell-id>`
|
|
36
39
|
(dispatchern strippar den före arkivering).
|
|
37
|
-
- Ofullständigt underlag hanteras enligt skillen (kvalificerat antagande eller
|
|
38
|
-
Koncept
|
|
40
|
+
- Ofullständigt underlag hanteras enligt skillen (kvalificerat antagande, eller
|
|
41
|
+
kandidatformen: markörraden `**Koncept-kandidat**`/`**Diagnos-kandidat**` direkt
|
|
42
|
+
under rubriken, Problem, ingen Lösning), aldrig genom att fråga tillbaka och
|
|
43
|
+
aldrig genom en låtsasspec.
|
|
39
44
|
|
|
40
45
|
## Förbjudet
|
|
41
46
|
|