@unified-product-graph/core 0.8.5 → 0.8.6

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/dist/index.d.cts CHANGED
@@ -20293,7 +20293,7 @@ declare function isCanonical(text: string): boolean;
20293
20293
  */
20294
20294
 
20295
20295
  /** The current spec version implemented by this package */
20296
- declare const UPG_VERSION: "0.8.4";
20296
+ declare const UPG_VERSION: "0.8.6";
20297
20297
  /**
20298
20298
  * The `.upg` JSON document format version. Written to the `upg_version` field.
20299
20299
  * Evolves independently from `UPG_VERSION` (the catalogue version).
package/dist/index.d.ts CHANGED
@@ -20293,7 +20293,7 @@ declare function isCanonical(text: string): boolean;
20293
20293
  */
20294
20294
 
20295
20295
  /** The current spec version implemented by this package */
20296
- declare const UPG_VERSION: "0.8.4";
20296
+ declare const UPG_VERSION: "0.8.6";
20297
20297
  /**
20298
20298
  * The `.upg` JSON document format version. Written to the `upg_version` field.
20299
20299
  * Evolves independently from `UPG_VERSION` (the catalogue version).
package/dist/index.js CHANGED
@@ -13091,6 +13091,16 @@ var UPG_FRAMEWORKS = [
13091
13091
  "label": "Items to score",
13092
13092
  "entityTypeId": "feature",
13093
13093
  "description": "Features, opportunities, or solutions being evaluated"
13094
+ },
13095
+ {
13096
+ "label": "Opportunities to score",
13097
+ "entityTypeId": "opportunity",
13098
+ "description": "Opportunities scored on the same RICE Scoring inputs as features."
13099
+ },
13100
+ {
13101
+ "label": "Needs to score",
13102
+ "entityTypeId": "need",
13103
+ "description": "Needs scored on the same RICE Scoring inputs as features."
13094
13104
  }
13095
13105
  ],
13096
13106
  "data": {
@@ -13098,6 +13108,14 @@ var UPG_FRAMEWORKS = [
13098
13108
  {
13099
13109
  "type": "feature",
13100
13110
  "role": "scored_item"
13111
+ },
13112
+ {
13113
+ "type": "opportunity",
13114
+ "role": "scored_item"
13115
+ },
13116
+ {
13117
+ "type": "need",
13118
+ "role": "scored_item"
13101
13119
  }
13102
13120
  ],
13103
13121
  "required_properties": {
@@ -13138,6 +13156,82 @@ var UPG_FRAMEWORKS = [
13138
13156
  "label": "Effort",
13139
13157
  "description": "How much work is required to build and ship this, on the effort scale?"
13140
13158
  }
13159
+ ],
13160
+ "opportunity": [
13161
+ {
13162
+ "property": "reach",
13163
+ "type": "assessment",
13164
+ "scale_id": "reach_5",
13165
+ "required": true,
13166
+ "scope": "framework",
13167
+ "label": "Reach",
13168
+ "description": "How many users will this impact per quarter?"
13169
+ },
13170
+ {
13171
+ "property": "impact",
13172
+ "type": "assessment",
13173
+ "scale_id": "impact_5",
13174
+ "required": true,
13175
+ "scope": "framework",
13176
+ "label": "Impact",
13177
+ "description": "How much will this impact each user, on the impact scale?"
13178
+ },
13179
+ {
13180
+ "property": "confidence",
13181
+ "type": "assessment",
13182
+ "scale_id": "confidence_5",
13183
+ "required": true,
13184
+ "scope": "framework",
13185
+ "label": "Confidence",
13186
+ "description": "How confident are you in the reach, impact, and effort estimates?"
13187
+ },
13188
+ {
13189
+ "property": "effort",
13190
+ "type": "assessment",
13191
+ "scale_id": "effort_5",
13192
+ "required": true,
13193
+ "scope": "framework",
13194
+ "label": "Effort",
13195
+ "description": "How much work is required to build and ship this, on the effort scale?"
13196
+ }
13197
+ ],
13198
+ "need": [
13199
+ {
13200
+ "property": "reach",
13201
+ "type": "assessment",
13202
+ "scale_id": "reach_5",
13203
+ "required": true,
13204
+ "scope": "framework",
13205
+ "label": "Reach",
13206
+ "description": "How many users will this impact per quarter?"
13207
+ },
13208
+ {
13209
+ "property": "impact",
13210
+ "type": "assessment",
13211
+ "scale_id": "impact_5",
13212
+ "required": true,
13213
+ "scope": "framework",
13214
+ "label": "Impact",
13215
+ "description": "How much will this impact each user, on the impact scale?"
13216
+ },
13217
+ {
13218
+ "property": "confidence",
13219
+ "type": "assessment",
13220
+ "scale_id": "confidence_5",
13221
+ "required": true,
13222
+ "scope": "framework",
13223
+ "label": "Confidence",
13224
+ "description": "How confident are you in the reach, impact, and effort estimates?"
13225
+ },
13226
+ {
13227
+ "property": "effort",
13228
+ "type": "assessment",
13229
+ "scale_id": "effort_5",
13230
+ "required": true,
13231
+ "scope": "framework",
13232
+ "label": "Effort",
13233
+ "description": "How much work is required to build and ship this, on the effort scale?"
13234
+ }
13141
13235
  ]
13142
13236
  },
13143
13237
  "computed_properties": [
@@ -13147,6 +13241,20 @@ var UPG_FRAMEWORKS = [
13147
13241
  "entity_type": "feature",
13148
13242
  "label": "RICE Score",
13149
13243
  "format": "number"
13244
+ },
13245
+ {
13246
+ "property": "rice_score",
13247
+ "expression": "(reach * impact * confidence) / effort",
13248
+ "entity_type": "opportunity",
13249
+ "label": "RICE Score",
13250
+ "format": "number"
13251
+ },
13252
+ {
13253
+ "property": "rice_score",
13254
+ "expression": "(reach * impact * confidence) / effort",
13255
+ "entity_type": "need",
13256
+ "label": "RICE Score",
13257
+ "format": "number"
13150
13258
  }
13151
13259
  ]
13152
13260
  },
@@ -15530,6 +15638,16 @@ var UPG_FRAMEWORKS = [
15530
15638
  "label": "Ease",
15531
15639
  "entityTypeId": "feature",
15532
15640
  "description": "How easy is this to implement?"
15641
+ },
15642
+ {
15643
+ "label": "Opportunities to score",
15644
+ "entityTypeId": "opportunity",
15645
+ "description": "Opportunities scored on the same ICE Scoring inputs as features."
15646
+ },
15647
+ {
15648
+ "label": "Needs to score",
15649
+ "entityTypeId": "need",
15650
+ "description": "Needs scored on the same ICE Scoring inputs as features."
15533
15651
  }
15534
15652
  ],
15535
15653
  "data": {
@@ -15545,6 +15663,14 @@ var UPG_FRAMEWORKS = [
15545
15663
  {
15546
15664
  "type": "assumption",
15547
15665
  "role": "item"
15666
+ },
15667
+ {
15668
+ "type": "opportunity",
15669
+ "role": "scored_item"
15670
+ },
15671
+ {
15672
+ "type": "need",
15673
+ "role": "scored_item"
15548
15674
  }
15549
15675
  ],
15550
15676
  "required_properties": {
@@ -15573,6 +15699,58 @@ var UPG_FRAMEWORKS = [
15573
15699
  "label": "Ease",
15574
15700
  "description": "Ease of implementation (1-10)"
15575
15701
  }
15702
+ ],
15703
+ "opportunity": [
15704
+ {
15705
+ "property": "impact",
15706
+ "type": "number",
15707
+ "required": true,
15708
+ "scope": "framework",
15709
+ "label": "Impact",
15710
+ "description": "Expected impact on the target metric (1-10)"
15711
+ },
15712
+ {
15713
+ "property": "confidence",
15714
+ "type": "number",
15715
+ "required": true,
15716
+ "scope": "framework",
15717
+ "label": "Confidence",
15718
+ "description": "Confidence in the impact estimate (1-10)"
15719
+ },
15720
+ {
15721
+ "property": "ease",
15722
+ "type": "number",
15723
+ "required": true,
15724
+ "scope": "framework",
15725
+ "label": "Ease",
15726
+ "description": "Ease of implementation (1-10)"
15727
+ }
15728
+ ],
15729
+ "need": [
15730
+ {
15731
+ "property": "impact",
15732
+ "type": "number",
15733
+ "required": true,
15734
+ "scope": "framework",
15735
+ "label": "Impact",
15736
+ "description": "Expected impact on the target metric (1-10)"
15737
+ },
15738
+ {
15739
+ "property": "confidence",
15740
+ "type": "number",
15741
+ "required": true,
15742
+ "scope": "framework",
15743
+ "label": "Confidence",
15744
+ "description": "Confidence in the impact estimate (1-10)"
15745
+ },
15746
+ {
15747
+ "property": "ease",
15748
+ "type": "number",
15749
+ "required": true,
15750
+ "scope": "framework",
15751
+ "label": "Ease",
15752
+ "description": "Ease of implementation (1-10)"
15753
+ }
15576
15754
  ]
15577
15755
  },
15578
15756
  "computed_properties": [
@@ -15582,6 +15760,20 @@ var UPG_FRAMEWORKS = [
15582
15760
  "entity_type": "feature",
15583
15761
  "label": "ICE Score",
15584
15762
  "format": "number"
15763
+ },
15764
+ {
15765
+ "property": "ice_score",
15766
+ "expression": "impact * confidence * ease",
15767
+ "entity_type": "opportunity",
15768
+ "label": "ICE Score",
15769
+ "format": "number"
15770
+ },
15771
+ {
15772
+ "property": "ice_score",
15773
+ "expression": "impact * confidence * ease",
15774
+ "entity_type": "need",
15775
+ "label": "ICE Score",
15776
+ "format": "number"
15585
15777
  }
15586
15778
  ]
15587
15779
  },
@@ -15685,6 +15877,11 @@ var UPG_FRAMEWORKS = [
15685
15877
  "label": "Job Size",
15686
15878
  "entityTypeId": "metric",
15687
15879
  "description": "Estimated effort (story points, t-shirt size, or person-weeks)"
15880
+ },
15881
+ {
15882
+ "label": "Opportunities to score",
15883
+ "entityTypeId": "opportunity",
15884
+ "description": "Opportunities scored on the same WSJF (Weighted Shortest Job First) inputs as features."
15688
15885
  }
15689
15886
  ],
15690
15887
  "data": {
@@ -15696,6 +15893,10 @@ var UPG_FRAMEWORKS = [
15696
15893
  {
15697
15894
  "type": "metric",
15698
15895
  "role": "item"
15896
+ },
15897
+ {
15898
+ "type": "opportunity",
15899
+ "role": "scored_item"
15699
15900
  }
15700
15901
  ],
15701
15902
  "required_properties": {
@@ -15732,6 +15933,40 @@ var UPG_FRAMEWORKS = [
15732
15933
  "label": "Job Size",
15733
15934
  "description": "Estimated effort (story points, t-shirt size, or person-weeks)"
15734
15935
  }
15936
+ ],
15937
+ "opportunity": [
15938
+ {
15939
+ "property": "user_value",
15940
+ "type": "number",
15941
+ "required": true,
15942
+ "scope": "framework",
15943
+ "label": "User/Business Value",
15944
+ "description": "Relative value to users and the business if delivered"
15945
+ },
15946
+ {
15947
+ "property": "time_criticality",
15948
+ "type": "number",
15949
+ "required": true,
15950
+ "scope": "framework",
15951
+ "label": "Time Criticality",
15952
+ "description": "How much value decays if delivery is delayed (deadlines, competition, seasonal windows)"
15953
+ },
15954
+ {
15955
+ "property": "risk_reduction",
15956
+ "type": "number",
15957
+ "required": true,
15958
+ "scope": "framework",
15959
+ "label": "Risk Reduction / Opportunity Enablement",
15960
+ "description": "Value from reducing risk or enabling future opportunities"
15961
+ },
15962
+ {
15963
+ "property": "job_size",
15964
+ "type": "number",
15965
+ "required": true,
15966
+ "scope": "framework",
15967
+ "label": "Job Size",
15968
+ "description": "Estimated effort (story points, t-shirt size, or person-weeks)"
15969
+ }
15735
15970
  ]
15736
15971
  },
15737
15972
  "computed_properties": [
@@ -15741,6 +15976,13 @@ var UPG_FRAMEWORKS = [
15741
15976
  "entity_type": "feature",
15742
15977
  "label": "WSJF Score",
15743
15978
  "format": "number"
15979
+ },
15980
+ {
15981
+ "property": "wsjf_score",
15982
+ "expression": "(user_value + time_criticality + risk_reduction) / job_size",
15983
+ "entity_type": "opportunity",
15984
+ "label": "WSJF Score",
15985
+ "format": "number"
15744
15986
  }
15745
15987
  ]
15746
15988
  },
@@ -15848,6 +16090,11 @@ var UPG_FRAMEWORKS = [
15848
16090
  "label": "Risk Reduction",
15849
16091
  "entityTypeId": "risk",
15850
16092
  "description": "What risk does this mitigate?"
16093
+ },
16094
+ {
16095
+ "label": "Opportunities to score",
16096
+ "entityTypeId": "opportunity",
16097
+ "description": "Opportunities scored on the same Cost of Delay inputs as features."
15851
16098
  }
15852
16099
  ],
15853
16100
  "data": {
@@ -15867,6 +16114,10 @@ var UPG_FRAMEWORKS = [
15867
16114
  {
15868
16115
  "type": "risk",
15869
16116
  "role": "item"
16117
+ },
16118
+ {
16119
+ "type": "opportunity",
16120
+ "role": "scored_item"
15870
16121
  }
15871
16122
  ],
15872
16123
  "required_properties": {
@@ -15887,6 +16138,24 @@ var UPG_FRAMEWORKS = [
15887
16138
  "label": "Job Size",
15888
16139
  "description": "Weeks of development effort"
15889
16140
  }
16141
+ ],
16142
+ "opportunity": [
16143
+ {
16144
+ "property": "cost_of_delay",
16145
+ "type": "number",
16146
+ "required": true,
16147
+ "scope": "framework",
16148
+ "label": "Cost of Delay",
16149
+ "description": "Weekly revenue impact of not shipping"
16150
+ },
16151
+ {
16152
+ "property": "job_size",
16153
+ "type": "number",
16154
+ "required": true,
16155
+ "scope": "framework",
16156
+ "label": "Job Size",
16157
+ "description": "Weeks of development effort"
16158
+ }
15890
16159
  ]
15891
16160
  },
15892
16161
  "computed_properties": [
@@ -15896,6 +16165,13 @@ var UPG_FRAMEWORKS = [
15896
16165
  "entity_type": "feature",
15897
16166
  "label": "WSJF Score",
15898
16167
  "format": "number"
16168
+ },
16169
+ {
16170
+ "property": "wsjf_score",
16171
+ "expression": "cost_of_delay / job_size",
16172
+ "entity_type": "opportunity",
16173
+ "label": "WSJF Score",
16174
+ "format": "number"
15899
16175
  }
15900
16176
  ]
15901
16177
  },
@@ -24798,7 +25074,7 @@ function isCanonical(text) {
24798
25074
  }
24799
25075
 
24800
25076
  // src/index.ts
24801
- var UPG_VERSION = "0.8.4";
25077
+ var UPG_VERSION = "0.8.6";
24802
25078
  var UPG_FORMAT_VERSION = "0.4.0";
24803
25079
  var MARKDOWN_FORMAT_VERSION = "0.1";
24804
25080
  var UPG_TYPES = getTypes();