create-pmos 0.153.0 → 0.155.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/package.json +1 -1
- package/payload/KIT-VERSION +1 -1
- package/payload/planning/evals/eval-calibration.md +1 -1
- package/payload/planning/okrs/health-budgets.md +1 -1
- package/payload/state/discoveries.md +1 -1
- package/workspace/guide/briefing-cards.md +1 -1
- package/workspace/guide/console-calendar.md +25 -2
- package/workspace/guide/console3-sessions.md +5 -1
- package/workspace/guide/document-sheet.md +18 -3
- package/workspace/lib/calendar-layers.js +130 -11
- package/workspace/lib/calendar-links.js +64 -0
- package/workspace/lib/engine/boards.js +4 -2
- package/workspace/lib/routes-boards.js +51 -1
- package/workspace/lib/routes-calendar-views.js +42 -3
- package/workspace/package-lock.json +2 -2
- package/workspace/package.json +1 -1
- package/workspace/public/pm/c3-calendar.js +105 -6
- package/workspace/public/pm/c3-demo-boards.js +4 -3
- package/workspace/public/pm/c3-demo-cal4.js +43 -3
- package/workspace/public/pm/c3-demo-init.js +16 -0
- package/workspace/public/pm/c3-demo.js +1 -0
- package/workspace/public/pm/c3-doc-sheet.js +328 -21
- package/workspace/public/pm/c3-dock.js +8 -15
- package/workspace/public/pm/c3-docs.js +2 -1
- package/workspace/public/pm/c3-ib-docs.js +3 -1
- package/workspace/public/pm/c3-shell.js +5 -6
- package/workspace/public/pm/c3-terminal-icons.js +0 -1
- package/workspace/public/pm/console3.css +96 -2
- package/workspace/test-lists/c3-doc-sheet-v2.json +6 -0
- package/workspace/test-lists/c3-meeting-board.json +5 -0
|
@@ -14,7 +14,6 @@ export const ICON = { agent: 'bolt', terminal: 'term' }; // the mockup's heade
|
|
|
14
14
|
export const TIPS = {
|
|
15
15
|
agentHeader: (n) => (n ? 'Agent surfaces: ' + n + (n === 1 ? ' session needs you' : ' sessions need you') : 'Agent surfaces: sessions, results to accept, questions for you'),
|
|
16
16
|
agentDock: 'Agent surfaces: the full page of sessions that need you',
|
|
17
|
-
terminalRail: 'Sessions dock (Ctrl J): the terminals of your branches',
|
|
18
17
|
terminalOpen: 'Open the session: its real terminal, on this page',
|
|
19
18
|
};
|
|
20
19
|
|
|
@@ -1139,6 +1139,7 @@
|
|
|
1139
1139
|
* `.c3.ph .dock` above hide the mockup's own names on a phone, and this page keeps its tabs there. Append-only. */
|
|
1140
1140
|
.c3.c3pg{overflow-x:clip;max-width:1412px;margin:0 auto;padding:16px 16px 24px;min-height:100vh}
|
|
1141
1141
|
.c3 .c3grid{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:start}
|
|
1142
|
+
.c3 .c3grid:not(:has(> .c3dock:not([hidden]))){grid-template-columns:minmax(0,1fr)} /* a folded dock leaves no column and no gap */
|
|
1142
1143
|
.c3 .c3main{min-width:0;display:grid;gap:14px;container-type:inline-size;align-content:start}
|
|
1143
1144
|
.c3 .c3top{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
|
|
1144
1145
|
.c3 .c3top h1{margin:0;font-size:var(--fs-5);font-weight:600;display:flex;gap:8px;align-items:center}
|
|
@@ -1168,7 +1169,6 @@
|
|
|
1168
1169
|
.c3 .c3pg-initbody>[hidden]{display:none}
|
|
1169
1170
|
.c3 .c3dock{position:sticky;top:12px;width:330px;border:1px solid var(--border);background:var(--card);display:flex;flex-direction:column;max-height:calc(100vh - 24px);border-radius:10px;overflow:hidden}
|
|
1170
1171
|
.c3 .c3dock[hidden]{display:none}
|
|
1171
|
-
.c3 .c3dock.rail{width:46px;align-items:center;padding-block:8px;gap:8px;overflow:visible}
|
|
1172
1172
|
.c3 .c3dock .dk-h{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:8px 10px;border-bottom:1px solid var(--border)}
|
|
1173
1173
|
.c3 .c3dock .dk-h select{flex:1;min-width:0;font:500 var(--fs-2) var(--mono);border:0;background:transparent;padding:4px;color:var(--foreground)}
|
|
1174
1174
|
.c3 .c3dock .dk-h a.ib{text-decoration:none}
|
|
@@ -1211,7 +1211,6 @@
|
|
|
1211
1211
|
.c3 .c3dock .dk-p .form{display:flex;gap:6px;align-items:center}
|
|
1212
1212
|
.c3 .c3dock .dk-p .form input[type=text]{flex:1;min-width:0}
|
|
1213
1213
|
.c3 .c3dock .dk-p .form input:disabled{opacity:.6;cursor:not-allowed}
|
|
1214
|
-
.c3 .c3dock.rail .ib .mk{width:auto}
|
|
1215
1214
|
/* the Briefing's middle column is the mockup's ribbon: the zoom switch, no previous/next row */
|
|
1216
1215
|
.c3 .c3pg-midcal .calbar>.chips2{display:none}
|
|
1217
1216
|
@media (prefers-reduced-motion:reduce){.c3 .mk.w{animation:none}}
|
|
@@ -2074,7 +2073,102 @@
|
|
|
2074
2073
|
}
|
|
2075
2074
|
.c3 .ds input[type=checkbox]{width:auto;min-height:0;padding:0;margin:0;flex:none;border-radius:0}
|
|
2076
2075
|
|
|
2076
|
+
/* the document sheet v2 (initiative c3-doc-sheet-v2): the outline, the copies in other tools, the Relations graph */
|
|
2077
|
+
@media (min-width:761px){.c3 .sheet.dw.dwx{width:min(1100px,calc(100% - 24px))}}
|
|
2078
|
+
.c3 .ds-acc{color:var(--acc)}
|
|
2079
|
+
.c3 .ds-rmain{display:grid;gap:var(--sp-3);min-width:0}
|
|
2080
|
+
.c3 .ds-rlay{display:grid;grid-template-columns:232px minmax(0,1fr);gap:var(--sp-4);align-items:start}
|
|
2081
|
+
.c3 .ds-rlay.nool{grid-template-columns:minmax(0,1fr)}
|
|
2082
|
+
.c3 .ds-rlay.nool .ds-ol{display:none}
|
|
2083
|
+
.c3 .ds-ol{position:sticky;top:var(--in-ds-oltop,0);max-height:var(--in-ds-olmax,60vh);overflow:auto;display:grid;gap:6px;align-content:start;padding:10px 8px 10px 0;border-right:1px solid var(--border);font-size:var(--fs-2)}
|
|
2084
|
+
.c3 .ds-ol .hd{display:flex;justify-content:space-between;align-items:baseline;gap:8px;padding-left:8px}
|
|
2085
|
+
.c3 .ds-ol .hd .ds-mono{font-size:var(--fs-1)}
|
|
2086
|
+
.c3 .ds-ol input{margin-left:8px;width:calc(100% - 8px);font:var(--fs-2) var(--mono);padding:5px 8px;border:1px solid var(--border);border-radius:6px;background:var(--background);color:var(--foreground)}
|
|
2087
|
+
.c3 .ds-ol ul{list-style:none;margin:0;padding:0;display:grid}
|
|
2088
|
+
.c3 .ds-ol li{display:grid;grid-template-columns:18px minmax(0,1fr);align-items:start}
|
|
2089
|
+
.c3 .ds-ol li.l2 .go{padding-left:18px}
|
|
2090
|
+
.c3 .ds-ol li.l3 .go{padding-left:32px}
|
|
2091
|
+
.c3 .ds-ol .tw{width:18px;min-height:26px;display:grid;place-items:center;color:var(--muted-foreground);background:none;border:0;padding:0;border-radius:6px}
|
|
2092
|
+
.c3 .ds-ol .tw[aria-expanded="true"] .ic{transform:rotate(90deg)}
|
|
2093
|
+
.c3 .ds-ol .go{display:flex;align-items:flex-start;gap:6px;width:100%;text-align:left;background:none;border:0;border-left:2px solid transparent;padding:4px 8px;border-radius:0;color:var(--muted-foreground);line-height:1.35;font:inherit;min-height:0;justify-content:flex-start}
|
|
2094
|
+
.c3 .ds-ol .go span{flex:1;min-width:0}
|
|
2095
|
+
.c3 .ds-ol li.l1 .go{color:var(--foreground)}
|
|
2096
|
+
.c3 .ds-ol li.on .go{color:var(--acc);border-left-color:var(--acc);background:color-mix(in oklab,var(--acc) 8%,transparent);font-weight:500}
|
|
2097
|
+
.c3 .ds-ol .mdot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-top:6px;flex:none}
|
|
2098
|
+
.c3 .ds-ol .mdot.w{background:var(--warning)}
|
|
2099
|
+
.c3 .ds-ol .mdot.p{background:var(--agent)}
|
|
2100
|
+
.c3 .ds-ol .key{display:flex;flex-wrap:wrap;gap:4px 10px;padding:6px 0 0 8px;border-top:1px solid var(--border);font-size:var(--fs-1)}
|
|
2101
|
+
.c3 .ds-ol .key span{display:inline-flex;gap:4px;align-items:center}
|
|
2102
|
+
.c3 .ds-ol .key .mdot{margin:0}
|
|
2103
|
+
.c3 .ds-ol .none{padding:4px 8px}
|
|
2104
|
+
.c3 .ds-olbtn{display:none}
|
|
2105
|
+
.c3 .ds-olbtn b{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}
|
|
2106
|
+
@media (hover:hover){.c3 .ds-ol .go:hover{background:var(--muted);color:var(--foreground)}.c3 .ds-gn:not(.x):not(.me):hover{border-color:var(--ring)}}
|
|
2107
|
+
@media (max-width:900px){
|
|
2108
|
+
.c3 .ds-rlay{grid-template-columns:minmax(0,1fr)}
|
|
2109
|
+
.c3 .ds-olhide{display:none}
|
|
2110
|
+
.c3 .ds-olbtn{display:inline-flex;max-width:100%}
|
|
2111
|
+
.c3 .ds-ol{display:none;z-index:3;max-height:60vh;border:1px solid var(--ring);border-radius:8px;background:var(--card);padding:10px 8px;box-shadow:0 8px 24px color-mix(in oklab,var(--foreground) 14%,transparent)}
|
|
2112
|
+
.c3 .ds-rlay.olopen .ds-ol,.c3 .ds-rlay.nool.olopen .ds-ol{display:grid}
|
|
2113
|
+
}
|
|
2114
|
+
.c3 .ds-sync{display:grid;gap:8px;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--card);min-width:0}
|
|
2115
|
+
.c3 .ds-sync .hd{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}
|
|
2116
|
+
.c3 .ds-sync ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
|
|
2117
|
+
.c3 .ds-sync li{display:grid;gap:4px;padding:10px;border:1px solid var(--border);border-radius:8px;background:var(--background);min-width:0}
|
|
2118
|
+
.c3 .ds-sync .l1{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
|
|
2119
|
+
.c3 .ds-sync .l1 .tag{margin-left:auto;display:inline-flex;gap:4px;align-items:center}
|
|
2120
|
+
.c3 .ds-sync p{margin:0;font-size:var(--fs-2);line-height:1.5}
|
|
2121
|
+
.c3 .ds-sync .ds-mono{font-size:var(--fs-1);overflow-wrap:anywhere}
|
|
2122
|
+
.c3 .ds-sync a.ds-btn{text-decoration:none}
|
|
2123
|
+
.c3 .ds-linkadd input{border-color:var(--border)}
|
|
2124
|
+
.c3 .ds-graph{position:relative;border:1px solid var(--border);border-radius:8px;padding:12px;background:var(--card);display:grid;gap:18px;min-width:0}
|
|
2125
|
+
.c3 .ds-gsvg{position:absolute;left:0;top:0;pointer-events:none;overflow:visible}
|
|
2126
|
+
.c3 .ds-gsvg .e{fill:none;stroke:var(--ring);stroke-width:1.5}
|
|
2127
|
+
.c3 .ds-gsvg .e.drift{stroke:var(--warning);stroke-dasharray:5 4}
|
|
2128
|
+
.c3 .ds-gsvg .e.conflict{stroke:var(--destructive);stroke-dasharray:5 4}
|
|
2129
|
+
.c3 .ds-gsvg .e.missing{stroke:var(--muted-foreground);stroke-dasharray:2 4}
|
|
2130
|
+
.c3 .ds-gsvg .e.ahead{stroke:var(--acc)}
|
|
2131
|
+
.c3 .ds-gtop{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;position:relative}
|
|
2132
|
+
.c3 .ds-gmid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr) minmax(0,1fr);gap:40px;align-items:center;position:relative}
|
|
2133
|
+
.c3 .ds-gcol{display:grid;gap:10px;min-width:0}
|
|
2134
|
+
.c3 .ds-gn{display:grid;gap:2px;text-align:left;padding:6px 10px;border:1px solid var(--border);border-radius:8px;background:var(--background);color:var(--foreground);min-width:0;position:relative;text-decoration:none;font:inherit;min-height:0;justify-content:stretch}
|
|
2135
|
+
.c3 .ds-gtop .ds-gn{min-width:140px;max-width:220px}
|
|
2136
|
+
.c3 .ds-gn b{font-weight:500;font-size:var(--fs-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
|
|
2137
|
+
.c3 .ds-gn small{font:var(--fs-1) var(--mono);color:var(--muted-foreground);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
|
|
2138
|
+
.c3 .ds-gn.drift small{color:var(--warning)}
|
|
2139
|
+
.c3 .ds-gn.conflict small{color:var(--destructive)}
|
|
2140
|
+
.c3 .ds-gn.ahead small{color:var(--acc)}
|
|
2141
|
+
.c3 .ds-gn.me{border-color:var(--acc);border-width:1.5px;background:color-mix(in oklab,var(--acc) 10%,var(--background));padding:10px 12px}
|
|
2142
|
+
.c3 .ds-gmore{font-size:var(--fs-1)}
|
|
2143
|
+
.c3 .ds-graph .key{display:flex;flex-wrap:wrap;gap:4px 14px;align-items:center;font-size:var(--fs-1);position:relative}
|
|
2144
|
+
.c3 .ds-graph .key span{display:inline-flex;gap:6px;align-items:center}
|
|
2145
|
+
.c3 .ds-graph .key .ln{width:14px;height:2px;display:inline-block;background:var(--ring)}
|
|
2146
|
+
.c3 .ds-graph .key .ln.drift{background:var(--warning)}
|
|
2147
|
+
.c3 .ds-graph .key .ln.ahead{background:var(--acc)}
|
|
2148
|
+
.c3 .ds-graph .key .chip2{margin-left:auto}
|
|
2149
|
+
.c3 .ds-rel{list-style:none;margin:0;padding:0;display:grid;gap:4px}
|
|
2150
|
+
.c3 .ds-rel li{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center;padding:6px 0;border-bottom:1px solid var(--border)}
|
|
2151
|
+
.c3 .ds-rlk{display:grid;gap:2px;text-align:left;background:none;border:0;padding:0;color:var(--foreground);font:inherit;text-decoration:none;min-height:0;justify-content:start}
|
|
2152
|
+
.c3 .ds-rlk small{font:var(--fs-1) var(--mono);color:var(--muted-foreground)}
|
|
2153
|
+
@media (max-width:640px){
|
|
2154
|
+
.c3 .ds-gmid{gap:16px}
|
|
2155
|
+
.c3 .ds-graph{padding:8px}
|
|
2156
|
+
}
|
|
2157
|
+
@media (pointer:coarse){.c3 .ds-ol .go{min-height:44px}.c3 .ds-ol .tw{min-height:44px}.c3 .ds-gn{min-height:44px}}
|
|
2158
|
+
|
|
2077
2159
|
/* the card before a meeting (initiative c3-meeting-card) */
|
|
2078
2160
|
.c3 .cal3-ctx .cal3-p{margin:0;font-size:var(--fs-2);line-height:1.5;color:var(--foreground)}
|
|
2079
2161
|
.c3 .cal3-ctx.cal3-gist{padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--muted)}
|
|
2080
2162
|
.c3 .cal3-ctx h4{display:flex;align-items:center;gap:6px}
|
|
2163
|
+
|
|
2164
|
+
/* what a meeting is about: the level switch, a board's sprint and the Portfolio's boards (initiative c3-meeting-board) */
|
|
2165
|
+
.c3 .cal3-level{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center}
|
|
2166
|
+
.c3 .cal3-level .cal3-note{margin:0}
|
|
2167
|
+
.c3 .cal3-level select{font:500 var(--fs-2) var(--mono);padding:4px 8px;border:1px solid var(--border);border-radius:6px;background:var(--background);color:var(--foreground)}
|
|
2168
|
+
.c3 .cal3-ctx h4 .cal3-h4r{font-weight:400;margin-left:auto}
|
|
2169
|
+
.c3 .cal3-bar{display:flex;height:8px;border-radius:6px;overflow:hidden;background:var(--muted)}
|
|
2170
|
+
.c3 .cal3-bar i{display:block;min-width:2px;flex:var(--cal3-n,0)}
|
|
2171
|
+
.c3 .cal3-bar i.d{background:var(--foreground)}
|
|
2172
|
+
.c3 .cal3-bar i.p{background:var(--acc);opacity:.55}
|
|
2173
|
+
.c3 .cal3-bar i.t{background:var(--border)}
|
|
2174
|
+
.c3 .cal3-counts{gap:10px;font-size:var(--fs-1)}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"_comment": "Initiative c3-doc-sheet-v2: the console3 document sheet outline, the copies in other tools, and the Relations graph. The browser suite runs the done-criteria.",
|
|
3
|
+
"modules": [],
|
|
4
|
+
"panels": ["pm-c3-doc-sheet-v2-test.js"],
|
|
5
|
+
"seconds": { "pm-c3-doc-sheet-v2-test.js": 60 }
|
|
6
|
+
}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
{
|
|
2
|
+
"_comment": "Initiative c3-meeting-board: what a meeting is about (the Portfolio, a board or an initiative), the level switch, a board's sprint and the Portfolio's boards on the Calendar's meeting card.",
|
|
3
|
+
"panels": ["pm-c3-meeting-board-test.js"],
|
|
4
|
+
"seconds": { "pm-c3-meeting-board-test.js": 45 }
|
|
5
|
+
}
|