@sun-asterisk/sungen 3.2.16-beta.3 → 3.2.16-beta.4

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 (40) hide show
  1. package/dist/cli/commands/delivery.d.ts.map +1 -1
  2. package/dist/cli/commands/delivery.js +16 -5
  3. package/dist/cli/commands/delivery.js.map +1 -1
  4. package/dist/exporters/matrix/build.d.ts +6 -0
  5. package/dist/exporters/matrix/build.d.ts.map +1 -1
  6. package/dist/exporters/matrix/build.js +24 -6
  7. package/dist/exporters/matrix/build.js.map +1 -1
  8. package/dist/exporters/matrix/export.d.ts +5 -4
  9. package/dist/exporters/matrix/export.d.ts.map +1 -1
  10. package/dist/exporters/matrix/export.js +15 -6
  11. package/dist/exporters/matrix/export.js.map +1 -1
  12. package/dist/exporters/matrix/gates.d.ts.map +1 -1
  13. package/dist/exporters/matrix/gates.js +20 -0
  14. package/dist/exporters/matrix/gates.js.map +1 -1
  15. package/dist/exporters/matrix/render-csv.d.ts.map +1 -1
  16. package/dist/exporters/matrix/render-csv.js +10 -5
  17. package/dist/exporters/matrix/render-csv.js.map +1 -1
  18. package/dist/exporters/matrix/render-xlsx.d.ts.map +1 -1
  19. package/dist/exporters/matrix/render-xlsx.js +63 -24
  20. package/dist/exporters/matrix/render-xlsx.js.map +1 -1
  21. package/dist/exporters/matrix/types.d.ts +3 -1
  22. package/dist/exporters/matrix/types.d.ts.map +1 -1
  23. package/dist/exporters/matrix/types.js.map +1 -1
  24. package/dist/exporters/matrix/wording.d.ts +6 -0
  25. package/dist/exporters/matrix/wording.d.ts.map +1 -1
  26. package/dist/exporters/matrix/wording.js +22 -3
  27. package/dist/exporters/matrix/wording.js.map +1 -1
  28. package/dist/orchestrator/templates/ai-src/commands/delivery.md +11 -6
  29. package/dist/orchestrator/templates/ai-src/skills/sungen-delivery/SKILL.md +25 -8
  30. package/package.json +3 -3
  31. package/src/cli/commands/delivery.ts +19 -6
  32. package/src/exporters/matrix/build.ts +23 -7
  33. package/src/exporters/matrix/export.ts +21 -6
  34. package/src/exporters/matrix/gates.ts +20 -0
  35. package/src/exporters/matrix/render-csv.ts +10 -5
  36. package/src/exporters/matrix/render-xlsx.ts +63 -24
  37. package/src/exporters/matrix/types.ts +3 -1
  38. package/src/exporters/matrix/wording.ts +20 -3
  39. package/src/orchestrator/templates/ai-src/commands/delivery.md +11 -6
  40. package/src/orchestrator/templates/ai-src/skills/sungen-delivery/SKILL.md +25 -8
@@ -36,7 +36,8 @@ oracle-shape/precondition mismatches are review-level, silenced once approved an
36
36
  D executability (precondition · condition+
37
37
  data · trigger · oracle all renderable; every `{{var}}` resolves; **no template token may survive
38
38
  into a rendered cell** — test-data cross-references are resolved for display) · E drift
39
- (fingerprint mismatch → back to review) · G review state (proposed groups block the official
39
+ (scenario fingerprint mismatch → back to review; the map's OWN reviewed
40
+ wording/grouping is fingerprinted as `__map__` too, so post-approval edits re-open review) · G review state (proposed groups block the official
40
41
  render; `--preview` renders a DRAFT watermark) · R requirement coverage (spec FR/TR/NFR ids with
41
42
  no trace and no `requirements:` status → warning) · W wording lint (map intent/oracle containing
42
43
  tokens, `[Selector]` refs, DSL phrasing, or generator labels → warning).
@@ -51,17 +52,33 @@ Precondition, `Action:` → Action, `Observable:` → Expected Result, `Oracle:`
51
52
  mid-flow assertions inline as `Verify: …`; only the final Then block is the Expected Result.
52
53
  Empty test values render as `(empty)`.
53
54
 
55
+ **Output format**: **XLSX only by default** (one artifact). `--format csv` writes the flat CSV
56
+ instead; `--format both` writes both.
57
+
54
58
  **Workbook**: `Testcases` sheet — parent rows + outline-level-1 variant sub-rows for **every**
55
59
  item (single-variant included: the sub-row carries the source VP-id, resolved data, and the
56
- result/evidence entry). Collapse outline for the customer view, expand to execute. Variant Result
57
- cells have a dropdown (Passed/Failed/Blocked/Pending/N/A) and the parent Result is a **live Excel
58
- formula** over its children (failed→blocked→pending→partial→passed, e.g. `2/3 Passed · 1 Failed`)
59
- a parent can never contradict its variants, even after manual edits. ID + Target columns are
60
- frozen; dates are ISO (`2026-08-04`). `Coverage` sheet — requirement coverage table (every FR/TR/
61
- NFR id with an explicit status), target × category grid with explicit `—` gaps, dispositions,
62
- manifest. CSV is flat with a `Level` column (`item`/`variant`) + a requirement-coverage appendix.
60
+ result/evidence entry). Sub-rows are **delta-only**: knowledge common to the whole item
61
+ (precondition, trigger) is written ONCE on the parent; a child repeats only what distinguishes it
62
+ (condition/data, precondition delta, trigger when it differs) plus its own precise oracle and
63
+ execution fields. The parent never carries placeholder text when triggers differ the cell is
64
+ simply empty and the sub-rows carry them.
65
+
66
+ Parent preconditions are the **intersection** of the variants' variant-specific setup stays on
67
+ the variant, so no variant inherits a wrong start state. Variant Result cells have a dropdown
68
+ (Passed/Failed/Blocked/Pending/N/A) and the parent Result is a **live Excel formula** over its
69
+ children (failed→blocked→pending→partial→passed; **`N/A` leaves the denominator**, all-`N/A` →
70
+ `N/A`). The summary band counts results with live formulas too. Evidence and Defect ID are
71
+ separate columns; ID + Target frozen; ISO dates; landscape print with repeated header rows.
72
+
73
+ `Coverage` sheet — requirement coverage table (every FR/TR/NFR id with an explicit status),
74
+ target × category grid with explicit `—` gaps, dispositions, manifest. CSV mirrors the same model
75
+ flat with a `Level` column (`item`/`variant`) + a requirement-coverage appendix.
63
76
  `delivery_item_count` ≠ progress — variants are the execution metric.
64
77
 
78
+ **Data fidelity**: invisible test data is made visible, never normalized — `''` → `(empty)`,
79
+ whitespace-only → `(5 spaces)`, padded → `" value "` quoted verbatim. A trim/collapse here would
80
+ silently break the whitespace tests it describes.
81
+
65
82
  **Authoring guidance the matrix rewards** (create-test side): payload/provider matrices (SQLi
66
83
  payload lists, OAuth provider sets) belong in `@cases` datasets so each case is an atomic,
67
84
  independently-reportable variant; keep dataset `case:` labels short and stable (`CHK-EMAIL-I1`),