@grifhinz/logics-manager 2.6.0 → 2.8.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.
- package/README.md +37 -3
- package/VERSION +1 -1
- package/clients/viewer/browser-host.js +1597 -100
- package/clients/viewer/index.html +11 -4
- package/clients/viewer/viewer.css +402 -1
- package/logics_manager/assist.py +1 -0
- package/logics_manager/cli.py +5 -3
- package/logics_manager/flow.py +67 -3
- package/logics_manager/lint.py +11 -7
- package/logics_manager/sync.py +47 -19
- package/logics_manager/viewer.py +1327 -25
- package/package.json +1 -1
- package/pyproject.toml +1 -1
|
@@ -18,7 +18,13 @@
|
|
|
18
18
|
<div>
|
|
19
19
|
<div class="viewer-topbar__identity">
|
|
20
20
|
<div class="viewer-topbar__title">Logics Viewer</div>
|
|
21
|
-
<
|
|
21
|
+
<div class="viewer-project-switcher" id="viewer-project-switcher">
|
|
22
|
+
<button class="viewer-topbar__repo viewer-project-switcher__button" id="viewer-repo-pill" type="button" title="" aria-haspopup="menu" aria-expanded="false" aria-controls="viewer-project-menu">
|
|
23
|
+
<span data-viewer-project-label>repository</span>
|
|
24
|
+
<span class="viewer-project-switcher__chevron" aria-hidden="true">v</span>
|
|
25
|
+
</button>
|
|
26
|
+
<div class="viewer-project-switcher__menu" id="viewer-project-menu" role="menu" aria-label="Known projects" hidden></div>
|
|
27
|
+
</div>
|
|
22
28
|
<span class="viewer-topbar__repo-actions" id="viewer-repo-actions" aria-label="Repository shortcuts">
|
|
23
29
|
<a class="viewer-topbar__repo-action" id="viewer-repo-github" href="#" target="_blank" rel="noreferrer" title="Open GitHub repository" aria-label="Open GitHub repository" hidden>
|
|
24
30
|
<svg viewBox="0 0 24 24" aria-hidden="true" focusable="false"><path d="M9 19c-4.2 1.2-4.2-2-6-2.4m12 4.4v-3.5c0-1 .1-1.4-.5-2 2-.2 4.1-1 4.1-4.6 0-1-.4-1.9-1-2.6.1-.3.4-1.3-.1-2.6 0 0-.8-.3-2.7 1a9.3 9.3 0 0 0-4.9 0c-1.8-1.3-2.7-1-2.7-1-.5 1.3-.2 2.3-.1 2.6a3.8 3.8 0 0 0-1 2.6c0 3.6 2.1 4.4 4.1 4.6-.5.5-.7 1-.7 1.9V21" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" /></svg>
|
|
@@ -31,6 +37,9 @@
|
|
|
31
37
|
<div class="viewer-topbar__meta" id="viewer-meta">Read-only local viewer</div>
|
|
32
38
|
</div>
|
|
33
39
|
<div class="viewer-topbar__actions">
|
|
40
|
+
<button class="btn" id="viewer-git" type="button" title="Show Git status">Git</button>
|
|
41
|
+
<button class="btn" id="viewer-ci" type="button" title="Show GitHub Actions CI status" hidden>CI</button>
|
|
42
|
+
<button class="btn" id="viewer-cdx" type="button" title="Show CDX status">CDX</button>
|
|
34
43
|
<div class="viewer-refresh-menu">
|
|
35
44
|
<button class="btn" id="viewer-refresh-menu-button" type="button" title="Viewer settings" aria-haspopup="menu" aria-expanded="false" aria-controls="viewer-refresh-menu">Settings</button>
|
|
36
45
|
<div class="viewer-refresh-menu__panel" id="viewer-refresh-menu" role="menu" aria-label="Viewer settings" hidden>
|
|
@@ -56,12 +65,10 @@
|
|
|
56
65
|
<div class="viewer-settings-menu__heading">Utilities</div>
|
|
57
66
|
<button class="btn" id="viewer-insights" type="button" title="Show corpus insights">Insights</button>
|
|
58
67
|
<button class="btn" id="viewer-health" type="button" title="Show lint and audit health">Health</button>
|
|
68
|
+
<a class="viewer-settings-menu__version" id="viewer-version-link" href="https://github.com/AlexAgo83/logics-manager" target="_blank" rel="noreferrer" title="Open Logics Manager on GitHub">v0.0.0</a>
|
|
59
69
|
</section>
|
|
60
70
|
</div>
|
|
61
71
|
</div>
|
|
62
|
-
<button class="btn" id="viewer-git" type="button" title="Show Git status">Git</button>
|
|
63
|
-
<button class="btn" id="viewer-ci" type="button" title="Show GitHub Actions CI status" hidden>CI</button>
|
|
64
|
-
<button class="btn" id="viewer-cdx" type="button" title="Show CDX status">CDX</button>
|
|
65
72
|
</div>
|
|
66
73
|
</header>
|
|
67
74
|
|
|
@@ -37,6 +37,92 @@
|
|
|
37
37
|
line-height: 1.3;
|
|
38
38
|
}
|
|
39
39
|
|
|
40
|
+
.viewer-project-switcher {
|
|
41
|
+
position: relative;
|
|
42
|
+
min-width: 0;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
.viewer-project-switcher__button {
|
|
46
|
+
display: inline-flex;
|
|
47
|
+
align-items: center;
|
|
48
|
+
gap: 6px;
|
|
49
|
+
cursor: pointer;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
.viewer-project-switcher__button[disabled] {
|
|
53
|
+
cursor: default;
|
|
54
|
+
opacity: 0.75;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
.viewer-project-switcher__chevron {
|
|
58
|
+
font-size: 9px;
|
|
59
|
+
opacity: 0.75;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
.viewer-project-switcher__menu {
|
|
63
|
+
position: absolute;
|
|
64
|
+
z-index: 20;
|
|
65
|
+
top: calc(100% + 6px);
|
|
66
|
+
left: 0;
|
|
67
|
+
min-width: 260px;
|
|
68
|
+
max-width: min(420px, calc(100vw - 24px));
|
|
69
|
+
max-height: min(360px, calc(100vh - 96px));
|
|
70
|
+
overflow: auto;
|
|
71
|
+
padding: 6px;
|
|
72
|
+
border: 1px solid var(--vscode-panel-border, #333333);
|
|
73
|
+
border-radius: 6px;
|
|
74
|
+
background: var(--vscode-dropdown-background, var(--vscode-editorWidget-background, #202020));
|
|
75
|
+
box-shadow: 0 12px 28px rgb(0 0 0 / 28%);
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
.viewer-project-switcher__menu[hidden] {
|
|
79
|
+
display: none !important;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
.viewer-project-switcher__item {
|
|
83
|
+
width: 100%;
|
|
84
|
+
display: grid;
|
|
85
|
+
grid-template-columns: minmax(0, 1fr) auto;
|
|
86
|
+
gap: 4px 10px;
|
|
87
|
+
padding: 7px 8px;
|
|
88
|
+
border: 0;
|
|
89
|
+
border-radius: 4px;
|
|
90
|
+
background: transparent;
|
|
91
|
+
color: var(--vscode-foreground, #d4d4d4);
|
|
92
|
+
text-align: left;
|
|
93
|
+
cursor: pointer;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
.viewer-project-switcher__item:hover,
|
|
97
|
+
.viewer-project-switcher__item.is-active {
|
|
98
|
+
background: var(--vscode-list-hoverBackground, rgb(255 255 255 / 8%));
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
.viewer-project-switcher__item-name,
|
|
102
|
+
.viewer-project-switcher__item-state {
|
|
103
|
+
overflow: hidden;
|
|
104
|
+
text-overflow: ellipsis;
|
|
105
|
+
white-space: nowrap;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
.viewer-project-switcher__item-name {
|
|
109
|
+
font-weight: 650;
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
.viewer-project-switcher__item-path {
|
|
113
|
+
grid-column: 1 / -1;
|
|
114
|
+
overflow: hidden;
|
|
115
|
+
text-overflow: ellipsis;
|
|
116
|
+
white-space: nowrap;
|
|
117
|
+
color: var(--vscode-descriptionForeground, #9da5b4);
|
|
118
|
+
font-size: 11px;
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
.viewer-project-switcher__item-state {
|
|
122
|
+
color: var(--vscode-descriptionForeground, #9da5b4);
|
|
123
|
+
font-size: 11px;
|
|
124
|
+
}
|
|
125
|
+
|
|
40
126
|
.viewer-topbar__repo-actions {
|
|
41
127
|
display: inline-flex;
|
|
42
128
|
align-items: center;
|
|
@@ -179,6 +265,11 @@
|
|
|
179
265
|
line-height: 1;
|
|
180
266
|
}
|
|
181
267
|
|
|
268
|
+
.viewer-cdx-button-badge--runs {
|
|
269
|
+
background: rgba(245, 158, 11, 0.16);
|
|
270
|
+
color: #f59e0b;
|
|
271
|
+
}
|
|
272
|
+
|
|
182
273
|
.viewer-refresh-menu {
|
|
183
274
|
position: relative;
|
|
184
275
|
display: inline-flex;
|
|
@@ -228,6 +319,19 @@
|
|
|
228
319
|
width: 100%;
|
|
229
320
|
}
|
|
230
321
|
|
|
322
|
+
.viewer-settings-menu__version {
|
|
323
|
+
justify-self: center;
|
|
324
|
+
color: var(--vscode-descriptionForeground, #9da5b4);
|
|
325
|
+
font-size: 11px;
|
|
326
|
+
text-decoration: none;
|
|
327
|
+
}
|
|
328
|
+
|
|
329
|
+
.viewer-settings-menu__version:hover,
|
|
330
|
+
.viewer-settings-menu__version:focus-visible {
|
|
331
|
+
color: var(--vscode-textLink-foreground, #4ea1ff);
|
|
332
|
+
text-decoration: underline;
|
|
333
|
+
}
|
|
334
|
+
|
|
231
335
|
.viewer-auto-refresh {
|
|
232
336
|
display: inline-flex;
|
|
233
337
|
align-items: center;
|
|
@@ -529,6 +633,31 @@
|
|
|
529
633
|
gap: 14px;
|
|
530
634
|
}
|
|
531
635
|
|
|
636
|
+
.viewer-cdx__modes {
|
|
637
|
+
display: inline-flex;
|
|
638
|
+
align-items: center;
|
|
639
|
+
gap: 2px;
|
|
640
|
+
width: fit-content;
|
|
641
|
+
padding: 2px;
|
|
642
|
+
border: 1px solid var(--vscode-panel-border, #333333);
|
|
643
|
+
border-radius: 6px;
|
|
644
|
+
background: var(--vscode-editorWidget-background, #202020);
|
|
645
|
+
}
|
|
646
|
+
|
|
647
|
+
.viewer-cdx__mode {
|
|
648
|
+
border: 0;
|
|
649
|
+
border-radius: 4px;
|
|
650
|
+
padding: 5px 10px;
|
|
651
|
+
background: transparent;
|
|
652
|
+
color: var(--vscode-descriptionForeground, #9da5b4);
|
|
653
|
+
cursor: pointer;
|
|
654
|
+
}
|
|
655
|
+
|
|
656
|
+
.viewer-cdx__mode.is-active {
|
|
657
|
+
background: var(--vscode-button-secondaryBackground, #3a3d41);
|
|
658
|
+
color: var(--vscode-button-secondaryForeground, var(--vscode-foreground, #d4d4d4));
|
|
659
|
+
}
|
|
660
|
+
|
|
532
661
|
.viewer-git__summary,
|
|
533
662
|
.viewer-cdx__summary,
|
|
534
663
|
.viewer-ci__summary,
|
|
@@ -546,6 +675,44 @@
|
|
|
546
675
|
align-items: start;
|
|
547
676
|
}
|
|
548
677
|
|
|
678
|
+
.viewer-cdx__workspace--missions {
|
|
679
|
+
grid-template-columns: minmax(240px, 0.9fr) minmax(320px, 1.1fr);
|
|
680
|
+
}
|
|
681
|
+
|
|
682
|
+
.viewer-git__summary-card {
|
|
683
|
+
display: grid;
|
|
684
|
+
align-content: start;
|
|
685
|
+
gap: 8px;
|
|
686
|
+
}
|
|
687
|
+
|
|
688
|
+
.viewer-git__summary-segments {
|
|
689
|
+
display: flex;
|
|
690
|
+
flex-wrap: wrap;
|
|
691
|
+
gap: 6px;
|
|
692
|
+
}
|
|
693
|
+
|
|
694
|
+
.viewer-git__summary-segment {
|
|
695
|
+
display: inline-flex;
|
|
696
|
+
align-items: center;
|
|
697
|
+
gap: 6px;
|
|
698
|
+
min-height: 24px;
|
|
699
|
+
border: 1px solid color-mix(in srgb, var(--vscode-panel-border, #333333) 72%, transparent);
|
|
700
|
+
border-radius: 6px;
|
|
701
|
+
padding: 2px 7px;
|
|
702
|
+
background: color-mix(in srgb, var(--vscode-editorWidget-background, #202020) 76%, var(--vscode-textLink-foreground, #4ea1ff));
|
|
703
|
+
font-size: 12px;
|
|
704
|
+
white-space: nowrap;
|
|
705
|
+
}
|
|
706
|
+
|
|
707
|
+
.viewer-git__summary-segment span {
|
|
708
|
+
color: var(--vscode-descriptionForeground, #aaaaaa);
|
|
709
|
+
}
|
|
710
|
+
|
|
711
|
+
.viewer-git__summary-segment strong {
|
|
712
|
+
color: var(--vscode-foreground, #dddddd);
|
|
713
|
+
font-size: 13px;
|
|
714
|
+
}
|
|
715
|
+
|
|
549
716
|
.viewer-ci {
|
|
550
717
|
display: grid;
|
|
551
718
|
gap: 12px;
|
|
@@ -574,6 +741,15 @@
|
|
|
574
741
|
margin-bottom: 10px;
|
|
575
742
|
}
|
|
576
743
|
|
|
744
|
+
.viewer-ci__heading--actions {
|
|
745
|
+
align-items: flex-start;
|
|
746
|
+
}
|
|
747
|
+
|
|
748
|
+
.viewer-ci__heading--actions > div {
|
|
749
|
+
display: grid;
|
|
750
|
+
gap: 4px;
|
|
751
|
+
}
|
|
752
|
+
|
|
577
753
|
.viewer-ci__heading h2 {
|
|
578
754
|
margin: 0;
|
|
579
755
|
font-size: 13px;
|
|
@@ -721,12 +897,113 @@
|
|
|
721
897
|
gap: 8px;
|
|
722
898
|
}
|
|
723
899
|
|
|
900
|
+
.viewer-cdx__row--block {
|
|
901
|
+
display: grid;
|
|
902
|
+
gap: 8px;
|
|
903
|
+
}
|
|
904
|
+
|
|
724
905
|
.viewer-cdx__row strong,
|
|
725
906
|
.viewer-cdx__entity-main > span {
|
|
726
907
|
min-width: 0;
|
|
727
908
|
text-align: right;
|
|
728
909
|
}
|
|
729
910
|
|
|
911
|
+
.viewer-cdx__row--block strong,
|
|
912
|
+
.viewer-cdx__detail-value {
|
|
913
|
+
min-width: 0;
|
|
914
|
+
text-align: left;
|
|
915
|
+
}
|
|
916
|
+
|
|
917
|
+
.viewer-cdx__detail-value {
|
|
918
|
+
display: grid;
|
|
919
|
+
gap: 8px;
|
|
920
|
+
color: var(--vscode-editor-foreground, #d4d4d4);
|
|
921
|
+
line-height: 1.45;
|
|
922
|
+
}
|
|
923
|
+
|
|
924
|
+
.viewer-cdx__detail-list {
|
|
925
|
+
display: grid;
|
|
926
|
+
gap: 8px;
|
|
927
|
+
margin: 0;
|
|
928
|
+
padding-left: 20px;
|
|
929
|
+
}
|
|
930
|
+
|
|
931
|
+
.viewer-cdx__detail-list li {
|
|
932
|
+
min-width: 0;
|
|
933
|
+
}
|
|
934
|
+
|
|
935
|
+
.viewer-cdx__detail-code {
|
|
936
|
+
max-width: 100%;
|
|
937
|
+
max-height: 280px;
|
|
938
|
+
overflow: auto;
|
|
939
|
+
margin: 0;
|
|
940
|
+
padding: 8px;
|
|
941
|
+
border-radius: 6px;
|
|
942
|
+
background: var(--vscode-textCodeBlock-background, #111111);
|
|
943
|
+
color: var(--vscode-textPreformat-foreground, #d7ba7d);
|
|
944
|
+
font-size: 11px;
|
|
945
|
+
line-height: 1.45;
|
|
946
|
+
white-space: pre-wrap;
|
|
947
|
+
overflow-wrap: anywhere;
|
|
948
|
+
}
|
|
949
|
+
|
|
950
|
+
.viewer-cdx__log-preview {
|
|
951
|
+
display: grid;
|
|
952
|
+
gap: 10px;
|
|
953
|
+
min-width: 0;
|
|
954
|
+
}
|
|
955
|
+
|
|
956
|
+
.viewer-cdx__log-structured,
|
|
957
|
+
.viewer-cdx__log-raw {
|
|
958
|
+
min-width: 0;
|
|
959
|
+
border: 1px solid var(--vscode-panel-border, #333333);
|
|
960
|
+
border-radius: 6px;
|
|
961
|
+
background: color-mix(in srgb, var(--vscode-editorWidget-background, #202020) 76%, transparent);
|
|
962
|
+
}
|
|
963
|
+
|
|
964
|
+
.viewer-cdx__log-structured > summary,
|
|
965
|
+
.viewer-cdx__log-raw > summary {
|
|
966
|
+
cursor: pointer;
|
|
967
|
+
padding: 8px 10px;
|
|
968
|
+
color: var(--vscode-descriptionForeground, #aaaaaa);
|
|
969
|
+
font-size: 12px;
|
|
970
|
+
font-weight: 700;
|
|
971
|
+
}
|
|
972
|
+
|
|
973
|
+
.viewer-cdx__log-structured > .viewer-cdx__detail-value {
|
|
974
|
+
padding: 0 10px 10px;
|
|
975
|
+
}
|
|
976
|
+
|
|
977
|
+
.viewer-cdx__log-content {
|
|
978
|
+
max-height: min(70vh, 760px);
|
|
979
|
+
overflow: auto;
|
|
980
|
+
margin: 0;
|
|
981
|
+
padding: 12px;
|
|
982
|
+
border: 1px solid var(--vscode-panel-border, #333333);
|
|
983
|
+
border-radius: 6px;
|
|
984
|
+
background: var(--vscode-textCodeBlock-background, #111111);
|
|
985
|
+
color: var(--vscode-textPreformat-foreground, #d7ba7d);
|
|
986
|
+
font-size: 12px;
|
|
987
|
+
line-height: 1.45;
|
|
988
|
+
white-space: pre-wrap;
|
|
989
|
+
overflow-wrap: anywhere;
|
|
990
|
+
}
|
|
991
|
+
|
|
992
|
+
.viewer-cdx__path-link {
|
|
993
|
+
border: 0;
|
|
994
|
+
padding: 0;
|
|
995
|
+
background: transparent;
|
|
996
|
+
color: var(--vscode-textLink-foreground, #4ea1ff);
|
|
997
|
+
cursor: pointer;
|
|
998
|
+
font: inherit;
|
|
999
|
+
text-align: right;
|
|
1000
|
+
overflow-wrap: anywhere;
|
|
1001
|
+
}
|
|
1002
|
+
|
|
1003
|
+
.viewer-cdx__path-link:hover {
|
|
1004
|
+
text-decoration: underline;
|
|
1005
|
+
}
|
|
1006
|
+
|
|
730
1007
|
.viewer-cdx__entity-status {
|
|
731
1008
|
display: flex;
|
|
732
1009
|
flex-wrap: wrap;
|
|
@@ -905,6 +1182,110 @@
|
|
|
905
1182
|
overflow-wrap: anywhere;
|
|
906
1183
|
}
|
|
907
1184
|
|
|
1185
|
+
.viewer-cdx__missions {
|
|
1186
|
+
display: grid;
|
|
1187
|
+
gap: 8px;
|
|
1188
|
+
}
|
|
1189
|
+
|
|
1190
|
+
.viewer-cdx__mission {
|
|
1191
|
+
display: grid;
|
|
1192
|
+
gap: 5px;
|
|
1193
|
+
width: 100%;
|
|
1194
|
+
min-width: 0;
|
|
1195
|
+
padding: 10px;
|
|
1196
|
+
border: 1px solid var(--vscode-panel-border, #333333);
|
|
1197
|
+
border-radius: 6px;
|
|
1198
|
+
background: var(--vscode-input-background, #1f1f1f);
|
|
1199
|
+
color: var(--vscode-foreground, #d4d4d4);
|
|
1200
|
+
font: inherit;
|
|
1201
|
+
text-align: left;
|
|
1202
|
+
cursor: pointer;
|
|
1203
|
+
}
|
|
1204
|
+
|
|
1205
|
+
.viewer-cdx__mission.is-active {
|
|
1206
|
+
border-color: var(--vscode-focusBorder, #4ea1ff);
|
|
1207
|
+
background: color-mix(in srgb, var(--vscode-input-background, #1f1f1f) 72%, var(--vscode-textLink-foreground, #4ea1ff));
|
|
1208
|
+
}
|
|
1209
|
+
|
|
1210
|
+
.viewer-cdx__mission span,
|
|
1211
|
+
.viewer-cdx__mission em {
|
|
1212
|
+
color: var(--vscode-descriptionForeground, #aaaaaa);
|
|
1213
|
+
font-size: 12px;
|
|
1214
|
+
font-style: normal;
|
|
1215
|
+
}
|
|
1216
|
+
|
|
1217
|
+
.viewer-cdx__field {
|
|
1218
|
+
display: grid;
|
|
1219
|
+
gap: 6px;
|
|
1220
|
+
margin-bottom: 10px;
|
|
1221
|
+
color: var(--vscode-descriptionForeground, #aaaaaa);
|
|
1222
|
+
font-size: 12px;
|
|
1223
|
+
}
|
|
1224
|
+
|
|
1225
|
+
.viewer-cdx__field select,
|
|
1226
|
+
.viewer-cdx__field input,
|
|
1227
|
+
.viewer-cdx__field textarea {
|
|
1228
|
+
min-width: 0;
|
|
1229
|
+
width: 100%;
|
|
1230
|
+
border: 1px solid var(--vscode-input-border, var(--vscode-panel-border, #333333));
|
|
1231
|
+
border-radius: 4px;
|
|
1232
|
+
padding: 7px 8px;
|
|
1233
|
+
background: var(--vscode-dropdown-background, var(--vscode-input-background, #1f1f1f));
|
|
1234
|
+
color: var(--vscode-dropdown-foreground, var(--vscode-foreground, #d4d4d4));
|
|
1235
|
+
}
|
|
1236
|
+
|
|
1237
|
+
.viewer-cdx__field textarea {
|
|
1238
|
+
resize: vertical;
|
|
1239
|
+
}
|
|
1240
|
+
|
|
1241
|
+
.viewer-cdx__field--check {
|
|
1242
|
+
grid-template-columns: 16px minmax(0, 1fr);
|
|
1243
|
+
align-items: center;
|
|
1244
|
+
}
|
|
1245
|
+
|
|
1246
|
+
.viewer-cdx__field--check input {
|
|
1247
|
+
width: 16px;
|
|
1248
|
+
height: 16px;
|
|
1249
|
+
padding: 0;
|
|
1250
|
+
}
|
|
1251
|
+
|
|
1252
|
+
.viewer-cdx__strengths,
|
|
1253
|
+
.viewer-cdx__actions {
|
|
1254
|
+
display: flex;
|
|
1255
|
+
flex-wrap: wrap;
|
|
1256
|
+
gap: 8px;
|
|
1257
|
+
}
|
|
1258
|
+
|
|
1259
|
+
.viewer-cdx__actions {
|
|
1260
|
+
margin-top: 12px;
|
|
1261
|
+
}
|
|
1262
|
+
|
|
1263
|
+
.viewer-cdx__code {
|
|
1264
|
+
max-height: 260px;
|
|
1265
|
+
overflow: auto;
|
|
1266
|
+
margin: 0 0 10px;
|
|
1267
|
+
padding: 9px;
|
|
1268
|
+
border-radius: 6px;
|
|
1269
|
+
background: var(--vscode-textCodeBlock-background, #111111);
|
|
1270
|
+
color: var(--vscode-textPreformat-foreground, #d7ba7d);
|
|
1271
|
+
font-size: 12px;
|
|
1272
|
+
white-space: pre-wrap;
|
|
1273
|
+
overflow-wrap: anywhere;
|
|
1274
|
+
}
|
|
1275
|
+
|
|
1276
|
+
.viewer-cdx__code--error {
|
|
1277
|
+
color: #ef4444;
|
|
1278
|
+
}
|
|
1279
|
+
|
|
1280
|
+
.viewer-cdx__warnings {
|
|
1281
|
+
display: grid;
|
|
1282
|
+
gap: 5px;
|
|
1283
|
+
margin: 10px 0 0;
|
|
1284
|
+
padding-left: 18px;
|
|
1285
|
+
color: #f59e0b;
|
|
1286
|
+
font-size: 12px;
|
|
1287
|
+
}
|
|
1288
|
+
|
|
908
1289
|
.viewer-cdx__state,
|
|
909
1290
|
.viewer-cdx__empty {
|
|
910
1291
|
margin: 0;
|
|
@@ -912,6 +1293,18 @@
|
|
|
912
1293
|
overflow-wrap: anywhere;
|
|
913
1294
|
}
|
|
914
1295
|
|
|
1296
|
+
.viewer-cdx__state--ok {
|
|
1297
|
+
color: #22c55e;
|
|
1298
|
+
}
|
|
1299
|
+
|
|
1300
|
+
.viewer-cdx__state--warn {
|
|
1301
|
+
color: #f59e0b;
|
|
1302
|
+
}
|
|
1303
|
+
|
|
1304
|
+
.viewer-cdx__state--bad {
|
|
1305
|
+
color: #ef4444;
|
|
1306
|
+
}
|
|
1307
|
+
|
|
915
1308
|
@media (max-width: 860px) {
|
|
916
1309
|
.viewer-cdx__workspace {
|
|
917
1310
|
grid-template-columns: 1fr;
|
|
@@ -924,11 +1317,15 @@
|
|
|
924
1317
|
|
|
925
1318
|
.viewer-git__workspace {
|
|
926
1319
|
display: grid;
|
|
927
|
-
grid-template-columns: minmax(120px, 0.45fr) minmax(
|
|
1320
|
+
grid-template-columns: minmax(120px, 0.45fr) minmax(0, 2.2fr);
|
|
928
1321
|
gap: 12px;
|
|
929
1322
|
align-items: start;
|
|
930
1323
|
}
|
|
931
1324
|
|
|
1325
|
+
.viewer-git__workspace.has-diff-detail {
|
|
1326
|
+
grid-template-columns: minmax(120px, 0.45fr) minmax(220px, 0.9fr) minmax(280px, 1.3fr);
|
|
1327
|
+
}
|
|
1328
|
+
|
|
932
1329
|
.viewer-git__domains {
|
|
933
1330
|
display: grid;
|
|
934
1331
|
gap: 6px;
|
|
@@ -985,6 +1382,10 @@
|
|
|
985
1382
|
display: none !important;
|
|
986
1383
|
}
|
|
987
1384
|
|
|
1385
|
+
.viewer-git__detail[hidden] {
|
|
1386
|
+
display: none !important;
|
|
1387
|
+
}
|
|
1388
|
+
|
|
988
1389
|
.viewer-git__panel-header {
|
|
989
1390
|
display: flex;
|
|
990
1391
|
align-items: center;
|
package/logics_manager/assist.py
CHANGED
|
@@ -336,6 +336,7 @@ def _build_spec_first_pass(repo_root: Path, backlog_ref: str) -> dict[str, objec
|
|
|
336
336
|
[
|
|
337
337
|
f"## {ref} - {spec_title}",
|
|
338
338
|
f"> From version: {_parse_package_version(repo_root)}",
|
|
339
|
+
"> Status: Draft",
|
|
339
340
|
"> Understanding: 90%",
|
|
340
341
|
"> Confidence: 85%",
|
|
341
342
|
"",
|
package/logics_manager/cli.py
CHANGED
|
@@ -77,12 +77,14 @@ def _build_root_help() -> str:
|
|
|
77
77
|
' logics-manager flow new request --title "My request"',
|
|
78
78
|
" logics-manager audit --group-by-doc",
|
|
79
79
|
" logics-manager status",
|
|
80
|
-
" logics-manager
|
|
80
|
+
" logics-manager flow show req_001_example",
|
|
81
|
+
" logics-manager sync context-pack req_001_example task_001_example --format json",
|
|
82
|
+
" logics-manager sync refresh-mermaid-signatures task_001_example",
|
|
81
83
|
" logics-manager mcp tunnel --repo-root . --port 8765",
|
|
82
84
|
"",
|
|
83
85
|
"Workflow authoring:",
|
|
84
86
|
" flow Create, promote, split, close, and finish workflow docs.",
|
|
85
|
-
" Subcommands: new, list, companion, deliver, validate-closeout, repair, closeout, promote, split, close, finish",
|
|
87
|
+
" Subcommands: new, list, show, companion, deliver, validate-closeout, repair, closeout, promote, split, close, finish",
|
|
86
88
|
" sync Maintain generated workflow state and doc metadata.",
|
|
87
89
|
" Subcommands: close-eligible-requests, refresh-mermaid-signatures,",
|
|
88
90
|
" schema-status, read-doc, list-docs, search-docs,",
|
|
@@ -366,7 +368,7 @@ def main(argv: list[str] | None = None) -> int:
|
|
|
366
368
|
if manager == "npm":
|
|
367
369
|
_print_path_conflict_guidance(_find_executable_paths("logics-manager"))
|
|
368
370
|
return result.returncode
|
|
369
|
-
if command == "flow"
|
|
371
|
+
if command == "flow":
|
|
370
372
|
from .flow import main as flow_main
|
|
371
373
|
|
|
372
374
|
return flow_main(rest)
|