@anselmdk/feature-spec-md 0.5.0 → 0.6.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.
Files changed (76) hide show
  1. package/README.md +59 -78
  2. package/SPEC_FORMAT.md +38 -78
  3. package/dist/cli.js +194 -86
  4. package/dist/cli.js.map +1 -1
  5. package/dist/featureSpecs.d.ts +1 -1
  6. package/dist/featureSpecs.d.ts.map +1 -1
  7. package/dist/featureSpecs.js +57 -10
  8. package/dist/featureSpecs.js.map +1 -1
  9. package/dist/githubActionDiffReport.d.ts +61 -0
  10. package/dist/githubActionDiffReport.d.ts.map +1 -1
  11. package/dist/githubActionDiffReport.js +410 -120
  12. package/dist/githubActionDiffReport.js.map +1 -1
  13. package/dist/githubActionReport.d.ts.map +1 -1
  14. package/dist/githubActionReport.js +27 -22
  15. package/dist/githubActionReport.js.map +1 -1
  16. package/dist/index.d.ts +8 -2
  17. package/dist/index.d.ts.map +1 -1
  18. package/dist/index.js +4 -1
  19. package/dist/index.js.map +1 -1
  20. package/dist/mockReports.d.ts +36 -0
  21. package/dist/mockReports.d.ts.map +1 -0
  22. package/dist/mockReports.js +280 -0
  23. package/dist/mockReports.js.map +1 -0
  24. package/dist/mocks/current/app/supportDesk.d.ts +12 -0
  25. package/dist/mocks/current/app/supportDesk.d.ts.map +1 -0
  26. package/dist/mocks/current/app/supportDesk.js +19 -0
  27. package/dist/mocks/current/app/supportDesk.js.map +1 -0
  28. package/dist/mocks/current/tests/supportDesk.spec.d.ts +3 -0
  29. package/dist/mocks/current/tests/supportDesk.spec.d.ts.map +1 -0
  30. package/dist/mocks/current/tests/supportDesk.spec.js +15 -0
  31. package/dist/mocks/current/tests/supportDesk.spec.js.map +1 -0
  32. package/dist/mocks/previous/app/supportDesk.d.ts +10 -0
  33. package/dist/mocks/previous/app/supportDesk.d.ts.map +1 -0
  34. package/dist/mocks/previous/app/supportDesk.js +9 -0
  35. package/dist/mocks/previous/app/supportDesk.js.map +1 -0
  36. package/dist/mocks/previous/tests/supportDesk.spec.d.ts +3 -0
  37. package/dist/mocks/previous/tests/supportDesk.spec.d.ts.map +1 -0
  38. package/dist/mocks/previous/tests/supportDesk.spec.js +15 -0
  39. package/dist/mocks/previous/tests/supportDesk.spec.js.map +1 -0
  40. package/dist/reportArtifacts.d.ts +7 -0
  41. package/dist/reportArtifacts.d.ts.map +1 -0
  42. package/dist/reportArtifacts.js +26 -0
  43. package/dist/reportArtifacts.js.map +1 -0
  44. package/dist/reportHtml.d.ts +9 -0
  45. package/dist/reportHtml.d.ts.map +1 -0
  46. package/dist/reportHtml.js +36 -0
  47. package/dist/reportHtml.js.map +1 -0
  48. package/dist/reportMetadata.d.ts +9 -0
  49. package/dist/reportMetadata.d.ts.map +1 -0
  50. package/dist/reportMetadata.js +28 -0
  51. package/dist/reportMetadata.js.map +1 -0
  52. package/dist/screenshots.d.ts +3 -1
  53. package/dist/screenshots.d.ts.map +1 -1
  54. package/dist/screenshots.js +23 -0
  55. package/dist/screenshots.js.map +1 -1
  56. package/dist/types.d.ts +11 -1
  57. package/dist/types.d.ts.map +1 -1
  58. package/docs/evidence-policy.md +63 -0
  59. package/docs/report-development.md +102 -0
  60. package/docs/spec-driven-flow.md +67 -8
  61. package/package.json +3 -1
  62. package/src/mocks/current/app/supportDesk.ts +27 -0
  63. package/src/mocks/current/screenshots/SUPPORT-INBOX-S001-line-27-current.svg +10 -0
  64. package/src/mocks/current/screenshots/SUPPORT-REPLY-S001-line-27-current.svg +10 -0
  65. package/src/mocks/current/screenshots/screenshots.json +18 -0
  66. package/src/mocks/current/specs/support-desk.model.md +29 -0
  67. package/src/mocks/current/specs/ticket-inbox.feature.md +27 -0
  68. package/src/mocks/current/specs/ticket-reply.feature.md +33 -0
  69. package/src/mocks/current/tests/supportDesk.spec.ts +17 -0
  70. package/src/mocks/previous/app/supportDesk.ts +17 -0
  71. package/src/mocks/previous/screenshots/SUPPORT-INBOX-S001-line-27-previous.svg +10 -0
  72. package/src/mocks/previous/screenshots/screenshots.json +11 -0
  73. package/src/mocks/previous/specs/support-desk.model.md +29 -0
  74. package/src/mocks/previous/specs/ticket-inbox.feature.md +26 -0
  75. package/src/mocks/previous/specs/ticket-reply.feature.md +26 -0
  76. package/src/mocks/previous/tests/supportDesk.spec.ts +17 -0
