scene-capability-engine 3.2.0 → 3.3.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.
@@ -569,11 +569,15 @@ function registerSceneCommands(program) {
569
569
  .option('--policy <path>', 'Guardrail policy override path')
570
570
  .option('--catalog <path>', 'High-risk catalog override path')
571
571
  .option('--dialogue-policy <path>', 'Dialogue governance policy override path')
572
+ .option('--dialogue-profile <name>', 'Dialogue governance profile (business-user|system-maintainer)', 'business-user')
573
+ .option('--ui-mode <name>', 'Interaction surface mode (user-app|ops-console)')
572
574
  .option('--dialogue-out <path>', 'Dialogue governance report output path')
573
575
  .option('--runtime-mode <name>', 'Runtime mode (user-assist|ops-fix|feature-dev)', 'ops-fix')
574
576
  .option('--runtime-environment <name>', 'Runtime environment (dev|staging|prod)', 'staging')
575
577
  .option('--runtime-policy <path>', 'Runtime mode/environment policy override path')
576
578
  .option('--runtime-out <path>', 'Runtime policy evaluation output path')
579
+ .option('--authorization-tier-policy <path>', 'Authorization tier policy override path')
580
+ .option('--authorization-tier-out <path>', 'Authorization tier evaluation output path')
577
581
  .option('--context-contract <path>', 'Context contract override path for interactive intent build')
578
582
  .option('--no-strict-contract', 'Do not fail when context contract validation has issues')
579
583
  .option('--moqui-config <path>', 'Moqui adapter runtime config path')
@@ -636,11 +640,15 @@ function registerSceneCommands(program) {
636
640
  .option('--policy <path>', 'Guardrail policy override path')
637
641
  .option('--catalog <path>', 'High-risk catalog override path')
638
642
  .option('--dialogue-policy <path>', 'Dialogue governance policy override path')
643
+ .option('--dialogue-profile <name>', 'Dialogue governance profile (business-user|system-maintainer)', 'business-user')
644
+ .option('--ui-mode <name>', 'Interaction surface mode (user-app|ops-console)')
639
645
  .option('--dialogue-out <path>', 'Dialogue governance report output path')
640
646
  .option('--runtime-mode <name>', 'Runtime mode (user-assist|ops-fix|feature-dev)', 'ops-fix')
641
647
  .option('--runtime-environment <name>', 'Runtime environment (dev|staging|prod)', 'staging')
642
648
  .option('--runtime-policy <path>', 'Runtime mode/environment policy override path')
643
649
  .option('--runtime-out <path>', 'Runtime policy evaluation output path')
650
+ .option('--authorization-tier-policy <path>', 'Authorization tier policy override path')
651
+ .option('--authorization-tier-out <path>', 'Authorization tier evaluation output path')
644
652
  .option('--context-contract <path>', 'Context contract override path')
645
653
  .option('--no-strict-contract', 'Do not fail when context contract validation has issues')
646
654
  .option('--moqui-config <path>', 'Moqui adapter runtime config path')
@@ -11156,11 +11164,15 @@ function normalizeSceneInteractiveFlowOptions(options = {}) {
11156
11164
  policy: options.policy ? String(options.policy).trim() : undefined,
11157
11165
  catalog: options.catalog ? String(options.catalog).trim() : undefined,
11158
11166
  dialoguePolicy: options.dialoguePolicy ? String(options.dialoguePolicy).trim() : undefined,
11167
+ dialogueProfile: options.dialogueProfile ? String(options.dialogueProfile).trim().toLowerCase() : 'business-user',
11168
+ uiMode: options.uiMode ? String(options.uiMode).trim().toLowerCase() : undefined,
11159
11169
  dialogueOut: options.dialogueOut ? String(options.dialogueOut).trim() : undefined,
11160
11170
  runtimeMode: options.runtimeMode ? String(options.runtimeMode).trim().toLowerCase() : 'ops-fix',
11161
11171
  runtimeEnvironment: options.runtimeEnvironment ? String(options.runtimeEnvironment).trim().toLowerCase() : 'staging',
11162
11172
  runtimePolicy: options.runtimePolicy ? String(options.runtimePolicy).trim() : undefined,
11163
11173
  runtimeOut: options.runtimeOut ? String(options.runtimeOut).trim() : undefined,
11174
+ authorizationTierPolicy: options.authorizationTierPolicy ? String(options.authorizationTierPolicy).trim() : undefined,
11175
+ authorizationTierOut: options.authorizationTierOut ? String(options.authorizationTierOut).trim() : undefined,
11164
11176
  contextContract: options.contextContract ? String(options.contextContract).trim() : undefined,
11165
11177
  strictContract: options.strictContract !== false,
11166
11178
  moquiConfig: options.moquiConfig ? String(options.moquiConfig).trim() : undefined,
@@ -11224,6 +11236,13 @@ function validateSceneInteractiveFlowOptions(options) {
11224
11236
  if (!['suggestion', 'apply'].includes(String(options.executionMode || '').trim())) {
11225
11237
  return '--execution-mode must be suggestion or apply';
11226
11238
  }
11239
+ const dialogueProfile = String(options.dialogueProfile || 'business-user').trim().toLowerCase();
11240
+ if (!['business-user', 'system-maintainer'].includes(dialogueProfile)) {
11241
+ return '--dialogue-profile must be one of: business-user, system-maintainer';
11242
+ }
11243
+ if (options.uiMode !== undefined && !['user-app', 'ops-console'].includes(String(options.uiMode).trim().toLowerCase())) {
11244
+ return '--ui-mode must be one of: user-app, ops-console';
11245
+ }
11227
11246
  if (!['user-assist', 'ops-fix', 'feature-dev'].includes(String(options.runtimeMode || '').trim().toLowerCase())) {
11228
11247
  return '--runtime-mode must be one of: user-assist, ops-fix, feature-dev';
11229
11248
  }
@@ -11273,11 +11292,15 @@ function normalizeSceneInteractiveLoopOptions(options = {}) {
11273
11292
  policy: options.policy ? String(options.policy).trim() : undefined,
11274
11293
  catalog: options.catalog ? String(options.catalog).trim() : undefined,
11275
11294
  dialoguePolicy: options.dialoguePolicy ? String(options.dialoguePolicy).trim() : undefined,
11295
+ dialogueProfile: options.dialogueProfile ? String(options.dialogueProfile).trim().toLowerCase() : 'business-user',
11296
+ uiMode: options.uiMode ? String(options.uiMode).trim().toLowerCase() : undefined,
11276
11297
  dialogueOut: options.dialogueOut ? String(options.dialogueOut).trim() : undefined,
11277
11298
  runtimeMode: options.runtimeMode ? String(options.runtimeMode).trim().toLowerCase() : 'ops-fix',
11278
11299
  runtimeEnvironment: options.runtimeEnvironment ? String(options.runtimeEnvironment).trim().toLowerCase() : 'staging',
11279
11300
  runtimePolicy: options.runtimePolicy ? String(options.runtimePolicy).trim() : undefined,
11280
11301
  runtimeOut: options.runtimeOut ? String(options.runtimeOut).trim() : undefined,
11302
+ authorizationTierPolicy: options.authorizationTierPolicy ? String(options.authorizationTierPolicy).trim() : undefined,
11303
+ authorizationTierOut: options.authorizationTierOut ? String(options.authorizationTierOut).trim() : undefined,
11281
11304
  contextContract: options.contextContract ? String(options.contextContract).trim() : undefined,
11282
11305
  strictContract: options.strictContract !== false,
11283
11306
  moquiConfig: options.moquiConfig ? String(options.moquiConfig).trim() : undefined,
@@ -11322,6 +11345,13 @@ function validateSceneInteractiveLoopOptions(options) {
11322
11345
  if (!['suggestion', 'apply'].includes(String(options.executionMode || '').trim())) {
11323
11346
  return '--execution-mode must be suggestion or apply';
11324
11347
  }
11348
+ const dialogueProfile = String(options.dialogueProfile || 'business-user').trim().toLowerCase();
11349
+ if (!['business-user', 'system-maintainer'].includes(dialogueProfile)) {
11350
+ return '--dialogue-profile must be one of: business-user, system-maintainer';
11351
+ }
11352
+ if (options.uiMode !== undefined && !['user-app', 'ops-console'].includes(String(options.uiMode).trim().toLowerCase())) {
11353
+ return '--ui-mode must be one of: user-app, ops-console';
11354
+ }
11325
11355
  if (!['user-assist', 'ops-fix', 'feature-dev'].includes(String(options.runtimeMode || '').trim().toLowerCase())) {
11326
11356
  return '--runtime-mode must be one of: user-assist, ops-fix, feature-dev';
11327
11357
  }
@@ -11620,6 +11650,12 @@ async function runSceneInteractiveFlowCommand(rawOptions = {}, dependencies = {}
11620
11650
  if (options.dialoguePolicy) {
11621
11651
  args.push('--dialogue-policy', options.dialoguePolicy);
11622
11652
  }
11653
+ if (options.dialogueProfile) {
11654
+ args.push('--dialogue-profile', options.dialogueProfile);
11655
+ }
11656
+ if (options.uiMode) {
11657
+ args.push('--ui-mode', options.uiMode);
11658
+ }
11623
11659
  if (options.dialogueOut) {
11624
11660
  args.push('--dialogue-out', options.dialogueOut);
11625
11661
  }
@@ -11635,6 +11671,12 @@ async function runSceneInteractiveFlowCommand(rawOptions = {}, dependencies = {}
11635
11671
  if (options.runtimeOut) {
11636
11672
  args.push('--runtime-out', options.runtimeOut);
11637
11673
  }
11674
+ if (options.authorizationTierPolicy) {
11675
+ args.push('--authorization-tier-policy', options.authorizationTierPolicy);
11676
+ }
11677
+ if (options.authorizationTierOut) {
11678
+ args.push('--authorization-tier-out', options.authorizationTierOut);
11679
+ }
11638
11680
  if (options.contextContract) {
11639
11681
  args.push('--context-contract', options.contextContract);
11640
11682
  }
@@ -11854,6 +11896,12 @@ async function runSceneInteractiveLoopCommand(rawOptions = {}, dependencies = {}
11854
11896
  if (options.dialoguePolicy) {
11855
11897
  args.push('--dialogue-policy', options.dialoguePolicy);
11856
11898
  }
11899
+ if (options.dialogueProfile) {
11900
+ args.push('--dialogue-profile', options.dialogueProfile);
11901
+ }
11902
+ if (options.uiMode) {
11903
+ args.push('--ui-mode', options.uiMode);
11904
+ }
11857
11905
  if (options.dialogueOut) {
11858
11906
  args.push('--dialogue-out', options.dialogueOut);
11859
11907
  }
@@ -11869,6 +11917,12 @@ async function runSceneInteractiveLoopCommand(rawOptions = {}, dependencies = {}
11869
11917
  if (options.runtimeOut) {
11870
11918
  args.push('--runtime-out', options.runtimeOut);
11871
11919
  }
11920
+ if (options.authorizationTierPolicy) {
11921
+ args.push('--authorization-tier-policy', options.authorizationTierPolicy);
11922
+ }
11923
+ if (options.authorizationTierOut) {
11924
+ args.push('--authorization-tier-out', options.authorizationTierOut);
11925
+ }
11872
11926
  if (options.contextContract) {
11873
11927
  args.push('--context-contract', options.contextContract);
11874
11928
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "scene-capability-engine",
3
- "version": "3.2.0",
3
+ "version": "3.3.2",
4
4
  "description": "SCE (Scene Capability Engine) - A CLI tool and npm package for spec-driven development with AI coding assistants.",
5
5
  "main": "index.js",
6
6
  "bin": {