@openspecui/core 4.0.2 → 5.0.0

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 (86) hide show
  1. package/dist/{document-translation-BAhXJaIl.d.mts → document-translation-7R8cf8_B.d.mts} +2 -2
  2. package/dist/{document-translation-C3SE2CBJ.mjs → document-translation-D4YK18I3.mjs} +1 -1
  3. package/dist/document-translation.d.mts +1 -1
  4. package/dist/document-translation.mjs +2 -2
  5. package/dist/hosted-app.d.mts +1 -1
  6. package/dist/hosted-app.mjs +1 -1
  7. package/dist/index.d.mts +53 -38
  8. package/dist/index.mjs +46 -20
  9. package/dist/{local-download-profiles-C6VVRttC.d.mts → local-download-profiles-caa4PECd.d.mts} +1 -1
  10. package/dist/local-download-profiles.d.mts +2 -2
  11. package/dist/local-download-profiles.mjs +1 -1
  12. package/dist/markdown-facts.d.mts +1 -1
  13. package/dist/markdown-facts.mjs +1 -1
  14. package/dist/{markdown-reading-BnoDddEA.d.mts → markdown-reading-CgXuXp6s.d.mts} +1 -1
  15. package/dist/{markdown-reading-4d3w3xgw.mjs → markdown-reading-DdcB7run.mjs} +1 -1
  16. package/dist/markdown-reading.d.mts +2 -2
  17. package/dist/markdown-reading.mjs +2 -2
  18. package/dist/{notifications-3ZJ6BBzT.mjs → notifications-AKAcmeKT.mjs} +2 -2
  19. package/dist/{notifications-DcBVI03P.d.mts → notifications-DZeOl4HV.d.mts} +16 -16
  20. package/dist/notifications.d.mts +2 -2
  21. package/dist/notifications.mjs +3 -3
  22. package/dist/{openspec-annotations-DDKeedpf.d.mts → openspec-annotations-CeXd0JIZ.d.mts} +2 -2
  23. package/dist/{openspec-annotations-DZDb0Qox.mjs → openspec-annotations-D_6Pz7k4.mjs} +2 -2
  24. package/dist/openspec-annotations.d.mts +3 -3
  25. package/dist/openspec-annotations.mjs +3 -3
  26. package/dist/openspec-compat.d.mts +12 -11
  27. package/dist/openspec-compat.mjs +28 -12
  28. package/dist/{openspec-projection-i2pkZ4hQ.d.mts → openspec-projection-B0ch1rZw.d.mts} +3 -3
  29. package/dist/{openspec-projection-DJ_mSfmq.mjs → openspec-projection-B8s-KWQ7.mjs} +2 -2
  30. package/dist/openspec-projection.d.mts +5 -5
  31. package/dist/openspec-projection.mjs +4 -4
  32. package/dist/opsx-display-path.d.mts +1 -1
  33. package/dist/opsx-display-path.mjs +1 -1
  34. package/dist/{opsx-entity-DNzyALN-.d.mts → opsx-entity-DZyl-uhQ.d.mts} +2 -2
  35. package/dist/opsx-entity.d.mts +3 -3
  36. package/dist/opsx-entity.mjs +1 -1
  37. package/dist/{opsx-schema-detail-BZpl9jiW.d.mts → opsx-schema-detail-CS0tWa9v.d.mts} +2 -2
  38. package/dist/opsx-schema-detail.d.mts +4 -4
  39. package/dist/opsx-schema-detail.mjs +1 -1
  40. package/dist/{opsx-types-Ccrsvb3l.d.mts → opsx-types-Dnb06uff.d.mts} +8 -8
  41. package/dist/{schemas-C01jZKK1.d.mts → schemas-D01aQnV4.d.mts} +46 -46
  42. package/dist/{sounds-BhmJDMmO.d.mts → sounds-kgDn4x8v.d.mts} +4 -4
  43. package/dist/sounds.d.mts +1 -1
  44. package/dist/sounds.mjs +1 -1
  45. package/dist/store-types-BiE-Ey--.d.mts +1092 -0
  46. package/dist/store-types-Cu41QSww.mjs +109 -0
  47. package/dist/store-types.d.mts +2 -0
  48. package/dist/store-types.mjs +3 -0
  49. package/dist/{task-progress-C2YCGSyC.d.mts → task-progress-C1TGMbIR.d.mts} +2 -2
  50. package/dist/{task-progress-RLYFNkpL.mjs → task-progress-DhHYHnTv.mjs} +1 -1
  51. package/dist/task-progress.d.mts +3 -3
  52. package/dist/task-progress.mjs +2 -2
  53. package/dist/{terminal-audio-BDbVowLy.d.mts → terminal-audio-CsuGTNV-.d.mts} +1 -1
  54. package/dist/{terminal-audio-DhslppvD.mjs → terminal-audio-TBoU2jSK.mjs} +1 -1
  55. package/dist/terminal-audio.d.mts +2 -2
  56. package/dist/terminal-audio.mjs +2 -2
  57. package/dist/terminal-control.d.mts +2 -2
  58. package/dist/terminal-control.mjs +1 -1
  59. package/dist/{terminal-invocation-Be3YlFOI.d.mts → terminal-invocation-BlFwKpIc.d.mts} +75 -75
  60. package/dist/terminal-invocation.d.mts +1 -1
  61. package/dist/terminal-invocation.mjs +1 -1
  62. package/dist/terminal-theme.d.mts +1 -1
  63. package/dist/terminal-theme.mjs +1 -1
  64. package/dist/translation-language-pair.d.mts +1 -1
  65. package/dist/translation-language-pair.mjs +1 -1
  66. package/dist/{translator-CZeKoeLW.d.mts → translator-BErXgQxx.d.mts} +132 -132
  67. package/dist/translator.d.mts +1 -1
  68. package/dist/translator.mjs +1 -1
  69. package/package.json +9 -3
  70. /package/dist/{hosted-app-DfEh4rR3.mjs → hosted-app-CzMRiEgY.mjs} +0 -0
  71. /package/dist/{hosted-app-BZvbSDOk.d.mts → hosted-app-DHs94gIR.d.mts} +0 -0
  72. /package/dist/{local-download-profiles-C8ZHpk2F.mjs → local-download-profiles-kpNEcdF_.mjs} +0 -0
  73. /package/dist/{markdown-facts-ByM-tdm5.mjs → markdown-facts-BBCTe_qq.mjs} +0 -0
  74. /package/dist/{markdown-facts-DQe77Xbc.d.mts → markdown-facts-Dk7FKaaT.d.mts} +0 -0
  75. /package/dist/{opsx-display-path-DGjayJTF.mjs → opsx-display-path-CUCOrHcM.mjs} +0 -0
  76. /package/dist/{opsx-display-path-dEtDIqJD.d.mts → opsx-display-path-cIMKa1aw.d.mts} +0 -0
  77. /package/dist/{opsx-entity-DrY7pgMe.mjs → opsx-entity-c7m5CbgU.mjs} +0 -0
  78. /package/dist/{opsx-schema-detail-B-4bLoZS.mjs → opsx-schema-detail-BH82X6aU.mjs} +0 -0
  79. /package/dist/{sounds-CuSsy7X-.mjs → sounds-CB3ubSnj.mjs} +0 -0
  80. /package/dist/{terminal-control-D5dCna6A.mjs → terminal-control-VpTuh17B.mjs} +0 -0
  81. /package/dist/{terminal-invocation-BSrS_0zu.mjs → terminal-invocation-C2MCNBhK.mjs} +0 -0
  82. /package/dist/{terminal-theme-TogWGicr.mjs → terminal-theme-cevliJw2.mjs} +0 -0
  83. /package/dist/{terminal-theme-DO6B6-o0.d.mts → terminal-theme-hvQjTsNh.d.mts} +0 -0
  84. /package/dist/{translation-language-pair-D2B_LoN1.mjs → translation-language-pair-DZ_WNp_M.mjs} +0 -0
  85. /package/dist/{translation-language-pair-C1tou_ks.d.mts → translation-language-pair-DmaOfHqD.d.mts} +0 -0
  86. /package/dist/{translator-bwybQ07U.mjs → translator-DbUT1Ayn.mjs} +0 -0
