skilldrop-cli 0.12.0 → 0.12.2

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.
@@ -1,9 +1,27 @@
1
1
  {
2
- "_comment": "Full deck-spec schema. The build_deck.py script consumes this. Top-level fields: title, audience, palette, slides[].",
2
+ "_comment": "Full deck-spec schema. The build_deck.py script consumes this. Top-level fields: title, audience, aspect, template, layout_map, palette, slide_numbers, slides[].",
3
3
 
4
4
  "title": "ProjectX Migration — Board Update",
5
5
  "audience": "board",
6
6
 
7
+ "_aspect_comment": "16:9 (default), 4:3, or 16:10. Ignored when `template` is set — the template's own slide size wins.",
8
+ "aspect": "16:9",
9
+
10
+ "_template_comment": "Set `template` to a brand .pptx/.potx and the deck inherits its masters, theme fonts, colors and slide size. Relative paths resolve against this spec file. Discover the layout names with: python3 scripts/build_deck.py --list-layouts brand.potx — then map each logical layout to one. Any logical layout left out of the map falls back to the deck's own built-in design.",
11
+ "_template": "./brand/acme-master.potx",
12
+ "_layout_map": {
13
+ "title": "Title Slide",
14
+ "section": "Section Header",
15
+ "content": "Title and Content",
16
+ "two_column": "Two Content",
17
+ "big_number": "Title Only",
18
+ "quote": "Title Only",
19
+ "image": "Picture with Caption",
20
+ "table": "Title Only",
21
+ "chart": "Title Only",
22
+ "closing": "Closing"
23
+ },
24
+
7
25
  "palette": {
8
26
  "primary": "#1A2A6C",
9
27
  "secondary": "#4A5A8C",
@@ -12,6 +30,8 @@
12
30
  "text": "#222222"
13
31
  },
14
32
 
33
+ "slide_numbers": true,
34
+
15
35
  "slides": [
16
36
  {
17
37
  "layout": "title",
@@ -47,6 +67,54 @@
47
67
  "notes": "Pause here. Let the number land. Then say: we expect $5.8M annualised at full completion."
48
68
  },
49
69
 
70
+ {
71
+ "layout": "chart",
72
+ "title": "Savings accrue as services cut over",
73
+ "takeaway": "Every phase has beaten its savings forecast — phase 3 is the same shape of work.",
74
+ "chart": {
75
+ "type": "column",
76
+ "categories": ["Phase 1", "Phase 2", "Phase 3 (fcst)"],
77
+ "series": [
78
+ { "name": "Forecast ($M)", "values": [0.6, 1.4, 2.0] },
79
+ { "name": "Actual ($M)", "values": [0.8, 1.6, null] }
80
+ ],
81
+ "legend": true,
82
+ "number_format": "0.0"
83
+ },
84
+ "source": "FinOps monthly report, Aug FY26",
85
+ "notes": "Only chart numbers that exist in the source. If a forecast is a forecast, label it one."
86
+ },
87
+
88
+ {
89
+ "layout": "table",
90
+ "title": "Service cut-over status",
91
+ "columns": ["Service", "Phase", "Status", "p99 delta"],
92
+ "rows": [
93
+ ["checkout-api", "1", "Live", "-31%"],
94
+ ["billing-core", "1", "Live", "-18%"],
95
+ ["catalogue", "2", "Live", "-22%"],
96
+ ["identity", "2", "Live", "-9%"],
97
+ ["ledger", "3", "Schema rewrite", "—"],
98
+ ["reporting", "3", "Schema rewrite", "—"]
99
+ ],
100
+ "caption": "Full 14-service table in the appendix pack.",
101
+ "notes": "Don't read the table. Point at the two rows in the last column and move on."
102
+ },
103
+
104
+ {
105
+ "layout": "image",
106
+ "title": "Target architecture after phase 3",
107
+ "image": "./assets/target-architecture.png",
108
+ "position": "right",
109
+ "bullets": [
110
+ "Single control plane per region",
111
+ "Legacy DB decommissioned at phase 3 close",
112
+ "Active-active across two regions"
113
+ ],
114
+ "caption": "Generated from the C4 model — see the architecture repo for the source.",
115
+ "notes": "Raster only (PNG/JPG). Export SVG or EMF diagrams to PNG first — python-pptx cannot read them."
116
+ },
117
+
50
118
  {
51
119
  "layout": "two_column",
52
120
  "title": "What's left vs. what's added",