@caelo-cms/shared 0.11.6 → 0.11.7
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/change-journal.d.ts.map +1 -1
- package/dist/change-journal.js +1 -0
- package/dist/change-journal.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/stage-status.d.ts +89 -0
- package/dist/stage-status.d.ts.map +1 -0
- package/dist/stage-status.js +101 -0
- package/dist/stage-status.js.map +1 -0
- package/dist/version.d.ts +2 -2
- package/dist/version.js +1 -1
- package/package.json +1 -1
- package/src/change-journal.ts +2 -0
- package/src/index.ts +1 -0
- package/src/stage-status.test.ts +75 -0
- package/src/stage-status.ts +112 -0
- package/src/version.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"change-journal.d.ts","sourceRoot":"","sources":["../src/change-journal.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,+EAA+E;AAC/E,eAAO,MAAM,aAAa,mdAkChB,CAAC;AAEX,uDAAuD;AACvD,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC;AAIzD,iCAAiC;AACjC,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,WAAW,CAEjE;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,WAAW,GAAG,KAAK,GAAG,UAAU,GAAG,QAAQ,CAAC;AAExD,+DAA+D;AAC/D,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,qEAAqE;IACrE,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,0EAA0E;IAC1E,QAAQ,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,mFAAmF;IACnF,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,qDAAqD;IACrD,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,iDAAiD;IACjD,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B;AAeD;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAqDrE,CAAC;AAWF;;;GAGG;AACH,eAAO,MAAM,qBAAqB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"change-journal.d.ts","sourceRoot":"","sources":["../src/change-journal.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,+EAA+E;AAC/E,eAAO,MAAM,aAAa,mdAkChB,CAAC;AAEX,uDAAuD;AACvD,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC;AAIzD,iCAAiC;AACjC,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,WAAW,CAEjE;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,WAAW,GAAG,KAAK,GAAG,UAAU,GAAG,QAAQ,CAAC;AAExD,+DAA+D;AAC/D,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,qEAAqE;IACrE,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,0EAA0E;IAC1E,QAAQ,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,mFAAmF;IACnF,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,qDAAqD;IACrD,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,iDAAiD;IACjD,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B;AAeD;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAqDrE,CAAC;AAWF;;;GAGG;AACH,eAAO,MAAM,qBAAqB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAmIlE,CAAC;AAEF,6EAA6E;AAC7E,eAAO,MAAM,eAAe,yBAAyB,CAAC;AAEtD,iFAAiF;AACjF,eAAO,MAAM,mBAAmB,sBAAsB,CAAC"}
|
package/dist/change-journal.js
CHANGED
|
@@ -206,6 +206,7 @@ export const JOURNAL_EXEMPT_TABLES = {
|
|
|
206
206
|
redirect_sync_state: RUNTIME,
|
|
207
207
|
redirect_changes: "which transactions changed redirects, folded by the redirect sync; the journaled redirects table is the source",
|
|
208
208
|
static_bakes: "derived build output of plugin-baked regions",
|
|
209
|
+
content_instance_refs: "derived (synchronous, #1287): the ids and media slugs each content instance's values reference, maintained by triggers on the journaled content_instances; rebuilt by content_instances.rebuild_refs",
|
|
209
210
|
plugin_data_build_state: RUNTIME,
|
|
210
211
|
plugin_data_stale_pages: "derived: which pages' baked plugin regions are stale",
|
|
211
212
|
plugin_runtime: RUNTIME,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"change-journal.js","sourceRoot":"","sources":["../src/change-journal.ts"],"names":[],"mappings":"AAAA,mCAAmC;AAEnC;;;;;;;;;;;;;;;;;;GAkBG;AAEH,+EAA+E;AAC/E,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,MAAM;IACN,YAAY;IACZ,UAAU;IACV,aAAa;IACb,qBAAqB;IACrB,QAAQ;IACR,UAAU;IACV,iBAAiB;IACjB,QAAQ;IACR,eAAe;IACf,eAAe;IACf,kBAAkB;IAClB,MAAM;IACN,WAAW;IACX,WAAW;IACX,OAAO;IACP,OAAO;IACP,eAAe;IACf,YAAY;IACZ,MAAM;IACN,UAAU;IACV,QAAQ;IACR,eAAe;IACf,eAAe;IACf,aAAa;IACb,OAAO;IACP,QAAQ;IACR,qBAAqB;IACrB,cAAc;IACd,aAAa;IACb,YAAY;IACZ,gBAAgB;IAChB,UAAU;CACF,CAAC;AAKX,MAAM,QAAQ,GAAwB,IAAI,GAAG,CAAC,aAAa,CAAC,CAAC;AAE7D,iCAAiC;AACjC,MAAM,UAAU,aAAa,CAAC,KAAa;IACzC,OAAO,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAC7B,CAAC;AAkCD,MAAM,GAAG,GAAG,CACV,IAAiB,EACjB,GAAW,EACX,IAAuB,EACvB,QAAuE,EAAE,EACzD,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC;AAElE,MAAM,QAAQ,GAAG,CACf,IAAiB,EACjB,GAAW,EACX,QAA4D,EAAE,EAC9C,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC;AAE/E;;;;GAIG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAA6C;IACxE,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC;IAC9D,UAAU,EAAE,GAAG,CAAC,YAAY,EAAE,SAAS,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;IAC3E,SAAS,EAAE,GAAG,CAAC,UAAU,EAAE,SAAS,EAAE,CAAC,SAAS,CAAC,CAAC;IAClD,YAAY,EAAE,GAAG,CAAC,aAAa,EAAE,SAAS,EAAE,CAAC,SAAS,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC;IAClF,mBAAmB,EAAE,GAAG,CAAC,qBAAqB,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;IACpF,OAAO,EAAE,GAAG,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC;IAClE,SAAS,EAAE,GAAG,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC;IACtE,eAAe,EAAE,GAAG,CAAC,iBAAiB,EAAE,aAAa,EAAE,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;IAC/E,OAAO,EAAE,GAAG,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC;IAClE,aAAa,EAAE,GAAG,CAAC,eAAe,EAAE,WAAW,EAAE,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IACvE,cAAc,EAAE,GAAG,CAAC,eAAe,EAAE,WAAW,EAAE,CAAC,WAAW,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC;IAC1F,iBAAiB,EAAE,GAAG,CAAC,kBAAkB,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE;QACvD,MAAM,EAAE,gBAAgB;QACxB,MAAM,EAAE,WAAW;KACpB,CAAC;IACF,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC;IAC9D,UAAU,EAAE,GAAG,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC;IACxE,UAAU,EAAE,GAAG,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC;IACxE,MAAM,EAAE,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC;IAClC,YAAY,EAAE,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC;IACxC,cAAc,EAAE,GAAG,CAAC,eAAe,EAAE,UAAU,EAAE,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IACzE,WAAW,EAAE,GAAG,CAAC,YAAY,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;IACpE,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC;IACtC,SAAS,EAAE,GAAG,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC;IACxC,OAAO,EAAE,GAAG,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC;IACpC,aAAa,EAAE,GAAG,CAAC,eAAe,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC;IACjD,aAAa,EAAE,GAAG,CAAC,eAAe,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC;IACjD,cAAc,EAAE,GAAG,CAAC,aAAa,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC;IAChD,MAAM,EAAE,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC;IAClC,OAAO,EAAE,GAAG,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC;IACpC,4BAA4B,EAAE,GAAG,CAAC,qBAAqB,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC;IAC/F,wBAAwB,EAAE,GAAG,CAAC,cAAc,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC;IACpF,oBAAoB,EAAE,GAAG,CAAC,aAAa,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC;IAE5F,cAAc,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE;IAC7E,cAAc,EAAE,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAC3C,qBAAqB,EAAE,QAAQ,CAAC,aAAa,EAAE,SAAS,CAAC;IACzD,6BAA6B,EAAE,QAAQ,CAAC,qBAAqB,EAAE,wBAAwB,EAAE;QACvF,MAAM,EAAE,SAAS;KAClB,CAAC;IACF,gBAAgB,EAAE,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC;IACjD,kBAAkB,EAAE,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAC;IACvD,uBAAuB,EAAE,QAAQ,CAAC,eAAe,EAAE,WAAW,CAAC;IAC/D,0BAA0B,EAAE,QAAQ,CAAC,kBAAkB,EAAE,qBAAqB,CAAC;IAC/E,cAAc,EAAE,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAC3C,mBAAmB,EAAE,QAAQ,CAAC,WAAW,EAAE,cAAc,CAAC;IAC1D,mBAAmB,EAAE,QAAQ,CAAC,WAAW,EAAE,cAAc,CAAC;IAC1D,eAAe,EAAE,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC9C,oBAAoB,EAAE,QAAQ,CAAC,YAAY,EAAE,QAAQ,EAAE;QACrD,MAAM,EAAE,YAAY;QACpB,MAAM,EAAE,WAAW;KACpB,CAAC;CACH,CAAC;AAEF,MAAM,KAAK,GAAG,kFAAkF,CAAC;AACjG,MAAM,GAAG,GAAG,2DAA2D,CAAC;AACxE,MAAM,KAAK,GAAG,wEAAwE,CAAC;AACvF,MAAM,QAAQ,GAAG,kEAAkE,CAAC;AACpF,MAAM,OAAO,GAAG,4DAA4D,CAAC;AAC7E,MAAM,OAAO,GAAG,sEAAsE,CAAC;AACvF,MAAM,cAAc,GAClB,6IAA6I,CAAC;AAEhJ;;;GAGG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAqC;IACrE,oBAAoB,EAAE,wCAAwC;IAC9D,cAAc,EAAE,oBAAoB;IACpC,sBAAsB,EAAE,2CAA2C;IACnE,gBAAgB,EAAE,gCAAgC;IAClD,aAAa,EAAE,OAAO;IACtB,kBAAkB,EAAE,cAAc;IAClC,oBAAoB,EAAE,cAAc;IACpC,oBAAoB,EAAE,OAAO;IAE7B,MAAM,EAAE,QAAQ;IAChB,KAAK,EAAE,QAAQ;IACf,KAAK,EAAE,QAAQ;IACf,WAAW,EAAE,QAAQ;IACrB,gBAAgB,EAAE,QAAQ;IAC1B,UAAU,EAAE,QAAQ;IACpB,QAAQ,EAAE,QAAQ;IAClB,qBAAqB,EAAE,QAAQ;IAC/B,sBAAsB,EAAE,QAAQ;IAChC,UAAU,EAAE,QAAQ;IACpB,sBAAsB,EAAE,QAAQ;IAChC,wBAAwB,EAAE,QAAQ;IAClC,sBAAsB,EAAE,QAAQ;IAChC,qBAAqB,EAAE,QAAQ;IAC/B,mBAAmB,EACjB,6EAA6E;IAC/E,gBAAgB,EAAE,0EAA0E;IAC5F,kBAAkB,EAAE,+DAA+D;IAEnF,YAAY,EAAE,GAAG;IACjB,QAAQ,EAAE,GAAG;IACb,cAAc,EAAE,GAAG;IACnB,qBAAqB,EAAE,GAAG;IAC1B,aAAa,EAAE,GAAG;IAClB,iBAAiB,EAAE,GAAG;IACtB,sBAAsB,EAAE,GAAG;IAC3B,aAAa,EAAE,GAAG;IAClB,cAAc,EAAE,GAAG;IACnB,yBAAyB,EAAE,GAAG;IAC9B,mBAAmB,EAAE,GAAG;IACxB,eAAe,EACb,6FAA6F;IAE/F,aAAa,EACX,oIAAoI;IACtI,aAAa,EAAE,mDAAmD;IAClE,iBAAiB,EAAE,qCAAqC;IACxD,eAAe,EAAE,mEAAmE;IACpF,mBAAmB,EAAE,6DAA6D;IAClF,gBAAgB,EAAE,KAAK;IACvB,iBAAiB,EACf,oFAAoF;IACtF,mBAAmB,EAAE,GAAG;IACxB,yBAAyB,EACvB,sGAAsG;IACxG,yBAAyB,EAAE,gEAAgE;IAC3F,aAAa,EAAE,qCAAqC;IACpD,qBAAqB,EAAE,qCAAqC;IAC5D,qBAAqB,EAAE,uCAAuC;IAC9D,6BAA6B,EAAE,8DAA8D;IAC7F,UAAU,EAAE,mFAAmF;IAC/F,cAAc,EAAE,+DAA+D;IAC/E,cAAc,EAAE,mEAAmE;IACnF,mBAAmB,EACjB,qFAAqF;IACvF,aAAa,EAAE,KAAK;IACpB,aAAa,EAAE,KAAK;IACpB,wBAAwB,EAAE,KAAK;IAC/B,kBAAkB,EAAE,uCAAuC;IAC3D,mBAAmB,EAAE,oEAAoE;IACzF,2BAA2B,EACzB,qEAAqE;IACvE,2BAA2B,EAAE,KAAK;IAElC,YAAY,EAAE,mEAAmE;IACjF,UAAU,EAAE,6DAA6D;IACzE,UAAU,EAAE,6DAA6D;IACzE,YAAY,EAAE,0CAA0C;IACxD,kBAAkB,EAAE,iCAAiC;IACrD,cAAc,EACZ,2GAA2G;IAC7G,oBAAoB,EAAE,iDAAiD;IACvE,mBAAmB,EAAE,OAAO;IAC5B,cAAc,EAAE,qDAAqD;IACrE,WAAW,EAAE,iEAAiE;IAC9E,mBAAmB,EAAE,OAAO;IAC5B,gBAAgB,EACd,gHAAgH;IAClH,YAAY,EAAE,8CAA8C;IAC5D,uBAAuB,EAAE,OAAO;IAChC,uBAAuB,EAAE,sDAAsD;IAC/E,cAAc,EAAE,OAAO;IACvB,wBAAwB,EAAE,wBAAwB;IAClD,wBAAwB,EAAE,wBAAwB;IAClD,0BAA0B,EACxB,wEAAwE;IAC1E,wBAAwB,EAAE,mEAAmE;IAC7F,qBAAqB,EAAE,OAAO;IAC9B,6BAA6B,EAAE,OAAO;IACtC,sBAAsB,EAAE,yDAAyD;IACjF,wBAAwB,EAAE,0CAA0C;IACpE,yBAAyB,EAAE,OAAO;IAElC,WAAW,EAAE,oEAAoE;IACjF,YAAY,EAAE,0DAA0D;IACxE,gBAAgB,EAAE,8BAA8B;IAChD,kBAAkB,EAAE,oEAAoE;IACxF,mBAAmB,EAAE,gCAAgC;IACrD,iBAAiB,EAAE,yDAAyD;IAC5E,mBAAmB,EAAE,iEAAiE;IACtF,qBAAqB,EAAE,KAAK;IAC5B,eAAe,EAAE,KAAK;IAEtB,4BAA4B,EAAE,KAAK;IACnC,sBAAsB,EAAE,KAAK;IAC7B,sBAAsB,EAAE,KAAK;IAC7B,4BAA4B,EAAE,KAAK;IACnC,sBAAsB,EAAE,KAAK;IAC7B,yBAAyB,EAAE,KAAK;IAChC,8BAA8B,EAAE,KAAK;IACrC,sBAAsB,EAAE,KAAK;IAC7B,uBAAuB,EAAE,KAAK;IAC9B,oBAAoB,EAAE,KAAK;IAC3B,6BAA6B,EAAE,KAAK;IACpC,+BAA+B,EAAE,KAAK;IACtC,wBAAwB,EAAE,KAAK;IAC/B,qBAAqB,EAAE,KAAK;IAC5B,6BAA6B,EAAE,KAAK;IACpC,oBAAoB,EAAE,KAAK;CAC5B,CAAC;AAEF,6EAA6E;AAC7E,MAAM,CAAC,MAAM,eAAe,GAAG,sBAAsB,CAAC;AAEtD,iFAAiF;AACjF,MAAM,CAAC,MAAM,mBAAmB,GAAG,mBAAmB,CAAC"}
|
|
1
|
+
{"version":3,"file":"change-journal.js","sourceRoot":"","sources":["../src/change-journal.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -66,6 +66,7 @@ export * from "./seo.js";
|
|
|
66
66
|
export * from "./skills.js";
|
|
67
67
|
export * from "./snapshots.js";
|
|
68
68
|
export * from "./source-text-transport.js";
|
|
69
|
+
export * from "./stage-status.js";
|
|
69
70
|
export * from "./staging-gate.js";
|
|
70
71
|
export * from "./static-cache-policy.js";
|
|
71
72
|
export * from "./static-security-headers.js";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -67,6 +67,7 @@ export * from "./seo.js";
|
|
|
67
67
|
export * from "./skills.js";
|
|
68
68
|
export * from "./snapshots.js";
|
|
69
69
|
export * from "./source-text-transport.js";
|
|
70
|
+
export * from "./stage-status.js";
|
|
70
71
|
export * from "./staging-gate.js";
|
|
71
72
|
export * from "./static-cache-policy.js";
|
|
72
73
|
export * from "./static-security-headers.js";
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Issue #1288 — where a Stage's build stands, in one shape for every
|
|
3
|
+
* surface: the `deploy.stage_status` op returns it, the `get_stage_status`
|
|
4
|
+
* AI / MCP tool and the "still running" answers of `stage_changes` and
|
|
5
|
+
* `get_quality_audit` print it, and Settings → Deployments and the Live
|
|
6
|
+
* Edit Staging menu show it.
|
|
7
|
+
*
|
|
8
|
+
* The time left is an estimate with its basis named, never a default
|
|
9
|
+
* number (CLAUDE.md §2): `eta` is null with `etaUnavailable` saying why
|
|
10
|
+
* when nothing measured supports one.
|
|
11
|
+
*/
|
|
12
|
+
import { z } from "zod";
|
|
13
|
+
/** Where a Stage run is: waiting, its three steps, or its end. */
|
|
14
|
+
export declare const stagePhaseSchema: z.ZodEnum<{
|
|
15
|
+
succeeded: "succeeded";
|
|
16
|
+
failed: "failed";
|
|
17
|
+
queued: "queued";
|
|
18
|
+
preparing: "preparing";
|
|
19
|
+
building: "building";
|
|
20
|
+
publishing: "publishing";
|
|
21
|
+
}>;
|
|
22
|
+
export type StagePhase = z.infer<typeof stagePhaseSchema>;
|
|
23
|
+
/**
|
|
24
|
+
* What an estimate of the time left rests on:
|
|
25
|
+
* - `this_run_rate`: the pages per second this run has built so far;
|
|
26
|
+
* - `last_successful_run`: how long the recent successful Stages took.
|
|
27
|
+
*/
|
|
28
|
+
export declare const stageEtaBasisSchema: z.ZodEnum<{
|
|
29
|
+
this_run_rate: "this_run_rate";
|
|
30
|
+
last_successful_run: "last_successful_run";
|
|
31
|
+
}>;
|
|
32
|
+
export type StageEtaBasis = z.infer<typeof stageEtaBasisSchema>;
|
|
33
|
+
/** An estimate of the time a running Stage still needs. */
|
|
34
|
+
export declare const stageEtaSchema: z.ZodObject<{
|
|
35
|
+
remainingMs: z.ZodNumber;
|
|
36
|
+
basis: z.ZodEnum<{
|
|
37
|
+
this_run_rate: "this_run_rate";
|
|
38
|
+
last_successful_run: "last_successful_run";
|
|
39
|
+
}>;
|
|
40
|
+
includesPublish: z.ZodBoolean;
|
|
41
|
+
}, z.core.$strip>;
|
|
42
|
+
export type StageEta = z.infer<typeof stageEtaSchema>;
|
|
43
|
+
/** One Stage run (a staging site build) as every status surface shows it. */
|
|
44
|
+
export declare const stageStatusRunSchema: z.ZodObject<{
|
|
45
|
+
runId: z.ZodString;
|
|
46
|
+
targetName: z.ZodString;
|
|
47
|
+
status: z.ZodEnum<{
|
|
48
|
+
running: "running";
|
|
49
|
+
succeeded: "succeeded";
|
|
50
|
+
failed: "failed";
|
|
51
|
+
queued: "queued";
|
|
52
|
+
}>;
|
|
53
|
+
phase: z.ZodEnum<{
|
|
54
|
+
succeeded: "succeeded";
|
|
55
|
+
failed: "failed";
|
|
56
|
+
queued: "queued";
|
|
57
|
+
preparing: "preparing";
|
|
58
|
+
building: "building";
|
|
59
|
+
publishing: "publishing";
|
|
60
|
+
}>;
|
|
61
|
+
pagesDone: z.ZodNullable<z.ZodNumber>;
|
|
62
|
+
pagesTotal: z.ZodNullable<z.ZodNumber>;
|
|
63
|
+
startedAt: z.ZodString;
|
|
64
|
+
finishedAt: z.ZodNullable<z.ZodString>;
|
|
65
|
+
elapsedMs: z.ZodNumber;
|
|
66
|
+
error: z.ZodNullable<z.ZodString>;
|
|
67
|
+
failedPhase: z.ZodNullable<z.ZodString>;
|
|
68
|
+
eta: z.ZodNullable<z.ZodObject<{
|
|
69
|
+
remainingMs: z.ZodNumber;
|
|
70
|
+
basis: z.ZodEnum<{
|
|
71
|
+
this_run_rate: "this_run_rate";
|
|
72
|
+
last_successful_run: "last_successful_run";
|
|
73
|
+
}>;
|
|
74
|
+
includesPublish: z.ZodBoolean;
|
|
75
|
+
}, z.core.$strip>>;
|
|
76
|
+
etaUnavailable: z.ZodNullable<z.ZodString>;
|
|
77
|
+
}, z.core.$strip>;
|
|
78
|
+
export type StageStatusRun = z.infer<typeof stageStatusRunSchema>;
|
|
79
|
+
/** A duration for people: "45 s", "1 min 40 s", "12 min". */
|
|
80
|
+
export declare function formatStageDuration(ms: number): string;
|
|
81
|
+
/** "about 1 min 40 s left (from this run's pace)", or why there is no estimate. */
|
|
82
|
+
export declare function describeStageEta(run: Pick<StageStatusRun, "eta" | "etaUnavailable">): string;
|
|
83
|
+
/**
|
|
84
|
+
* One line for people and the AI, e.g. "Building pages 812 of 1,904 —
|
|
85
|
+
* about 1 min 40 s left (from this run's pace)" or "Failed in generator
|
|
86
|
+
* after 1 min 34 s: <reason>".
|
|
87
|
+
*/
|
|
88
|
+
export declare function describeStageRun(run: StageStatusRun): string;
|
|
89
|
+
//# sourceMappingURL=stage-status.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stage-status.d.ts","sourceRoot":"","sources":["../src/stage-status.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,kEAAkE;AAClE,eAAO,MAAM,gBAAgB;;;;;;;EAO3B,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D;;;;GAIG;AACH,eAAO,MAAM,mBAAmB;;;EAAmD,CAAC;AACpF,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,2DAA2D;AAC3D,eAAO,MAAM,cAAc;;;;;;;iBAKzB,CAAC;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAEtD,6EAA6E;AAC7E,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAkB/B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE,6DAA6D;AAC7D,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAOtD;AAOD,mFAAmF;AACnF,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,IAAI,CAAC,cAAc,EAAE,KAAK,GAAG,gBAAgB,CAAC,GAAG,MAAM,CAM5F;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,cAAc,GAAG,MAAM,CAgB5D"}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
// SPDX-License-Identifier: MPL-2.0
|
|
2
|
+
/**
|
|
3
|
+
* Issue #1288 — where a Stage's build stands, in one shape for every
|
|
4
|
+
* surface: the `deploy.stage_status` op returns it, the `get_stage_status`
|
|
5
|
+
* AI / MCP tool and the "still running" answers of `stage_changes` and
|
|
6
|
+
* `get_quality_audit` print it, and Settings → Deployments and the Live
|
|
7
|
+
* Edit Staging menu show it.
|
|
8
|
+
*
|
|
9
|
+
* The time left is an estimate with its basis named, never a default
|
|
10
|
+
* number (CLAUDE.md §2): `eta` is null with `etaUnavailable` saying why
|
|
11
|
+
* when nothing measured supports one.
|
|
12
|
+
*/
|
|
13
|
+
import { z } from "zod";
|
|
14
|
+
/** Where a Stage run is: waiting, its three steps, or its end. */
|
|
15
|
+
export const stagePhaseSchema = z.enum([
|
|
16
|
+
"queued",
|
|
17
|
+
"preparing",
|
|
18
|
+
"building",
|
|
19
|
+
"publishing",
|
|
20
|
+
"succeeded",
|
|
21
|
+
"failed",
|
|
22
|
+
]);
|
|
23
|
+
/**
|
|
24
|
+
* What an estimate of the time left rests on:
|
|
25
|
+
* - `this_run_rate`: the pages per second this run has built so far;
|
|
26
|
+
* - `last_successful_run`: how long the recent successful Stages took.
|
|
27
|
+
*/
|
|
28
|
+
export const stageEtaBasisSchema = z.enum(["this_run_rate", "last_successful_run"]);
|
|
29
|
+
/** An estimate of the time a running Stage still needs. */
|
|
30
|
+
export const stageEtaSchema = z.object({
|
|
31
|
+
remainingMs: z.number().int().nonnegative(),
|
|
32
|
+
basis: stageEtaBasisSchema,
|
|
33
|
+
/** False when no successful Stage recorded how long publishing takes: the estimate covers the pages only. */
|
|
34
|
+
includesPublish: z.boolean(),
|
|
35
|
+
});
|
|
36
|
+
/** One Stage run (a staging site build) as every status surface shows it. */
|
|
37
|
+
export const stageStatusRunSchema = z.object({
|
|
38
|
+
runId: z.string(),
|
|
39
|
+
targetName: z.string(),
|
|
40
|
+
status: z.enum(["queued", "running", "succeeded", "failed"]),
|
|
41
|
+
phase: stagePhaseSchema,
|
|
42
|
+
pagesDone: z.number().int().nonnegative().nullable(),
|
|
43
|
+
pagesTotal: z.number().int().nonnegative().nullable(),
|
|
44
|
+
startedAt: z.string(),
|
|
45
|
+
finishedAt: z.string().nullable(),
|
|
46
|
+
/** Run time so far (running) or in total (finished). */
|
|
47
|
+
elapsedMs: z.number().int().nonnegative(),
|
|
48
|
+
/** The failure reason of a failed run. */
|
|
49
|
+
error: z.string().nullable(),
|
|
50
|
+
/** The step a failed run stopped in (`generator`, `publish` …), when recorded. */
|
|
51
|
+
failedPhase: z.string().nullable(),
|
|
52
|
+
eta: stageEtaSchema.nullable(),
|
|
53
|
+
/** Why there is no estimate for a queued or running run; null otherwise. */
|
|
54
|
+
etaUnavailable: z.string().nullable(),
|
|
55
|
+
});
|
|
56
|
+
/** A duration for people: "45 s", "1 min 40 s", "12 min". */
|
|
57
|
+
export function formatStageDuration(ms) {
|
|
58
|
+
const s = Math.max(0, Math.round(ms / 1000));
|
|
59
|
+
if (s < 60)
|
|
60
|
+
return `${s} s`;
|
|
61
|
+
const min = Math.floor(s / 60);
|
|
62
|
+
const rest = s % 60;
|
|
63
|
+
if (min >= 10 || rest === 0)
|
|
64
|
+
return `${min} min`;
|
|
65
|
+
return `${min} min ${rest} s`;
|
|
66
|
+
}
|
|
67
|
+
const BASIS_TEXT = {
|
|
68
|
+
this_run_rate: "from this run's pace",
|
|
69
|
+
last_successful_run: "from recent successful Stages",
|
|
70
|
+
};
|
|
71
|
+
/** "about 1 min 40 s left (from this run's pace)", or why there is no estimate. */
|
|
72
|
+
export function describeStageEta(run) {
|
|
73
|
+
if (run.eta) {
|
|
74
|
+
const pagesOnly = run.eta.includesPublish ? "" : ", pages only — publishing time unknown";
|
|
75
|
+
return `about ${formatStageDuration(run.eta.remainingMs)} left (${BASIS_TEXT[run.eta.basis]}${pagesOnly})`;
|
|
76
|
+
}
|
|
77
|
+
return `no estimate: ${run.etaUnavailable ?? "nothing measured yet"}`;
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* One line for people and the AI, e.g. "Building pages 812 of 1,904 —
|
|
81
|
+
* about 1 min 40 s left (from this run's pace)" or "Failed in generator
|
|
82
|
+
* after 1 min 34 s: <reason>".
|
|
83
|
+
*/
|
|
84
|
+
export function describeStageRun(run) {
|
|
85
|
+
const n = (v) => v.toLocaleString("en-US");
|
|
86
|
+
switch (run.phase) {
|
|
87
|
+
case "queued":
|
|
88
|
+
return `Queued — ${describeStageEta(run)}`;
|
|
89
|
+
case "preparing":
|
|
90
|
+
return `Preparing the build (${formatStageDuration(run.elapsedMs)} so far) — ${describeStageEta(run)}`;
|
|
91
|
+
case "building":
|
|
92
|
+
return `Building pages ${n(run.pagesDone ?? 0)} of ${n(run.pagesTotal ?? 0)} — ${describeStageEta(run)}`;
|
|
93
|
+
case "publishing":
|
|
94
|
+
return `All ${n(run.pagesTotal ?? 0)} pages built, publishing to staging — ${describeStageEta(run)}`;
|
|
95
|
+
case "succeeded":
|
|
96
|
+
return `Succeeded in ${formatStageDuration(run.elapsedMs)}${run.pagesTotal === null ? "" : ` (${n(run.pagesTotal)} pages)`}`;
|
|
97
|
+
case "failed":
|
|
98
|
+
return `Failed${run.failedPhase ? ` in ${run.failedPhase}` : ""} after ${formatStageDuration(run.elapsedMs)}: ${run.error ?? "no reason recorded"}`;
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
//# sourceMappingURL=stage-status.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stage-status.js","sourceRoot":"","sources":["../src/stage-status.ts"],"names":[],"mappings":"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"}
|
package/dist/version.d.ts
CHANGED
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
* Format: SemVer 2.0.0. Pre-1.0 minor bumps are breaking; post-1.0
|
|
20
20
|
* follow standard SemVer.
|
|
21
21
|
*/
|
|
22
|
-
export declare const CAELO_VERSION = "0.11.
|
|
22
|
+
export declare const CAELO_VERSION = "0.11.7";
|
|
23
23
|
/**
|
|
24
24
|
* Deprecated alias for back-compat — early P17 work spelled this
|
|
25
25
|
* `CALEO_VERSION` (typo of "Caelo"). New code should import
|
|
@@ -31,7 +31,7 @@ export declare const CAELO_VERSION = "0.11.6";
|
|
|
31
31
|
*
|
|
32
32
|
* @deprecated use CAELO_VERSION
|
|
33
33
|
*/
|
|
34
|
-
export declare const CALEO_VERSION = "0.11.
|
|
34
|
+
export declare const CALEO_VERSION = "0.11.7";
|
|
35
35
|
/**
|
|
36
36
|
* Parsed shape — major/minor/patch + optional pre-release tag.
|
|
37
37
|
* Stable interface for callers that need to feature-gate (rare —
|
package/dist/version.js
CHANGED
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
* Format: SemVer 2.0.0. Pre-1.0 minor bumps are breaking; post-1.0
|
|
21
21
|
* follow standard SemVer.
|
|
22
22
|
*/
|
|
23
|
-
export const CAELO_VERSION = "0.11.
|
|
23
|
+
export const CAELO_VERSION = "0.11.7";
|
|
24
24
|
/**
|
|
25
25
|
* Deprecated alias for back-compat — early P17 work spelled this
|
|
26
26
|
* `CALEO_VERSION` (typo of "Caelo"). New code should import
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@caelo-cms/shared",
|
|
3
|
-
"version": "0.11.
|
|
3
|
+
"version": "0.11.7",
|
|
4
4
|
"private": false,
|
|
5
5
|
"license": "MPL-2.0",
|
|
6
6
|
"description": "Shared Zod schemas + types + the two-pass HTML composer used by every Caelo CMS workspace package. Stable enough for plugin authors and embedders to depend on directly.",
|
package/src/change-journal.ts
CHANGED
|
@@ -274,6 +274,8 @@ export const JOURNAL_EXEMPT_TABLES: Readonly<Record<string, string>> = {
|
|
|
274
274
|
redirect_changes:
|
|
275
275
|
"which transactions changed redirects, folded by the redirect sync; the journaled redirects table is the source",
|
|
276
276
|
static_bakes: "derived build output of plugin-baked regions",
|
|
277
|
+
content_instance_refs:
|
|
278
|
+
"derived (synchronous, #1287): the ids and media slugs each content instance's values reference, maintained by triggers on the journaled content_instances; rebuilt by content_instances.rebuild_refs",
|
|
277
279
|
plugin_data_build_state: RUNTIME,
|
|
278
280
|
plugin_data_stale_pages: "derived: which pages' baked plugin regions are stale",
|
|
279
281
|
plugin_runtime: RUNTIME,
|
package/src/index.ts
CHANGED
|
@@ -79,6 +79,7 @@ export * from "./seo.js";
|
|
|
79
79
|
export * from "./skills.js";
|
|
80
80
|
export * from "./snapshots.js";
|
|
81
81
|
export * from "./source-text-transport.js";
|
|
82
|
+
export * from "./stage-status.js";
|
|
82
83
|
export * from "./staging-gate.js";
|
|
83
84
|
export * from "./static-cache-policy.js";
|
|
84
85
|
export * from "./static-security-headers.js";
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
// SPDX-License-Identifier: MPL-2.0
|
|
2
|
+
|
|
3
|
+
import { describe, expect, it } from "bun:test";
|
|
4
|
+
import { describeStageRun, formatStageDuration, type StageStatusRun } from "./stage-status.js";
|
|
5
|
+
|
|
6
|
+
const base: StageStatusRun = {
|
|
7
|
+
runId: "00000000-0000-0000-0000-000000001288",
|
|
8
|
+
targetName: "staging",
|
|
9
|
+
status: "running",
|
|
10
|
+
phase: "building",
|
|
11
|
+
pagesDone: 812,
|
|
12
|
+
pagesTotal: 1904,
|
|
13
|
+
startedAt: "2026-11-01T07:00:00.000Z",
|
|
14
|
+
finishedAt: null,
|
|
15
|
+
elapsedMs: 60_000,
|
|
16
|
+
error: null,
|
|
17
|
+
failedPhase: null,
|
|
18
|
+
eta: { remainingMs: 100_000, basis: "this_run_rate", includesPublish: true },
|
|
19
|
+
etaUnavailable: null,
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
describe("formatStageDuration", () => {
|
|
23
|
+
it("reads like a person would say it", () => {
|
|
24
|
+
expect(formatStageDuration(45_000)).toBe("45 s");
|
|
25
|
+
expect(formatStageDuration(100_000)).toBe("1 min 40 s");
|
|
26
|
+
expect(formatStageDuration(120_000)).toBe("2 min");
|
|
27
|
+
expect(formatStageDuration(725_000)).toBe("12 min");
|
|
28
|
+
});
|
|
29
|
+
});
|
|
30
|
+
|
|
31
|
+
describe("describeStageRun", () => {
|
|
32
|
+
it("states progress and the estimate with its basis", () => {
|
|
33
|
+
expect(describeStageRun(base)).toBe(
|
|
34
|
+
"Building pages 812 of 1,904 — about 1 min 40 s left (from this run's pace)",
|
|
35
|
+
);
|
|
36
|
+
});
|
|
37
|
+
|
|
38
|
+
it("says when the estimate covers the pages only", () => {
|
|
39
|
+
expect(
|
|
40
|
+
describeStageRun({
|
|
41
|
+
...base,
|
|
42
|
+
eta: { remainingMs: 30_000, basis: "this_run_rate", includesPublish: false },
|
|
43
|
+
}),
|
|
44
|
+
).toContain("pages only — publishing time unknown");
|
|
45
|
+
});
|
|
46
|
+
|
|
47
|
+
it("names why there is no estimate instead of a number", () => {
|
|
48
|
+
expect(
|
|
49
|
+
describeStageRun({
|
|
50
|
+
...base,
|
|
51
|
+
phase: "preparing",
|
|
52
|
+
pagesDone: null,
|
|
53
|
+
pagesTotal: null,
|
|
54
|
+
eta: null,
|
|
55
|
+
etaUnavailable: "no successful Stage has recorded its step times yet",
|
|
56
|
+
}),
|
|
57
|
+
).toBe(
|
|
58
|
+
"Preparing the build (1 min so far) — no estimate: no successful Stage has recorded its step times yet",
|
|
59
|
+
);
|
|
60
|
+
});
|
|
61
|
+
|
|
62
|
+
it("gives a failed run's step and reason", () => {
|
|
63
|
+
expect(
|
|
64
|
+
describeStageRun({
|
|
65
|
+
...base,
|
|
66
|
+
status: "failed",
|
|
67
|
+
phase: "failed",
|
|
68
|
+
elapsedMs: 94_736,
|
|
69
|
+
error: "122 render failure(s)",
|
|
70
|
+
failedPhase: "generator",
|
|
71
|
+
eta: null,
|
|
72
|
+
}),
|
|
73
|
+
).toBe("Failed in generator after 1 min 35 s: 122 render failure(s)");
|
|
74
|
+
});
|
|
75
|
+
});
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
// SPDX-License-Identifier: MPL-2.0
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Issue #1288 — where a Stage's build stands, in one shape for every
|
|
5
|
+
* surface: the `deploy.stage_status` op returns it, the `get_stage_status`
|
|
6
|
+
* AI / MCP tool and the "still running" answers of `stage_changes` and
|
|
7
|
+
* `get_quality_audit` print it, and Settings → Deployments and the Live
|
|
8
|
+
* Edit Staging menu show it.
|
|
9
|
+
*
|
|
10
|
+
* The time left is an estimate with its basis named, never a default
|
|
11
|
+
* number (CLAUDE.md §2): `eta` is null with `etaUnavailable` saying why
|
|
12
|
+
* when nothing measured supports one.
|
|
13
|
+
*/
|
|
14
|
+
|
|
15
|
+
import { z } from "zod";
|
|
16
|
+
|
|
17
|
+
/** Where a Stage run is: waiting, its three steps, or its end. */
|
|
18
|
+
export const stagePhaseSchema = z.enum([
|
|
19
|
+
"queued",
|
|
20
|
+
"preparing",
|
|
21
|
+
"building",
|
|
22
|
+
"publishing",
|
|
23
|
+
"succeeded",
|
|
24
|
+
"failed",
|
|
25
|
+
]);
|
|
26
|
+
export type StagePhase = z.infer<typeof stagePhaseSchema>;
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* What an estimate of the time left rests on:
|
|
30
|
+
* - `this_run_rate`: the pages per second this run has built so far;
|
|
31
|
+
* - `last_successful_run`: how long the recent successful Stages took.
|
|
32
|
+
*/
|
|
33
|
+
export const stageEtaBasisSchema = z.enum(["this_run_rate", "last_successful_run"]);
|
|
34
|
+
export type StageEtaBasis = z.infer<typeof stageEtaBasisSchema>;
|
|
35
|
+
|
|
36
|
+
/** An estimate of the time a running Stage still needs. */
|
|
37
|
+
export const stageEtaSchema = z.object({
|
|
38
|
+
remainingMs: z.number().int().nonnegative(),
|
|
39
|
+
basis: stageEtaBasisSchema,
|
|
40
|
+
/** False when no successful Stage recorded how long publishing takes: the estimate covers the pages only. */
|
|
41
|
+
includesPublish: z.boolean(),
|
|
42
|
+
});
|
|
43
|
+
export type StageEta = z.infer<typeof stageEtaSchema>;
|
|
44
|
+
|
|
45
|
+
/** One Stage run (a staging site build) as every status surface shows it. */
|
|
46
|
+
export const stageStatusRunSchema = z.object({
|
|
47
|
+
runId: z.string(),
|
|
48
|
+
targetName: z.string(),
|
|
49
|
+
status: z.enum(["queued", "running", "succeeded", "failed"]),
|
|
50
|
+
phase: stagePhaseSchema,
|
|
51
|
+
pagesDone: z.number().int().nonnegative().nullable(),
|
|
52
|
+
pagesTotal: z.number().int().nonnegative().nullable(),
|
|
53
|
+
startedAt: z.string(),
|
|
54
|
+
finishedAt: z.string().nullable(),
|
|
55
|
+
/** Run time so far (running) or in total (finished). */
|
|
56
|
+
elapsedMs: z.number().int().nonnegative(),
|
|
57
|
+
/** The failure reason of a failed run. */
|
|
58
|
+
error: z.string().nullable(),
|
|
59
|
+
/** The step a failed run stopped in (`generator`, `publish` …), when recorded. */
|
|
60
|
+
failedPhase: z.string().nullable(),
|
|
61
|
+
eta: stageEtaSchema.nullable(),
|
|
62
|
+
/** Why there is no estimate for a queued or running run; null otherwise. */
|
|
63
|
+
etaUnavailable: z.string().nullable(),
|
|
64
|
+
});
|
|
65
|
+
export type StageStatusRun = z.infer<typeof stageStatusRunSchema>;
|
|
66
|
+
|
|
67
|
+
/** A duration for people: "45 s", "1 min 40 s", "12 min". */
|
|
68
|
+
export function formatStageDuration(ms: number): string {
|
|
69
|
+
const s = Math.max(0, Math.round(ms / 1000));
|
|
70
|
+
if (s < 60) return `${s} s`;
|
|
71
|
+
const min = Math.floor(s / 60);
|
|
72
|
+
const rest = s % 60;
|
|
73
|
+
if (min >= 10 || rest === 0) return `${min} min`;
|
|
74
|
+
return `${min} min ${rest} s`;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
const BASIS_TEXT: Record<StageEtaBasis, string> = {
|
|
78
|
+
this_run_rate: "from this run's pace",
|
|
79
|
+
last_successful_run: "from recent successful Stages",
|
|
80
|
+
};
|
|
81
|
+
|
|
82
|
+
/** "about 1 min 40 s left (from this run's pace)", or why there is no estimate. */
|
|
83
|
+
export function describeStageEta(run: Pick<StageStatusRun, "eta" | "etaUnavailable">): string {
|
|
84
|
+
if (run.eta) {
|
|
85
|
+
const pagesOnly = run.eta.includesPublish ? "" : ", pages only — publishing time unknown";
|
|
86
|
+
return `about ${formatStageDuration(run.eta.remainingMs)} left (${BASIS_TEXT[run.eta.basis]}${pagesOnly})`;
|
|
87
|
+
}
|
|
88
|
+
return `no estimate: ${run.etaUnavailable ?? "nothing measured yet"}`;
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
/**
|
|
92
|
+
* One line for people and the AI, e.g. "Building pages 812 of 1,904 —
|
|
93
|
+
* about 1 min 40 s left (from this run's pace)" or "Failed in generator
|
|
94
|
+
* after 1 min 34 s: <reason>".
|
|
95
|
+
*/
|
|
96
|
+
export function describeStageRun(run: StageStatusRun): string {
|
|
97
|
+
const n = (v: number) => v.toLocaleString("en-US");
|
|
98
|
+
switch (run.phase) {
|
|
99
|
+
case "queued":
|
|
100
|
+
return `Queued — ${describeStageEta(run)}`;
|
|
101
|
+
case "preparing":
|
|
102
|
+
return `Preparing the build (${formatStageDuration(run.elapsedMs)} so far) — ${describeStageEta(run)}`;
|
|
103
|
+
case "building":
|
|
104
|
+
return `Building pages ${n(run.pagesDone ?? 0)} of ${n(run.pagesTotal ?? 0)} — ${describeStageEta(run)}`;
|
|
105
|
+
case "publishing":
|
|
106
|
+
return `All ${n(run.pagesTotal ?? 0)} pages built, publishing to staging — ${describeStageEta(run)}`;
|
|
107
|
+
case "succeeded":
|
|
108
|
+
return `Succeeded in ${formatStageDuration(run.elapsedMs)}${run.pagesTotal === null ? "" : ` (${n(run.pagesTotal)} pages)`}`;
|
|
109
|
+
case "failed":
|
|
110
|
+
return `Failed${run.failedPhase ? ` in ${run.failedPhase}` : ""} after ${formatStageDuration(run.elapsedMs)}: ${run.error ?? "no reason recorded"}`;
|
|
111
|
+
}
|
|
112
|
+
}
|