@@ -1,4 +1,4 @@
1
- import { x as SoundId } from "./sounds-BhmJDMmO.mjs";
1
+ import { x as SoundId } from "./sounds-kgDn4x8v.mjs";
2
2
  import { z } from "zod";
3
3
 
4
4
  //#region src/terminal-control.d.ts
@@ -272,6 +272,8 @@ declare const NotificationPublishInputSchema: z.ZodObject<{
272
272
  level: z.ZodDefault<z.ZodEnum<["info", "success", "warning", "error"]>>;
273
273
  createdAt: z.ZodOptional<z.ZodNumber>;
274
274
  }, "strip", z.ZodTypeAny, {
275
+ title: string;
276
+ body: string;
275
277
  source: {
276
278
  type: "terminal";
277
279
  sessionId: string;
@@ -289,8 +291,6 @@ declare const NotificationPublishInputSchema: z.ZodObject<{
289
291
  groupId: string;
290
292
  title?: string | undefined;
291
293
  };
292
- title: string;
293
- body: string;
294
294
  actions: ({
295
295
  type: "terminal.focus";
296
296
  label: string;
@@ -304,9 +304,10 @@ declare const NotificationPublishInputSchema: z.ZodObject<{
304
304
  href: string;
305
305
  };
306
306
  })[];
307
- level: "error" | "info" | "success" | "warning";
307
+ level: "info" | "success" | "warning" | "error";
308
308
  createdAt?: number | undefined;
309
309
  }, {
310
+ title: string;
310
311
  source: {
311
312
  type: "terminal";
312
313
  sessionId: string;
@@ -324,8 +325,6 @@ declare const NotificationPublishInputSchema: z.ZodObject<{
324
325
  groupId: string;
325
326
  title?: string | undefined;
326
327
  };
327
- title: string;
328
- createdAt?: number | undefined;
329
328
  body?: string | undefined;
330
329
  actions?: ({
331
330
  type: "terminal.focus";
@@ -340,7 +339,8 @@ declare const NotificationPublishInputSchema: z.ZodObject<{
340
339
  };
341
340
  label?: string | undefined;
342
341
  })[] | undefined;
343
- level?: "error" | "info" | "success" | "warning" | undefined;
342
+ level?: "info" | "success" | "warning" | "error" | undefined;
343
+ createdAt?: number | undefined;
344
344
  }>;
345
345
  type NotificationPublishInput = z.infer<typeof NotificationPublishInputSchema>;
346
346
  declare const NotificationRecordSchema: z.ZodObject<{
@@ -446,8 +446,8 @@ declare const NotificationRecordSchema: z.ZodObject<{
446
446
  createdAt: z.ZodNumber;
447
447
  groupKey: z.ZodString;
448
448
  }, "strip", z.ZodTypeAny, {
449
- createdAt: number;
450
- id: string;
449
+ title: string;
450
+ body: string;
451
451
  source: {
452
452
  type: "terminal";
453
453
  sessionId: string;
@@ -465,8 +465,6 @@ declare const NotificationRecordSchema: z.ZodObject<{
465
465
  groupId: string;
466
466
  title?: string | undefined;
467
467
  };
468
- title: string;
469
- body: string;
470
468
  actions: ({
471
469
  type: "terminal.focus";
472
470
  label: string;
@@ -480,11 +478,12 @@ declare const NotificationRecordSchema: z.ZodObject<{
480
478
  href: string;
481
479
  };
482
480
  })[];
483
- level: "error" | "info" | "success" | "warning";
484
- groupKey: string;
485
- }, {
481
+ level: "info" | "success" | "warning" | "error";
486
482
  createdAt: number;
487
483
  id: string;
484
+ groupKey: string;
485
+ }, {
486
+ title: string;
488
487
  source: {
489
488
  type: "terminal";
490
489
  sessionId: string;
@@ -502,7 +501,8 @@ declare const NotificationRecordSchema: z.ZodObject<{
502
501
  groupId: string;
503
502
  title?: string | undefined;
504
503
  };
505
- title: string;
504
+ createdAt: number;
505
+ id: string;
506
506
  groupKey: string;
507
507
  body?: string | undefined;
508
508
  actions?: ({
@@ -518,7 +518,7 @@ declare const NotificationRecordSchema: z.ZodObject<{
518
518
  };
519
519
  label?: string | undefined;
520
520
  })[] | undefined;
521
- level?: "error" | "info" | "success" | "warning" | undefined;
521
+ level?: "info" | "success" | "warning" | "error" | undefined;
522
522
  }>;
523
523
  type NotificationRecord = z.infer<typeof NotificationRecordSchema>;
524
524
  interface NotificationAggregate {
@@ -1,3 +1,3 @@
1
- import "./sounds-BhmJDMmO.mjs";
2
- import { C as getNotificationAggregateKey, E as groupNotifications, P as terminalNotificationEventToPublishInput, S as aggregateNotifications, T as getNotificationGroupLabel, _ as NotificationSource, a as NotificationAggregate, b as TerminalNotificationParseResult, c as NotificationGroupKeySchema, d as NotificationRecord, f as NotificationRecordSchema, g as NotificationSoundSchema, h as NotificationSound, i as NotificationActionSchema, k as TerminalControlParser, l as NotificationPublishInput, m as NotificationSettingsSchema, n as NOTIFICATION_SOUND_VALUES, o as NotificationGroup, p as NotificationSettings, r as NotificationAction, s as NotificationGroupKey, t as NOTIFICATION_SOUND_OPTIONS, u as NotificationPublishInputSchema, v as NotificationSourceSchema, w as getNotificationGroupKey, x as TerminalNotificationParser, y as TerminalNotificationEvent } from "./notifications-DcBVI03P.mjs";
1
+ import "./sounds-kgDn4x8v.mjs";
2
+ import { C as getNotificationAggregateKey, E as groupNotifications, P as terminalNotificationEventToPublishInput, S as aggregateNotifications, T as getNotificationGroupLabel, _ as NotificationSource, a as NotificationAggregate, b as TerminalNotificationParseResult, c as NotificationGroupKeySchema, d as NotificationRecord, f as NotificationRecordSchema, g as NotificationSoundSchema, h as NotificationSound, i as NotificationActionSchema, k as TerminalControlParser, l as NotificationPublishInput, m as NotificationSettingsSchema, n as NOTIFICATION_SOUND_VALUES, o as NotificationGroup, p as NotificationSettings, r as NotificationAction, s as NotificationGroupKey, t as NOTIFICATION_SOUND_OPTIONS, u as NotificationPublishInputSchema, v as NotificationSourceSchema, w as getNotificationGroupKey, x as TerminalNotificationParser, y as TerminalNotificationEvent } from "./notifications-DZeOl4HV.mjs";
3
3
  export { NOTIFICATION_SOUND_OPTIONS, NOTIFICATION_SOUND_VALUES, NotificationAction, NotificationActionSchema, NotificationAggregate, NotificationGroup, NotificationGroupKey, NotificationGroupKeySchema, NotificationPublishInput, NotificationPublishInputSchema, NotificationRecord, NotificationRecordSchema, NotificationSettings, NotificationSettingsSchema, NotificationSound, NotificationSoundSchema, NotificationSource, NotificationSourceSchema, TerminalControlParser, TerminalNotificationEvent, TerminalNotificationParseResult, TerminalNotificationParser, aggregateNotifications, getNotificationAggregateKey, getNotificationGroupKey, getNotificationGroupLabel, groupNotifications, terminalNotificationEventToPublishInput };
@@ -1,5 +1,5 @@
1
- import "./sounds-CuSsy7X-.mjs";
2
- import { n as terminalNotificationEventToPublishInput, t as TerminalControlParser } from "./terminal-control-D5dCna6A.mjs";
3
- import { a as NotificationPublishInputSchema, c as NotificationSoundSchema, d as aggregateNotifications, f as getNotificationAggregateKey, h as groupNotifications, i as NotificationGroupKeySchema, l as NotificationSourceSchema, m as getNotificationGroupLabel, n as NOTIFICATION_SOUND_VALUES, o as NotificationRecordSchema, p as getNotificationGroupKey, r as NotificationActionSchema, s as NotificationSettingsSchema, t as NOTIFICATION_SOUND_OPTIONS, u as TerminalNotificationParser } from "./notifications-3ZJ6BBzT.mjs";
1
+ import "./sounds-CB3ubSnj.mjs";
2
+ import { n as terminalNotificationEventToPublishInput, t as TerminalControlParser } from "./terminal-control-VpTuh17B.mjs";
3
+ import { a as NotificationPublishInputSchema, c as NotificationSoundSchema, d as aggregateNotifications, f as getNotificationAggregateKey, h as groupNotifications, i as NotificationGroupKeySchema, l as NotificationSourceSchema, m as getNotificationGroupLabel, n as NOTIFICATION_SOUND_VALUES, o as NotificationRecordSchema, p as getNotificationGroupKey, r as NotificationActionSchema, s as NotificationSettingsSchema, t as NOTIFICATION_SOUND_OPTIONS, u as TerminalNotificationParser } from "./notifications-AKAcmeKT.mjs";
4
4
 
5
5
  export { NOTIFICATION_SOUND_OPTIONS, NOTIFICATION_SOUND_VALUES, NotificationActionSchema, NotificationGroupKeySchema, NotificationPublishInputSchema, NotificationRecordSchema, NotificationSettingsSchema, NotificationSoundSchema, NotificationSourceSchema, TerminalControlParser, TerminalNotificationParser, aggregateNotifications, getNotificationAggregateKey, getNotificationGroupKey, getNotificationGroupLabel, groupNotifications, terminalNotificationEventToPublishInput };
@@ -1,5 +1,5 @@
1
- import { r as MarkdownFactsDocument } from "./markdown-facts-DQe77Xbc.mjs";
2
- import { a as MarkdownAnnotationRule, d as MarkdownReadingPlugin, l as MarkdownReadingDocument, n as MarkdownAnnotationConfidence, t as MarkdownAnnotation } from "./markdown-reading-BnoDddEA.mjs";
1
+ import { r as MarkdownFactsDocument } from "./markdown-facts-Dk7FKaaT.mjs";
2
+ import { a as MarkdownAnnotationRule, d as MarkdownReadingPlugin, l as MarkdownReadingDocument, n as MarkdownAnnotationConfidence, t as MarkdownAnnotation } from "./markdown-reading-CgXuXp6s.mjs";
3
3
 
4
4
  //#region src/openspec-annotations.d.ts
5
5
  type OpenSpecSemanticKind = 'document-title' | 'purpose-section' | 'requirements-section' | 'requirement' | 'scenario' | 'scenario-step' | 'keyword';
@@ -1,5 +1,5 @@
1
- import { t as parseMarkdownFacts } from "./markdown-facts-ByM-tdm5.mjs";
2
- import { c as getMarkdownHeadingEnd, i as createMarkdownReadingDocumentFromFacts, l as getMarkdownHeadingFacts, s as getMarkdownFactSpan } from "./markdown-reading-4d3w3xgw.mjs";
1
+ import { t as parseMarkdownFacts } from "./markdown-facts-BBCTe_qq.mjs";
2
+ import { c as getMarkdownHeadingEnd, i as createMarkdownReadingDocumentFromFacts, l as getMarkdownHeadingFacts, s as getMarkdownFactSpan } from "./markdown-reading-DdcB7run.mjs";
3
3
 
4
4
  //#region src/openspec-annotations.ts
5
5
  const OPEN_SPEC_ANNOTATION_RULES = {
@@ -1,4 +1,4 @@
1
- import "./markdown-facts-DQe77Xbc.mjs";
2
- import "./markdown-reading-BnoDddEA.mjs";
3
- import { a as OpenSpecKeyword, c as OpenSpecScenarioStepKeyword, d as annotateOpenSpecMarkdown, f as builtinOpenSpecReadingPlugin, h as openSpecAnnotationRules, i as OpenSpecAnnotationMetadata, l as OpenSpecSemanticKind, m as getOpenSpecAnnotationsForFact, n as OpenSpecAnnotation, o as OpenSpecKeywordRole, p as getOpenSpecAnnotation, r as OpenSpecAnnotationConfidence, s as OpenSpecRequirementKeyword, t as AnnotatedOpenSpecDocument, u as annotateOpenSpecFacts } from "./openspec-annotations-DDKeedpf.mjs";
1
+ import "./markdown-facts-Dk7FKaaT.mjs";
2
+ import "./markdown-reading-CgXuXp6s.mjs";
3
+ import { a as OpenSpecKeyword, c as OpenSpecScenarioStepKeyword, d as annotateOpenSpecMarkdown, f as builtinOpenSpecReadingPlugin, h as openSpecAnnotationRules, i as OpenSpecAnnotationMetadata, l as OpenSpecSemanticKind, m as getOpenSpecAnnotationsForFact, n as OpenSpecAnnotation, o as OpenSpecKeywordRole, p as getOpenSpecAnnotation, r as OpenSpecAnnotationConfidence, s as OpenSpecRequirementKeyword, t as AnnotatedOpenSpecDocument, u as annotateOpenSpecFacts } from "./openspec-annotations-CeXd0JIZ.mjs";
4
4
  export { AnnotatedOpenSpecDocument, OpenSpecAnnotation, OpenSpecAnnotationConfidence, OpenSpecAnnotationMetadata, OpenSpecKeyword, OpenSpecKeywordRole, OpenSpecRequirementKeyword, OpenSpecScenarioStepKeyword, OpenSpecSemanticKind, annotateOpenSpecFacts, annotateOpenSpecMarkdown, builtinOpenSpecReadingPlugin, getOpenSpecAnnotation, getOpenSpecAnnotationsForFact, openSpecAnnotationRules };
@@ -1,5 +1,5 @@
1
- import "./markdown-facts-ByM-tdm5.mjs";
2
- import "./markdown-reading-4d3w3xgw.mjs";
3
- import { a as getOpenSpecAnnotationsForFact, i as getOpenSpecAnnotation, n as annotateOpenSpecMarkdown, o as openSpecAnnotationRules, r as builtinOpenSpecReadingPlugin, t as annotateOpenSpecFacts } from "./openspec-annotations-DZDb0Qox.mjs";
1
+ import "./markdown-facts-BBCTe_qq.mjs";
2
+ import "./markdown-reading-DdcB7run.mjs";
3
+ import { a as getOpenSpecAnnotationsForFact, i as getOpenSpecAnnotation, n as annotateOpenSpecMarkdown, o as openSpecAnnotationRules, r as builtinOpenSpecReadingPlugin, t as annotateOpenSpecFacts } from "./openspec-annotations-D_6Pz7k4.mjs";
4
4
 
5
5
  export { annotateOpenSpecFacts, annotateOpenSpecMarkdown, builtinOpenSpecReadingPlugin, getOpenSpecAnnotation, getOpenSpecAnnotationsForFact, openSpecAnnotationRules };
@@ -1,14 +1,15 @@
1
1
  //#region src/openspec-compat.d.ts
2
- declare const OPENSPECUI_TARGET_MAJOR = 4;
3
- declare const OPENSPEC_CLI_TARGET_SERIES = "1.4";
4
- declare const OPENSPEC_CLI_LEGACY_SERIES = "1.3";
5
- declare const OPENSPEC_CLI_MIN_VERSION = "1.3.0";
6
- declare const OPENSPEC_CLI_TARGET_MIN_VERSION = "1.4.0";
7
- declare const OPENSPEC_CLI_NEXT_SERIES_MIN_VERSION = "1.5.0";
8
- declare const OPENSPEC_CLI_ACCEPTED_RANGE = ">=1.3.0 <1.5.0";
9
- declare const OPENSPEC_CLI_RECOMMENDED_RANGE = ">=1.4.0 <1.5.0";
10
- declare const OPENSPEC_CLI_LEGACY_RANGE = ">=1.3.0 <1.4.0";
11
- declare const OPENSPEC_CLI_REFERENCE_TAG_PATTERN = "v1.4.*";
2
+ declare const OPENSPECUI_TARGET_MAJOR = 5;
3
+ declare const OPENSPEC_CLI_TARGET_SERIES = "1.5";
4
+ declare const OPENSPEC_CLI_LEGACY_SERIES = "1.4";
5
+ declare const OPENSPEC_CLI_MIN_VERSION = "1.4.0";
6
+ declare const OPENSPEC_CLI_TARGET_MIN_VERSION = "1.5.0";
7
+ declare const OPENSPEC_CLI_RECOMMENDED_MIN_VERSION = "1.5.0";
8
+ declare const OPENSPEC_CLI_NEXT_SERIES_MIN_VERSION = "1.6.0";
9
+ declare const OPENSPEC_CLI_ACCEPTED_RANGE = ">=1.4.0 <1.6.0";
10
+ declare const OPENSPEC_CLI_RECOMMENDED_RANGE = ">=1.5.0 <1.6.0";
11
+ declare const OPENSPEC_CLI_LEGACY_RANGE = ">=1.4.0 <1.5.0";
12
+ declare const OPENSPEC_CLI_REFERENCE_TAG_PATTERN = "v1.5.*";
12
13
  interface OpenSpecCliVersion {
13
14
  major: number;
14
15
  minor: number;
@@ -29,4 +30,4 @@ declare function formatOpenSpecCliVersion(version: OpenSpecCliVersion): string;
29
30
  declare function compareOpenSpecCliVersions(left: OpenSpecCliVersion, right: OpenSpecCliVersion): number;
30
31
  declare function classifyOpenSpecCliVersion(rawVersion: string | undefined): OpenSpecCliCompatibility;
31
32
  //#endregion
32
- export { OPENSPECUI_TARGET_MAJOR, OPENSPEC_CLI_ACCEPTED_RANGE, OPENSPEC_CLI_LEGACY_RANGE, OPENSPEC_CLI_LEGACY_SERIES, OPENSPEC_CLI_MIN_VERSION, OPENSPEC_CLI_NEXT_SERIES_MIN_VERSION, OPENSPEC_CLI_RECOMMENDED_RANGE, OPENSPEC_CLI_REFERENCE_TAG_PATTERN, OPENSPEC_CLI_TARGET_MIN_VERSION, OPENSPEC_CLI_TARGET_SERIES, OpenSpecCliCompatibility, OpenSpecCliCompatibilityStatus, OpenSpecCliVersion, classifyOpenSpecCliVersion, compareOpenSpecCliVersions, formatOpenSpecCliVersion, parseOpenSpecCliVersion };
33
+ export { OPENSPECUI_TARGET_MAJOR, OPENSPEC_CLI_ACCEPTED_RANGE, OPENSPEC_CLI_LEGACY_RANGE, OPENSPEC_CLI_LEGACY_SERIES, OPENSPEC_CLI_MIN_VERSION, OPENSPEC_CLI_NEXT_SERIES_MIN_VERSION, OPENSPEC_CLI_RECOMMENDED_MIN_VERSION, OPENSPEC_CLI_RECOMMENDED_RANGE, OPENSPEC_CLI_REFERENCE_TAG_PATTERN, OPENSPEC_CLI_TARGET_MIN_VERSION, OPENSPEC_CLI_TARGET_SERIES, OpenSpecCliCompatibility, OpenSpecCliCompatibilityStatus, OpenSpecCliVersion, classifyOpenSpecCliVersion, compareOpenSpecCliVersions, formatOpenSpecCliVersion, parseOpenSpecCliVersion };
@@ -1,14 +1,15 @@
1
1
  //#region src/openspec-compat.ts
2
- const OPENSPECUI_TARGET_MAJOR = 4;
3
- const OPENSPEC_CLI_TARGET_SERIES = "1.4";
4
- const OPENSPEC_CLI_LEGACY_SERIES = "1.3";
5
- const OPENSPEC_CLI_MIN_VERSION = "1.3.0";
6
- const OPENSPEC_CLI_TARGET_MIN_VERSION = "1.4.0";
7
- const OPENSPEC_CLI_NEXT_SERIES_MIN_VERSION = "1.5.0";
8
- const OPENSPEC_CLI_ACCEPTED_RANGE = ">=1.3.0 <1.5.0";
9
- const OPENSPEC_CLI_RECOMMENDED_RANGE = ">=1.4.0 <1.5.0";
10
- const OPENSPEC_CLI_LEGACY_RANGE = ">=1.3.0 <1.4.0";
11
- const OPENSPEC_CLI_REFERENCE_TAG_PATTERN = "v1.4.*";
2
+ const OPENSPECUI_TARGET_MAJOR = 5;
3
+ const OPENSPEC_CLI_TARGET_SERIES = "1.5";
4
+ const OPENSPEC_CLI_LEGACY_SERIES = "1.4";
5
+ const OPENSPEC_CLI_MIN_VERSION = "1.4.0";
6
+ const OPENSPEC_CLI_TARGET_MIN_VERSION = "1.5.0";
7
+ const OPENSPEC_CLI_RECOMMENDED_MIN_VERSION = "1.5.0";
8
+ const OPENSPEC_CLI_NEXT_SERIES_MIN_VERSION = "1.6.0";
9
+ const OPENSPEC_CLI_ACCEPTED_RANGE = ">=1.4.0 <1.6.0";
10
+ const OPENSPEC_CLI_RECOMMENDED_RANGE = ">=1.5.0 <1.6.0";
11
+ const OPENSPEC_CLI_LEGACY_RANGE = ">=1.4.0 <1.5.0";
12
+ const OPENSPEC_CLI_REFERENCE_TAG_PATTERN = "v1.5.*";
12
13
  function parseOpenSpecCliVersion(raw) {
13
14
  if (!raw) return null;
14
15
  const match = raw.match(/(\d+)\.(\d+)\.(\d+)/);
@@ -31,6 +32,21 @@ function isSeries(version, series) {
31
32
  const [major, minor] = series.split(".").map((part) => Number(part));
32
33
  return version.major === major && version.minor === minor;
33
34
  }
35
+ /**
36
+ * A version is "current/recommended" when it falls inside the recommended
37
+ * range (e.g. `>=1.5.0 <1.6.0`). OpenSpecUI follows a 1:1 major-to-minor
38
+ * version law: one OpenSpecUI major line targets exactly one OpenSpec CLI
39
+ * minor line (2.x→1.2, 3.x→1.3, 4.x→1.4, 5.x→1.5). The previous minor line
40
+ * is accepted as legacy-compatible; older lines are unsupported.
41
+ */
42
+ function isCurrentRecommended(version) {
43
+ const min = parseOpenSpecCliVersion(OPENSPEC_CLI_RECOMMENDED_MIN_VERSION);
44
+ const max = parseOpenSpecCliVersion(OPENSPEC_CLI_NEXT_SERIES_MIN_VERSION);
45
+ if (!min || !max) return isSeries(version, OPENSPEC_CLI_TARGET_SERIES);
46
+ const atOrAboveMin = compareOpenSpecCliVersions(version, min) >= 0;
47
+ const belowMax = compareOpenSpecCliVersions(version, max) < 0;
48
+ return atOrAboveMin && belowMax;
49
+ }
34
50
  function classifyOpenSpecCliVersion(rawVersion) {
35
51
  const version = parseOpenSpecCliVersion(rawVersion);
36
52
  if (!version) return {
@@ -42,7 +58,7 @@ function classifyOpenSpecCliVersion(rawVersion) {
42
58
  blocksCoreInteractions: true,
43
59
  message: "Unable to parse OpenSpec CLI version."
44
60
  };
45
- if (isSeries(version, OPENSPEC_CLI_TARGET_SERIES)) return {
61
+ if (isCurrentRecommended(version)) return {
46
62
  rawVersion,
47
63
  version,
48
64
  status: "current",
@@ -72,4 +88,4 @@ function classifyOpenSpecCliVersion(rawVersion) {
72
88
  }
73
89
 
74
90
  //#endregion
75
- export { OPENSPECUI_TARGET_MAJOR, OPENSPEC_CLI_ACCEPTED_RANGE, OPENSPEC_CLI_LEGACY_RANGE, OPENSPEC_CLI_LEGACY_SERIES, OPENSPEC_CLI_MIN_VERSION, OPENSPEC_CLI_NEXT_SERIES_MIN_VERSION, OPENSPEC_CLI_RECOMMENDED_RANGE, OPENSPEC_CLI_REFERENCE_TAG_PATTERN, OPENSPEC_CLI_TARGET_MIN_VERSION, OPENSPEC_CLI_TARGET_SERIES, classifyOpenSpecCliVersion, compareOpenSpecCliVersions, formatOpenSpecCliVersion, parseOpenSpecCliVersion };
91
+ export { OPENSPECUI_TARGET_MAJOR, OPENSPEC_CLI_ACCEPTED_RANGE, OPENSPEC_CLI_LEGACY_RANGE, OPENSPEC_CLI_LEGACY_SERIES, OPENSPEC_CLI_MIN_VERSION, OPENSPEC_CLI_NEXT_SERIES_MIN_VERSION, OPENSPEC_CLI_RECOMMENDED_MIN_VERSION, OPENSPEC_CLI_RECOMMENDED_RANGE, OPENSPEC_CLI_REFERENCE_TAG_PATTERN, OPENSPEC_CLI_TARGET_MIN_VERSION, OPENSPEC_CLI_TARGET_SERIES, classifyOpenSpecCliVersion, compareOpenSpecCliVersions, formatOpenSpecCliVersion, parseOpenSpecCliVersion };
@@ -1,6 +1,6 @@
1
- import { g as Spec } from "./schemas-C01jZKK1.mjs";
2
- import { d as MarkdownReadingPlugin, l as MarkdownReadingDocument } from "./markdown-reading-BnoDddEA.mjs";
3
- import { n as OpenSpecAnnotation, t as AnnotatedOpenSpecDocument } from "./openspec-annotations-DDKeedpf.mjs";
1
+ import { g as Spec } from "./schemas-D01aQnV4.mjs";
2
+ import { d as MarkdownReadingPlugin, l as MarkdownReadingDocument } from "./markdown-reading-CgXuXp6s.mjs";
3
+ import { n as OpenSpecAnnotation, t as AnnotatedOpenSpecDocument } from "./openspec-annotations-CeXd0JIZ.mjs";
4
4
 
5
5
  //#region src/openspec-projection.d.ts
6
6
  declare const OPEN_SPEC_SPEC_PROJECTION_ID = "openspec.projection.spec.v2";
@@ -1,5 +1,5 @@
1
- import { c as getMarkdownHeadingEnd, d as trimMarkdownSlice, l as getMarkdownHeadingFacts, r as createMarkdownReadingDocument, s as getMarkdownFactSpan } from "./markdown-reading-4d3w3xgw.mjs";
2
- import { r as builtinOpenSpecReadingPlugin } from "./openspec-annotations-DZDb0Qox.mjs";
1
+ import { c as getMarkdownHeadingEnd, d as trimMarkdownSlice, l as getMarkdownHeadingFacts, r as createMarkdownReadingDocument, s as getMarkdownFactSpan } from "./markdown-reading-DdcB7run.mjs";
2
+ import { r as builtinOpenSpecReadingPlugin } from "./openspec-annotations-D_6Pz7k4.mjs";
3
3
 
4
4
  //#region src/openspec-projection.ts
5
5
  const OPEN_SPEC_SPEC_PROJECTION_ID = "openspec.projection.spec.v2";
@@ -1,6 +1,6 @@
1
- import "./schemas-C01jZKK1.mjs";
2
- import "./markdown-facts-DQe77Xbc.mjs";
3
- import "./markdown-reading-BnoDddEA.mjs";
4
- import "./openspec-annotations-DDKeedpf.mjs";
5
- import { a as OpenSpecReadingSectionsProjection, c as ProjectedOpenSpecDocument, d as getOpenSpecReadingSections, f as parseOpenSpecMarkdownToSpec, i as OpenSpecProjectionOptions, l as createOpenSpecReadingPlugin, m as projectOpenSpecMarkdown, n as OPEN_SPEC_SPEC_PROJECTION_ID, o as OpenSpecRequirementBlock, p as projectAnnotatedOpenSpecToSpec, r as OpenSpecHeadingSection, s as OpenSpecScenarioBlock, t as OPEN_SPEC_READING_SECTIONS_PROJECTION_ID, u as getOpenSpecProjectionAnnotation } from "./openspec-projection-i2pkZ4hQ.mjs";
1
+ import "./schemas-D01aQnV4.mjs";
2
+ import "./markdown-facts-Dk7FKaaT.mjs";
3
+ import "./markdown-reading-CgXuXp6s.mjs";
4
+ import "./openspec-annotations-CeXd0JIZ.mjs";
5
+ import { a as OpenSpecReadingSectionsProjection, c as ProjectedOpenSpecDocument, d as getOpenSpecReadingSections, f as parseOpenSpecMarkdownToSpec, i as OpenSpecProjectionOptions, l as createOpenSpecReadingPlugin, m as projectOpenSpecMarkdown, n as OPEN_SPEC_SPEC_PROJECTION_ID, o as OpenSpecRequirementBlock, p as projectAnnotatedOpenSpecToSpec, r as OpenSpecHeadingSection, s as OpenSpecScenarioBlock, t as OPEN_SPEC_READING_SECTIONS_PROJECTION_ID, u as getOpenSpecProjectionAnnotation } from "./openspec-projection-B0ch1rZw.mjs";
6
6
  export { OPEN_SPEC_READING_SECTIONS_PROJECTION_ID, OPEN_SPEC_SPEC_PROJECTION_ID, OpenSpecHeadingSection, OpenSpecProjectionOptions, OpenSpecReadingSectionsProjection, OpenSpecRequirementBlock, OpenSpecScenarioBlock, ProjectedOpenSpecDocument, createOpenSpecReadingPlugin, getOpenSpecProjectionAnnotation, getOpenSpecReadingSections, parseOpenSpecMarkdownToSpec, projectAnnotatedOpenSpecToSpec, projectOpenSpecMarkdown };
@@ -1,6 +1,6 @@
1
- import "./markdown-facts-ByM-tdm5.mjs";
2
- import "./markdown-reading-4d3w3xgw.mjs";
3
- import "./openspec-annotations-DZDb0Qox.mjs";
4
- import { a as getOpenSpecReadingSections, c as projectOpenSpecMarkdown, i as getOpenSpecProjectionAnnotation, n as OPEN_SPEC_SPEC_PROJECTION_ID, o as parseOpenSpecMarkdownToSpec, r as createOpenSpecReadingPlugin, s as projectAnnotatedOpenSpecToSpec, t as OPEN_SPEC_READING_SECTIONS_PROJECTION_ID } from "./openspec-projection-DJ_mSfmq.mjs";
1
+ import "./markdown-facts-BBCTe_qq.mjs";
2
+ import "./markdown-reading-DdcB7run.mjs";
3
+ import "./openspec-annotations-D_6Pz7k4.mjs";
4
+ import { a as getOpenSpecReadingSections, c as projectOpenSpecMarkdown, i as getOpenSpecProjectionAnnotation, n as OPEN_SPEC_SPEC_PROJECTION_ID, o as parseOpenSpecMarkdownToSpec, r as createOpenSpecReadingPlugin, s as projectAnnotatedOpenSpecToSpec, t as OPEN_SPEC_READING_SECTIONS_PROJECTION_ID } from "./openspec-projection-B8s-KWQ7.mjs";
5
5
 
6
6
  export { OPEN_SPEC_READING_SECTIONS_PROJECTION_ID, OPEN_SPEC_SPEC_PROJECTION_ID, createOpenSpecReadingPlugin, getOpenSpecProjectionAnnotation, getOpenSpecReadingSections, parseOpenSpecMarkdownToSpec, projectAnnotatedOpenSpecToSpec, projectOpenSpecMarkdown };
@@ -1,2 +1,2 @@
1
- import { n as toOpsxDisplayPath, t as VIRTUAL_PROJECT_DIRNAME } from "./opsx-display-path-dEtDIqJD.mjs";
1
+ import { n as toOpsxDisplayPath, t as VIRTUAL_PROJECT_DIRNAME } from "./opsx-display-path-cIMKa1aw.mjs";
2
2
  export { VIRTUAL_PROJECT_DIRNAME, toOpsxDisplayPath };
@@ -1,3 +1,3 @@
1
- import { n as toOpsxDisplayPath, t as VIRTUAL_PROJECT_DIRNAME } from "./opsx-display-path-DGjayJTF.mjs";
1
+ import { n as toOpsxDisplayPath, t as VIRTUAL_PROJECT_DIRNAME } from "./opsx-display-path-CUCOrHcM.mjs";
2
2
 
3
3
  export { VIRTUAL_PROJECT_DIRNAME, toOpsxDisplayPath };
@@ -1,5 +1,5 @@
1
- import { g as SchemaDetail } from "./opsx-types-Ccrsvb3l.mjs";
2
- import { n as ChangeFile } from "./schemas-C01jZKK1.mjs";
1
+ import { g as SchemaDetail } from "./opsx-types-Dnb06uff.mjs";
2
+ import { n as ChangeFile } from "./schemas-D01aQnV4.mjs";
3
3
 
4
4
  //#region src/opsx-entity.d.ts
5
5
  type OpsxEntityStage = 'change' | 'archive';
@@ -1,4 +1,4 @@
1
- import "./opsx-types-Ccrsvb3l.mjs";
2
- import "./schemas-C01jZKK1.mjs";
3
- import { a as OpsxEntityFile, c as buildOpsxEntityDetail, d as isOpsxGlobPattern, f as normalizeOpsxEntityPath, h as parseOpsxEntityMetadata, i as OpsxEntityDiagnostic, l as getOpsxEntityMetadataPath, m as opsxPathMatchesPattern, n as OpsxEntityArtifactFile, o as OpsxEntityReadOptions, p as opsxGlobToRegex, r as OpsxEntityDetail, s as OpsxEntityStage, t as OpsxEntityArtifact, u as getOpsxEntityRootRelativePath } from "./opsx-entity-DNzyALN-.mjs";
1
+ import "./opsx-types-Dnb06uff.mjs";
2
+ import "./schemas-D01aQnV4.mjs";
3
+ import { a as OpsxEntityFile, c as buildOpsxEntityDetail, d as isOpsxGlobPattern, f as normalizeOpsxEntityPath, h as parseOpsxEntityMetadata, i as OpsxEntityDiagnostic, l as getOpsxEntityMetadataPath, m as opsxPathMatchesPattern, n as OpsxEntityArtifactFile, o as OpsxEntityReadOptions, p as opsxGlobToRegex, r as OpsxEntityDetail, s as OpsxEntityStage, t as OpsxEntityArtifact, u as getOpsxEntityRootRelativePath } from "./opsx-entity-DZyl-uhQ.mjs";
4
4
  export { OpsxEntityArtifact, OpsxEntityArtifactFile, OpsxEntityDetail, OpsxEntityDiagnostic, OpsxEntityFile, OpsxEntityReadOptions, OpsxEntityStage, buildOpsxEntityDetail, getOpsxEntityMetadataPath, getOpsxEntityRootRelativePath, isOpsxGlobPattern, normalizeOpsxEntityPath, opsxGlobToRegex, opsxPathMatchesPattern, parseOpsxEntityMetadata };
@@ -1,3 +1,3 @@
1
- import { a as normalizeOpsxEntityPath, c as parseOpsxEntityMetadata, i as isOpsxGlobPattern, n as getOpsxEntityMetadataPath, o as opsxGlobToRegex, r as getOpsxEntityRootRelativePath, s as opsxPathMatchesPattern, t as buildOpsxEntityDetail } from "./opsx-entity-DrY7pgMe.mjs";
1
+ import { a as normalizeOpsxEntityPath, c as parseOpsxEntityMetadata, i as isOpsxGlobPattern, n as getOpsxEntityMetadataPath, o as opsxGlobToRegex, r as getOpsxEntityRootRelativePath, s as opsxPathMatchesPattern, t as buildOpsxEntityDetail } from "./opsx-entity-c7m5CbgU.mjs";
2
2
 
3
3
  export { buildOpsxEntityDetail, getOpsxEntityMetadataPath, getOpsxEntityRootRelativePath, isOpsxGlobPattern, normalizeOpsxEntityPath, opsxGlobToRegex, opsxPathMatchesPattern, parseOpsxEntityMetadata };
@@ -1,5 +1,5 @@
1
- import { g as SchemaDetail } from "./opsx-types-Ccrsvb3l.mjs";
2
- import { i as OpsxEntityDiagnostic } from "./opsx-entity-DNzyALN-.mjs";
1
+ import { g as SchemaDetail } from "./opsx-types-Dnb06uff.mjs";
2
+ import { i as OpsxEntityDiagnostic } from "./opsx-entity-DZyl-uhQ.mjs";
3
3
 
4
4
  //#region src/opsx-schema-detail.d.ts
5
5
  interface ParsedOpsxSchemaDetail {
@@ -1,5 +1,5 @@
1
- import "./opsx-types-Ccrsvb3l.mjs";
2
- import "./schemas-C01jZKK1.mjs";
3
- import "./opsx-entity-DNzyALN-.mjs";
4
- import { n as parseOpsxSchemaDetail, t as ParsedOpsxSchemaDetail } from "./opsx-schema-detail-BZpl9jiW.mjs";
1
+ import "./opsx-types-Dnb06uff.mjs";
2
+ import "./schemas-D01aQnV4.mjs";
3
+ import "./opsx-entity-DZyl-uhQ.mjs";
4
+ import { n as parseOpsxSchemaDetail, t as ParsedOpsxSchemaDetail } from "./opsx-schema-detail-CS0tWa9v.mjs";
5
5
  export { ParsedOpsxSchemaDetail, parseOpsxSchemaDetail };
@@ -1,3 +1,3 @@
1
- import { t as parseOpsxSchemaDetail } from "./opsx-schema-detail-B-4bLoZS.mjs";
1
+ import { t as parseOpsxSchemaDetail } from "./opsx-schema-detail-BH82X6aU.mjs";
2
2
 
3
3
  export { parseOpsxSchemaDetail };
@@ -146,15 +146,15 @@ declare const ApplyInstructionsSchema: z.ZodObject<{
146
146
  remaining: number;
147
147
  };
148
148
  state: "ready" | "blocked" | "all_done";
149
- changeName: string;
150
- schemaName: string;
151
- changeDir: string;
152
- contextFiles: Record<string, string[]>;
153
149
  tasks: {
154
150
  id: string;
155
151
  description: string;
156
152
  done: boolean;
157
153
  }[];
154
+ changeName: string;
155
+ schemaName: string;
156
+ changeDir: string;
157
+ contextFiles: Record<string, string[]>;
158
158
  instruction: string;
159
159
  missingArtifacts?: string[] | undefined;
160
160
  }, {
@@ -164,15 +164,15 @@ declare const ApplyInstructionsSchema: z.ZodObject<{
164
164
  remaining: number;
165
165
  };
166
166
  state: "ready" | "blocked" | "all_done";
167
- changeName: string;
168
- schemaName: string;
169
- changeDir: string;
170
- contextFiles: Record<string, string | string[]>;
171
167
  tasks: {
172
168
  id: string;
173
169
  description: string;
174
170
  done: boolean;
175
171
  }[];
172
+ changeName: string;
173
+ schemaName: string;
174
+ changeDir: string;
175
+ contextFiles: Record<string, string | string[]>;
176
176
  instruction: string;
177
177
  missingArtifacts?: string[] | undefined;
178
178
  }>;