@@ -1,4 +1,65 @@
1
1
  import { type GithubActionOptions } from "./githubActionFtp.js";
2
2
  export type GithubActionDiffReportOptions = GithubActionOptions;
3
+ export type LocalDiffReportOptions = {
4
+ previousDir: string;
5
+ currentDir: string;
6
+ prNumber?: string;
7
+ baseBuild?: string;
8
+ currentBuild?: string;
9
+ baseBuildUrl?: string;
10
+ currentBuildUrl?: string;
11
+ baseLabel?: DiffReport["baseLabel"];
12
+ previousAssetUrlPrefix?: string;
13
+ currentAssetUrlPrefix?: string;
14
+ };
15
+ type ComparedFile = {
16
+ path: string;
17
+ kind: "report" | "screenshot" | "asset";
18
+ status: "added" | "removed" | "changed" | "unchanged";
19
+ previousHash?: string;
20
+ currentHash?: string;
21
+ previousSize?: number;
22
+ currentSize?: number;
23
+ };
24
+ type DiffLine = {
25
+ kind: "context" | "added" | "removed";
26
+ previousLine?: number;
27
+ currentLine?: number;
28
+ text: string;
29
+ };
30
+ type SpecDiff = {
31
+ key: string;
32
+ title: string;
33
+ filePath?: string;
34
+ status: "added" | "removed" | "changed";
35
+ lines: DiffLine[];
36
+ };
37
+ type ScreenshotDiffItem = {
38
+ path: string;
39
+ title: string;
40
+ status: ComparedFile["status"];
41
+ previousUrl?: string;
42
+ currentUrl?: string;
43
+ previousSize?: number;
44
+ currentSize?: number;
45
+ };
46
+ type ScreenshotDiffGroup = {
47
+ specLabel: string;
48
+ specPath?: string;
49
+ items: ScreenshotDiffItem[];
50
+ };
51
+ type DiffReport = {
52
+ prNumber: string;
53
+ baseBuild?: string;
54
+ currentBuild: string;
55
+ baseBuildUrl?: string;
56
+ currentBuildUrl: string;
57
+ baseLabel: "main" | "previous" | "none";
58
+ files: ComparedFile[];
59
+ specDiffs: SpecDiff[];
60
+ screenshotDiffs: ScreenshotDiffGroup[];
61
+ };
3
62
  export declare function publishGithubActionDiffReport(options: GithubActionDiffReportOptions): Promise<void>;
63
+ export declare function renderLocalDiffReport(options: LocalDiffReportOptions): Promise<string>;
64
+ export {};
4
65
  //# sourceMappingURL=githubActionDiffReport.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"githubActionDiffReport.d.ts","sourceRoot":"","sources":["../src/githubActionDiffReport.ts"],"names":[],"mappings":"AAKA,OAAO,EAQL,KAAK,mBAAmB,EACzB,MAAM,sBAAsB,CAAC;AAG9B,MAAM,MAAM,6BAA6B,GAAG,mBAAmB,CAAC;AAqBhE,wBAAsB,6BAA6B,CACjD,OAAO,EAAE,6BAA6B,iBA4DvC"}
1
+ {"version":3,"file":"githubActionDiffReport.d.ts","sourceRoot":"","sources":["../src/githubActionDiffReport.ts"],"names":[],"mappings":"AAKA,OAAO,EAQL,KAAK,mBAAmB,EACzB,MAAM,sBAAsB,CAAC;AAK9B,MAAM,MAAM,6BAA6B,GAAG,mBAAmB,CAAC;AAEhE,MAAM,MAAM,sBAAsB,GAAG;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC;IACpC,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAChC,CAAC;AAEF,KAAK,YAAY,GAAG;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,QAAQ,GAAG,YAAY,GAAG,OAAO,CAAC;IACxC,MAAM,EAAE,OAAO,GAAG,SAAS,GAAG,SAAS,GAAG,WAAW,CAAC;IACtD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,KAAK,QAAQ,GAAG;IACd,IAAI,EAAE,SAAS,GAAG,OAAO,GAAG,SAAS,CAAC;IACtC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAUF,KAAK,QAAQ,GAAG;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,OAAO,GAAG,SAAS,GAAG,SAAS,CAAC;IACxC,KAAK,EAAE,QAAQ,EAAE,CAAC;CACnB,CAAC;AAEF,KAAK,kBAAkB,GAAG;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC;IAC/B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,KAAK,mBAAmB,GAAG;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,kBAAkB,EAAE,CAAC;CAC7B,CAAC;AAEF,KAAK,UAAU,GAAG;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,MAAM,GAAG,UAAU,GAAG,MAAM,CAAC;IACxC,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,SAAS,EAAE,QAAQ,EAAE,CAAC;IACtB,eAAe,EAAE,mBAAmB,EAAE,CAAC;CACxC,CAAC;AAEF,wBAAsB,6BAA6B,CACjD,OAAO,EAAE,6BAA6B,iBAyCvC;AAED,wBAAsB,qBAAqB,CAAC,OAAO,EAAE,sBAAsB,mBAE1E"}