@growth-labs/cms 0.5.30 → 0.5.31
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/engine/foundry-dispatch.d.ts +7 -2
- package/dist/engine/foundry-dispatch.d.ts.map +1 -1
- package/dist/engine/foundry-dispatch.js +24 -6
- package/dist/engine/foundry-dispatch.js.map +1 -1
- package/dist/engine/fronts-publish-intent.d.ts +174 -0
- package/dist/engine/fronts-publish-intent.d.ts.map +1 -0
- package/dist/engine/fronts-publish-intent.js +352 -0
- package/dist/engine/fronts-publish-intent.js.map +1 -0
- package/dist/engine/fronts-publish.d.ts +80 -0
- package/dist/engine/fronts-publish.d.ts.map +1 -0
- package/dist/engine/fronts-publish.js +286 -0
- package/dist/engine/fronts-publish.js.map +1 -0
- package/dist/engine/index.d.ts +2 -0
- package/dist/engine/index.d.ts.map +1 -1
- package/dist/engine/index.js +5 -0
- package/dist/engine/index.js.map +1 -1
- package/dist/engine/publisher.d.ts.map +1 -1
- package/dist/engine/publisher.js +21 -1
- package/dist/engine/publisher.js.map +1 -1
- package/dist/integration/index.d.ts.map +1 -1
- package/dist/integration/index.js +10 -0
- package/dist/integration/index.js.map +1 -1
- package/dist/routes/fronts-publish.d.ts +10 -0
- package/dist/routes/fronts-publish.d.ts.map +1 -0
- package/dist/routes/fronts-publish.js +250 -0
- package/dist/routes/fronts-publish.js.map +1 -0
- package/dist/routes/index.d.ts +3 -0
- package/dist/routes/index.d.ts.map +1 -1
- package/dist/routes/index.js +4 -0
- package/dist/routes/index.js.map +1 -1
- package/dist/schema/layout.d.ts +2 -2
- package/dist/schema/migrations.d.ts.map +1 -1
- package/dist/schema/migrations.js +36 -0
- package/dist/schema/migrations.js.map +1 -1
- package/dist/schema/portable-text.d.ts +2 -2
- package/dist/schema/tables.d.ts +1 -1
- package/dist/schema/tables.d.ts.map +1 -1
- package/dist/schema/tables.js +2 -0
- package/dist/schema/tables.js.map +1 -1
- package/dist/schema/types.d.ts +59 -0
- package/dist/schema/types.d.ts.map +1 -1
- package/dist/schema/types.js.map +1 -1
- package/dist/surveys/schema.d.ts +54 -54
- package/dist/ui/api/fronts/publish-callback.d.ts +3 -0
- package/dist/ui/api/fronts/publish-callback.d.ts.map +1 -0
- package/dist/ui/api/fronts/publish-callback.js +8 -0
- package/dist/ui/api/fronts/publish-callback.js.map +1 -0
- package/dist/ui/api/fronts/schedule.d.ts +3 -0
- package/dist/ui/api/fronts/schedule.d.ts.map +1 -0
- package/dist/ui/api/fronts/schedule.js +8 -0
- package/dist/ui/api/fronts/schedule.js.map +1 -0
- package/migrations/0026_fronts_publish.sql +31 -0
- package/migrations/0027_fronts_publish_intent.sql +44 -0
- package/package.json +1 -1
- package/src/engine/foundry-dispatch.ts +22 -6
- package/src/engine/fronts-publish-intent.ts +676 -0
- package/src/engine/fronts-publish.ts +417 -0
- package/src/engine/index.ts +27 -0
- package/src/engine/publisher.ts +21 -1
- package/src/integration/index.ts +10 -0
- package/src/routes/fronts-publish.ts +292 -0
- package/src/routes/index.ts +8 -0
- package/src/schema/migrations.ts +36 -0
- package/src/schema/tables.ts +2 -0
- package/src/schema/types.ts +61 -0
- package/src/ui/api/fronts/publish-callback.ts +18 -0
- package/src/ui/api/fronts/schedule.ts +18 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fronts-publish-intent.js","sourceRoot":"","sources":["../../src/engine/fronts-publish-intent.ts"],"names":[],"mappings":"AA0CA,+DAA+D;AAC/D,MAAM,CAAC,MAAM,4BAA4B,GAAG,UAAU,CAAA;AAEtD;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CAAC,SAAiB,EAAE,OAAe;IACvE,OAAO,GAAG,4BAA4B,IAAI,SAAS,IAAI,OAAO,EAAE,CAAA;AACjE,CAAC;AAaD;;;GAGG;AACH,MAAM,OAAO,wBAAyB,SAAQ,KAAK;IACzC,IAAI,CAA8B;IAClC,SAAS,CAAQ;IAC1B,YAAY,IAAkC,EAAE,SAAiB,EAAE,MAAe;QACjF,KAAK,CAAC,yBAAyB,IAAI,gBAAgB,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;QAC7F,IAAI,CAAC,IAAI,GAAG,0BAA0B,CAAA;QACtC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;IAC3B,CAAC;CACD;AAmFD,8EAA8E;AAE9E,6DAA6D;AAC7D,KAAK,UAAU,SAAS,CAAC,KAAa;IACrC,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;IACrF,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;SACvC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;SAC3C,IAAI,CAAC,EAAE,CAAC,CAAA;AACX,CAAC;AAED,2EAA2E;AAC3E,MAAM,CAAC,MAAM,wCAAwC,GAAG,SAAS,CAAA;AAEjE;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,6BAA6B,CAAC,QAAgB;IACnE,OAAO,GAAG,wCAAwC,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAA;AACjF,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,4BAA4B,CACjD,EAAc,EACd,SAAiB;IAEjB,MAAM,MAAM,GAAG,MAAM,EAAE;SACrB,OAAO,CACP;;0DAEuD,CACvD;SACA,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,SAAS,CAAC;SACpC,GAAG,EAAE,CAAA;IACP,6EAA6E;IAC7E,yEAAyE;IACzE,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,EAAE,OAAO,CAAA;IACpC,OAAO,EAAE,MAAM,EAAE,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,GAAG,CAAC,EAAE,CAAA;AAC9D,CAAC;AAWD;sEACsE;AACtE,SAAS,uBAAuB,CAC/B,OAA2B;IAE3B,MAAM,OAAO,GAAa,EAAE,CAAA;IAC5B,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC7B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YACtD,OAAO,EAAE,IAAI,EAAE,yBAAyB,EAAE,CAAA;QAC3C,CAAC;QACD,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,EAAE,CAAA;QAC3B,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;YAAE,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IACpD,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,IAAI,EAAE,yBAAyB,EAAE,CAAA;IACpE,OAAO,EAAE,OAAO,EAAE,CAAA;AACnB,CAAC;AAED,MAAM,UAAU,yBAAyB,CACxC,GAA8B;IAE9B,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QAC5D,OAAO,EAAE,IAAI,EAAE,yBAAyB,EAAE,CAAA;IAC3C,CAAC;IACD,IAAI,MAAe,CAAA;IACnB,IAAI,CAAC;QACJ,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IACzB,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,EAAE,IAAI,EAAE,yBAAyB,EAAE,CAAA;IAC3C,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,OAAO,EAAE,IAAI,EAAE,yBAAyB,EAAE,CAAA;IACtE,OAAO,uBAAuB,CAAC,MAAM,CAAC,CAAA;AACvC,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC5C,EAAc,EACd,SAAiB,EACjB,OAA0B;IAE1B,MAAM,UAAU,GAAG,uBAAuB,CAAC,OAAO,CAAC,CAAA;IACnD,IAAI,MAAM,IAAI,UAAU,EAAE,CAAC;QAC1B,MAAM,IAAI,wBAAwB,CACjC,UAAU,CAAC,IAAI,EACf,SAAS,EACT,uDAAuD,CACvD,CAAA;IACF,CAAC;IACD,MAAM,EAAE;SACN,OAAO,CAAC,kEAAkE,CAAC;SAC3E,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC;SACnD,GAAG,EAAE,CAAA;AACR,CAAC;AAqBD,MAAM,iBAAiB,GAAG;;kDAEwB,CAAA;AAoClD,0DAA0D;AAC1D,SAAS,YAAY,CAAC,KAAa;IAClC,OAAO,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AAC7C,CAAC;AAgCD,gFAAgF;AAChF,SAAS,YAAY,CAAC,GAAW,EAAE,iBAAyB;IAC3D,IAAI,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC;QAAE,OAAO,GAAG,CAAA;IACzC,OAAO,WAAW,iBAAiB,IAAI,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAA;AACjE,CAAC;AAED,iFAAiF;AACjF,SAAS,QAAQ,CAAC,GAAa,EAAE,iBAAyB;IACzD,MAAM,MAAM,GAAG,GAAG,CAAC,UAAU,EAAE,IAAI,EAAE,IAAI,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,CAAA;IACxD,IAAI,MAAM;QAAE,OAAO,MAAM,CAAA;IACzB,MAAM,GAAG,GAAG,GAAG,CAAC,UAAU,EAAE,IAAI,EAAE,CAAA;IAClC,OAAO,GAAG,CAAC,CAAC,CAAC,YAAY,CAAC,GAAG,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;AACzD,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAChD,EAAc,EACd,OAA2C;IAE3C,MAAM,GAAG,GAAG,OAAO,CAAC,UAAU,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,CAAA;IAChE,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,IAAI,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;IAC3E,MAAM,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,IAAI,iBAAiB,CAAA;IAExE,MAAM,UAAU,GAAG,MAAM,EAAE;SACzB,OAAO,CACP,UAAU,iBAAiB;;;;;;YAMlB,CACT;SACA,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC;SAC9B,GAAG,EAAsB,CAAA;IAE3B,MAAM,IAAI,GAAG,UAAU,CAAC,OAAO,IAAI,EAAE,CAAA;IACrC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,CAAA;IAE7D,MAAM,IAAI,GAAG,MAAM,qBAAqB,CAAC,EAAE,EAAE,IAAI,CAAC,CAAA;IAClD,MAAM,OAAO,GAA0B,EAAE,CAAA;IACzC,MAAM,UAAU,GAAiC,EAAE,CAAA;IAEnD,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACxB,IAAI,CAAC;YACJ,OAAO,CAAC,IAAI,CACX,MAAM,WAAW,CAAC,GAAG,EAAE,IAAI,EAAE;gBAC5B,GAAG;gBACH,iBAAiB;gBACjB,OAAO,EAAE,OAAO,CAAC,iBAAiB;aAClC,CAAC,CACF,CAAA;QACF,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,IAAI,KAAK,YAAY,wBAAwB,EAAE,CAAC;gBAC/C,6EAA6E;gBAC7E,OAAO,CAAC,KAAK,CAAC,2CAA2C,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;gBACzE,UAAU,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,SAAS,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;gBAC1F,SAAQ;YACT,CAAC;YACD,MAAM,KAAK,CAAA;QACZ,CAAC;IACF,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,CAAA;AAC/B,CAAC;AAED,gFAAgF;AAChF,KAAK,UAAU,qBAAqB,CACnC,EAAc,EACd,IAAmC;IAOnC,MAAM,aAAa,GAAG,IAAI;SACxB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,CAAC,IAAI,KAAK,YAAY,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC;SACnF,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;IAClB,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;IACxE,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;IAE5E,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAyB,CAAA;IACjD,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9B,MAAM,GAAG,GAAG,MAAM,EAAE;aAClB,OAAO,CACP;4BACwB,YAAY,CAAC,aAAa,CAAC,MAAM,CAAC,GAAG,CAC7D;aACA,IAAI,CAAC,GAAG,aAAa,CAAC;aACtB,GAAG,EAAiB,CAAA;QACtB,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,OAAO,IAAI,EAAE;YAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAA;IACjE,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,GAAG,EAAuB,CAAA;IAC7C,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzB,MAAM,GAAG,GAAG,MAAM,EAAE;aAClB,OAAO,CACP;;+CAE2C,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAC3E;aACA,IAAI,CAAC,GAAG,QAAQ,CAAC;aACjB,GAAG,EAAe,CAAA;QACpB,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,OAAO,IAAI,EAAE;YAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAA;IAC/D,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAyB,CAAA;IACjD,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3B,MAAM,GAAG,GAAG,MAAM,EAAE;aAClB,OAAO,CACP;4BACwB,YAAY,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,CAC1D;aACA,IAAI,CAAC,GAAG,UAAU,CAAC;aACnB,GAAG,EAAiB,CAAA;QACtB,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,OAAO,IAAI,EAAE;YAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAA;IACjE,CAAC;IAED,MAAM,QAAQ,GAAa,EAAE,CAAA;IAC7B,MAAM,WAAW,GAAG,CAAC,EAA6B,EAAE,EAAE;QACrD,MAAM,OAAO,GAAG,EAAE,EAAE,IAAI,EAAE,CAAA;QAC1B,IAAI,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC;YAAE,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IACnE,CAAC,CAAA;IACD,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACxB,WAAW,CAAC,GAAG,CAAC,aAAa,CAAC,CAAA;QAC9B,WAAW,CAAC,GAAG,CAAC,eAAe,CAAC,CAAA;IACjC,CAAC;IACD,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE;QAAE,WAAW,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAA;IAE1E,MAAM,KAAK,GAAG,IAAI,GAAG,EAAoB,CAAA;IACzC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzB,MAAM,GAAG,GAAG,MAAM,EAAE;aAClB,OAAO,CACP;oBACgB,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAChD;aACA,IAAI,CAAC,GAAG,QAAQ,CAAC;aACjB,GAAG,EAAY,CAAA;QACjB,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,OAAO,IAAI,EAAE;YAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;IACtD,CAAC;IAED,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAA;AAC7C,CAAC;AAED,yFAAyF;AACzF,KAAK,UAAU,WAAW,CACzB,GAAuB,EACvB,IAAuD,EACvD,GAIC;IAED,IAAI,GAAG,CAAC,UAAU,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;QACjE,MAAM,IAAI,wBAAwB,CAAC,oBAAoB,EAAE,GAAG,CAAC,EAAE,CAAC,CAAA;IACjE,CAAC;IACD,MAAM,OAAO,GAAG,GAAG,CAAC,iBAAiB,CAAA;IACrC,IAAI,OAAO,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;QACnE,MAAM,IAAI,wBAAwB,CACjC,2BAA2B,EAC3B,GAAG,CAAC,EAAE,EACN,qDAAqD,MAAM,CAAC,OAAO,CAAC,EAAE,CACtE,CAAA;IACF,CAAC;IAED,MAAM,OAAO,GAAG,yBAAyB,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAA;IACrE,IAAI,MAAM,IAAI,OAAO,EAAE,CAAC;QACvB,MAAM,IAAI,wBAAwB,CACjC,OAAO,CAAC,IAAI,EACZ,GAAG,CAAC,EAAE,EACN,2EAA2E,CAC3E,CAAA;IACF,CAAC;IAED,MAAM,QAAQ,GAAG,GAAG,CAAC,4BAA4B,EAAE,IAAI,EAAE,CAAA;IACzD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACf,MAAM,IAAI,wBAAwB,CACjC,uBAAuB,EACvB,GAAG,CAAC,EAAE,EACN,oFAAoF,CACpF,CAAA;IACF,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;IAC3C,OAAO;QACN,SAAS,EAAE,qBAAqB,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,CAAC;QACjD,UAAU,EAAE,GAAG,CAAC,EAAE;QAClB,OAAO;QACP,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,eAAe,EAAE,OAAO,CAAC,OAAO;QAChC,QAAQ;QACR,UAAU,EAAE,QAAQ;QACpB,YAAY,EAAE,gBAAgB,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,CAAC;QAC9C,kBAAkB,EAAE,MAAM,6BAA6B,CAAC,QAAQ,CAAC;QACjE,OAAO,EAAE,QAAQ,IAAI,GAAG,CAAC,GAAG;QAC5B,qBAAqB,EAAE,GAAG,CAAC,qBAAqB;KAChD,CAAA;AACF,CAAC;AAED,8EAA8E;AAC9E,SAAS,gBAAgB,CACxB,GAAuB,EACvB,IAAuD,EACvD,GAGC;IAED,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAA;IACjE,MAAM,YAAY,GAAG,GAAG,CAAC,aAAa,EAAE,IAAI,EAAE,IAAI,IAAI,CAAA;IAEtD,yEAAyE;IACzE,IAAI,OAAO,GAAmC,IAAI,CAAA;IAClD,MAAM,UAAU,GAAG,GAAG,CAAC,IAAI,KAAK,SAAS,IAAI,GAAG,CAAC,IAAI,KAAK,YAAY,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,CAAA;IAC7F,IAAI,UAAU,EAAE,CAAC;QAChB,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QACvC,IAAI,CAAC,KAAK,EAAE,aAAa,IAAI,KAAK,CAAC,aAAa,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YAChE,MAAM,IAAI,wBAAwB,CACjC,sBAAsB,EACtB,GAAG,CAAC,EAAE,EACN,KAAK,GAAG,CAAC,IAAI,4DAA4D,CACzE,CAAA;QACF,CAAC;QACD,OAAO,GAAG;YACT,GAAG,EAAE,YAAY,IAAI,SAAS;YAC9B,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,UAAU,EAAE,KAAK,CAAC,UAAU,IAAI,IAAI;SACpC,CAAA;IACF,CAAC;IAED,oEAAoE;IACpE,IAAI,QAAQ,GAAoC,IAAI,CAAA;IACpD,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC1B,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QACrC,MAAM,QAAQ,GAAG,KAAK,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAA;QAChD,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,SAAS,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClD,MAAM,IAAI,wBAAwB,CACjC,uBAAuB,EACvB,GAAG,CAAC,EAAE,EACN,sFAAsF,CACtF,CAAA;QACF,CAAC;QACD,QAAQ,GAAG;YACV,IAAI,EAAE,cAAc;YACpB,GAAG,EAAE,QAAQ;YACb,UAAU,EAAE,KAAK,CAAC,cAAc,EAAE,IAAI,EAAE,IAAI,IAAI;YAChD,gBAAgB,EAAE,KAAK,CAAC,gBAAgB,IAAI,IAAI;SAChD,CAAA;IACF,CAAC;IAED,6EAA6E;IAC7E,0DAA0D;IAC1D,IAAI,YAAY,GAAwC,IAAI,CAAA;IAC5D,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC5B,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QACvC,MAAM,GAAG,GAAG,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,CAAA;QACvC,IAAI,CAAC,KAAK,IAAI,CAAC,GAAG,EAAE,CAAC;YACpB,MAAM,IAAI,wBAAwB,CACjC,uBAAuB,EACvB,GAAG,CAAC,EAAE,EACN,oEAAoE,CACpE,CAAA;QACF,CAAC;QACD,YAAY,GAAG;YACd,IAAI,EAAE,WAAW;YACjB,GAAG,EAAE,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC,iBAAiB,CAAC;YAC7C,gBAAgB,EAAE,KAAK,CAAC,gBAAgB,IAAI,IAAI;SAChD,CAAA;IACF,CAAC;IAED,gEAAgE;IAChE,MAAM,MAAM,GAA4B,EAAE,CAAA;IAC1C,MAAM,SAAS,GAAG,CAAC,EAA6B,EAAE,IAAmC,EAAE,EAAE;QACxF,MAAM,OAAO,GAAG,EAAE,EAAE,IAAI,EAAE,CAAA;QAC1B,IAAI,CAAC,OAAO;YAAE,OAAM;QACpB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;QACrC,IAAI,CAAC,KAAK;YAAE,OAAM;QAClB,MAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,iBAAiB,CAAC,CAAA;QAClD,IAAI,CAAC,GAAG;YAAE,OAAM;QAChB,MAAM,CAAC,IAAI,CAAC;YACX,EAAE,EAAE,OAAO;YACX,IAAI;YACJ,GAAG;YACH,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,IAAI;YAC1B,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,IAAI;SAC5B,CAAC,CAAA;IACH,CAAC,CAAA;IACD,SAAS,CAAC,GAAG,CAAC,aAAa,EAAE,MAAM,CAAC,CAAA;IACpC,SAAS,CAAC,GAAG,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAA;IACxC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,kBAAkB,EAAE,WAAW,CAAC,CAAA;IAEnE,8BAA8B;IAC9B,MAAM,KAAK,GAA2B,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC,CAAA;IACzE,IAAI,YAAY;QAAE,KAAK,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,WAAW,EAAE,GAAG,EAAE,YAAY,EAAE,CAAC,CAAA;IAErE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,iBAAiB,EAAE,YAAY,EAAE,KAAK,EAAE,CAAA;AACxF,CAAC"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import type { ContentType, FrontsPublishStatus } from '../schema/types.js';
|
|
2
|
+
import type { D1Database } from './d1.js';
|
|
3
|
+
/** The five lifecycle states foundryd reports for a Fronts publish intent. */
|
|
4
|
+
export declare const FRONTS_PUBLISH_STATUSES: readonly FrontsPublishStatus[];
|
|
5
|
+
export declare function isFrontsPublishStatus(value: unknown): value is FrontsPublishStatus;
|
|
6
|
+
/**
|
|
7
|
+
* Feature flag — a ROLLBACK LEVER, not a graduation gate. Default ENABLED; the
|
|
8
|
+
* additive Fronts publish endpoints only go dark when the host explicitly sets
|
|
9
|
+
* FRONTS_PUBLISH_ENABLED to a falsy string ('0' | 'false' | 'off' | 'no') or the
|
|
10
|
+
* boolean false. When off, foundryd's polls/callbacks are refused loudly (503)
|
|
11
|
+
* and the untouched D1 cron path owns publishing.
|
|
12
|
+
*/
|
|
13
|
+
export declare function isFrontsPublishEnabled(env: Record<string, unknown> | undefined): boolean;
|
|
14
|
+
export interface FrontsScheduleItem {
|
|
15
|
+
id: string;
|
|
16
|
+
type: ContentType;
|
|
17
|
+
slug: string;
|
|
18
|
+
title: string;
|
|
19
|
+
channel: string | null;
|
|
20
|
+
/** Scheduled publish time, unix epoch seconds. */
|
|
21
|
+
publishAt: number;
|
|
22
|
+
/** Current lifecycle marker (null until foundryd first acknowledges it). */
|
|
23
|
+
frontsPublishStatus: FrontsPublishStatus | null;
|
|
24
|
+
/** publish_at is at or before `now` — foundryd is late on this one. */
|
|
25
|
+
overdue: boolean;
|
|
26
|
+
}
|
|
27
|
+
export interface ListFrontsPublishScheduleOptions {
|
|
28
|
+
/** Window upper bound, unix epoch seconds. Items due at/before this are returned. */
|
|
29
|
+
toSeconds: number;
|
|
30
|
+
/** Reference time for the `overdue` flag, unix epoch seconds. Defaults to Date.now(). */
|
|
31
|
+
nowSeconds?: number;
|
|
32
|
+
/** Hard cap on rows returned. Default 200, max 1000. */
|
|
33
|
+
limit?: number;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* List `scheduled` items due at or before the window end. Includes overdue
|
|
37
|
+
* items (publish_at < window start) — the window's lower bound is intentionally
|
|
38
|
+
* not applied, matching foundryd's "next window + any overdue" contract. Ordered
|
|
39
|
+
* by publish_at ascending so the most-overdue item is published first.
|
|
40
|
+
*/
|
|
41
|
+
export declare function listFrontsPublishSchedule(db: D1Database, options: ListFrontsPublishScheduleOptions): Promise<FrontsScheduleItem[]>;
|
|
42
|
+
export interface FrontsPublishReceipt {
|
|
43
|
+
published_urls?: string[] | null;
|
|
44
|
+
platform_post_ids?: string[] | null;
|
|
45
|
+
sha256?: string | null;
|
|
46
|
+
}
|
|
47
|
+
export interface FrontsPublishCallbackInput {
|
|
48
|
+
eventId: string;
|
|
49
|
+
intentId?: string | null;
|
|
50
|
+
contentId: string;
|
|
51
|
+
version?: number | null;
|
|
52
|
+
correlationId?: string | null;
|
|
53
|
+
status: FrontsPublishStatus;
|
|
54
|
+
/** ISO-8601 string or unix epoch seconds; used as the published_at on `live`. */
|
|
55
|
+
occurredAt?: string | number | null;
|
|
56
|
+
receipt?: FrontsPublishReceipt | null;
|
|
57
|
+
error?: string | null;
|
|
58
|
+
/** Reference time (unix seconds), for tests. Defaults to Date.now(). */
|
|
59
|
+
now?: number;
|
|
60
|
+
}
|
|
61
|
+
export interface FrontsPublishCallbackResult {
|
|
62
|
+
ok: boolean;
|
|
63
|
+
/** True when this event_id was already processed — no state change this call. */
|
|
64
|
+
deduped: boolean;
|
|
65
|
+
status: FrontsPublishStatus;
|
|
66
|
+
/** True when the item is published (flipped by this call, or already was). */
|
|
67
|
+
published: boolean;
|
|
68
|
+
/** The content_publication_attempts ledger row id, when this call published. */
|
|
69
|
+
attemptId: string | null;
|
|
70
|
+
contentFound: boolean;
|
|
71
|
+
/** Set when a `live` callback could not be committed through the ledger. */
|
|
72
|
+
ledgerError: string | null;
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Apply one foundryd publish-callback. Idempotent by `event_id`: a repeat
|
|
76
|
+
* delivery returns the stored outcome without re-applying. See the module
|
|
77
|
+
* header for the state-transition contract.
|
|
78
|
+
*/
|
|
79
|
+
export declare function applyFrontsPublishCallback(db: D1Database, input: FrontsPublishCallbackInput): Promise<FrontsPublishCallbackResult>;
|
|
80
|
+
//# sourceMappingURL=fronts-publish.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fronts-publish.d.ts","sourceRoot":"","sources":["../../src/engine/fronts-publish.ts"],"names":[],"mappings":"AA0BA,OAAO,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AAC1E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAGzC,8EAA8E;AAC9E,eAAO,MAAM,uBAAuB,EAAE,SAAS,mBAAmB,EAMxD,CAAA;AAEV,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,mBAAmB,CAElF;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAAG,OAAO,CASxF;AAID,MAAM,WAAW,kBAAkB;IAClC,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,WAAW,CAAA;IACjB,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;IACtB,kDAAkD;IAClD,SAAS,EAAE,MAAM,CAAA;IACjB,4EAA4E;IAC5E,mBAAmB,EAAE,mBAAmB,GAAG,IAAI,CAAA;IAC/C,uEAAuE;IACvE,OAAO,EAAE,OAAO,CAAA;CAChB;AAED,MAAM,WAAW,gCAAgC;IAChD,qFAAqF;IACrF,SAAS,EAAE,MAAM,CAAA;IACjB,yFAAyF;IACzF,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,wDAAwD;IACxD,KAAK,CAAC,EAAE,MAAM,CAAA;CACd;AAED;;;;;GAKG;AACH,wBAAsB,yBAAyB,CAC9C,EAAE,EAAE,UAAU,EACd,OAAO,EAAE,gCAAgC,GACvC,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAiC/B;AAID,MAAM,WAAW,oBAAoB;IACpC,cAAc,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;IAChC,iBAAiB,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;IACnC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACtB;AAED,MAAM,WAAW,0BAA0B;IAC1C,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,MAAM,EAAE,mBAAmB,CAAA;IAC3B,iFAAiF;IACjF,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAA;IACnC,OAAO,CAAC,EAAE,oBAAoB,GAAG,IAAI,CAAA;IACrC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,wEAAwE;IACxE,GAAG,CAAC,EAAE,MAAM,CAAA;CACZ;AAED,MAAM,WAAW,2BAA2B;IAC3C,EAAE,EAAE,OAAO,CAAA;IACX,iFAAiF;IACjF,OAAO,EAAE,OAAO,CAAA;IAChB,MAAM,EAAE,mBAAmB,CAAA;IAC3B,8EAA8E;IAC9E,SAAS,EAAE,OAAO,CAAA;IAClB,gFAAgF;IAChF,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,YAAY,EAAE,OAAO,CAAA;IACrB,4EAA4E;IAC5E,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;CAC1B;AA2BD;;;;GAIG;AACH,wBAAsB,0BAA0B,CAC/C,EAAE,EAAE,UAAU,EACd,KAAK,EAAE,0BAA0B,GAC/B,OAAO,CAAC,2BAA2B,CAAC,CAoJtC"}
|
|
@@ -0,0 +1,286 @@
|
|
|
1
|
+
// Fronts publish path — the additive, flag-gated, out-of-process publish flow
|
|
2
|
+
// (increment: cms/Masthead side).
|
|
3
|
+
//
|
|
4
|
+
// TWO seams, both driven by the external Fronts publish worker (foundryd):
|
|
5
|
+
//
|
|
6
|
+
// 1. listFrontsPublishSchedule — the poll surface. Returns `scheduled` items
|
|
7
|
+
// whose `publish_at` has arrived or is arriving within the caller's window
|
|
8
|
+
// (plus any overdue), so foundryd knows what to publish. Mirrors the
|
|
9
|
+
// `runScheduledPublish` (engine/cron.ts) due-predicate — `content_items`
|
|
10
|
+
// scheduling columns are INTEGER unix seconds, so the window is compared in
|
|
11
|
+
// seconds (NOT the D1 `datetime('now')` TEXT format; there is no
|
|
12
|
+
// space-vs-T comparison trap on this column).
|
|
13
|
+
//
|
|
14
|
+
// 2. applyFrontsPublishCallback — the receiver. Records foundryd's outbound
|
|
15
|
+
// callback (idempotent by `event_id`), reflects the lifecycle status onto
|
|
16
|
+
// `content_items.fronts_publish_status`, and — ONLY on a confirmed `live`
|
|
17
|
+
// with a receipt — drives the item to published THROUGH the existing
|
|
18
|
+
// `content_publication_attempts` 2PC ledger via `publishOne`. A
|
|
19
|
+
// `queued`/`publishing`/`late`/`failed` callback (or a `live` with no
|
|
20
|
+
// receipt) never flips the item to published.
|
|
21
|
+
//
|
|
22
|
+
// The legacy D1 cron publish path (engine/cron.ts `runScheduledPublish` + the
|
|
23
|
+
// site's cron) is UNTOUCHED and remains the rollback lever; this path is purely
|
|
24
|
+
// additive and gated by FRONTS_PUBLISH_ENABLED (default ON — a rollback lever,
|
|
25
|
+
// not a dark-staging gate).
|
|
26
|
+
import { publishOne } from './publication.js';
|
|
27
|
+
/** The five lifecycle states foundryd reports for a Fronts publish intent. */
|
|
28
|
+
export const FRONTS_PUBLISH_STATUSES = [
|
|
29
|
+
'queued',
|
|
30
|
+
'publishing',
|
|
31
|
+
'live',
|
|
32
|
+
'late',
|
|
33
|
+
'failed',
|
|
34
|
+
];
|
|
35
|
+
export function isFrontsPublishStatus(value) {
|
|
36
|
+
return typeof value === 'string' && FRONTS_PUBLISH_STATUSES.includes(value);
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Feature flag — a ROLLBACK LEVER, not a graduation gate. Default ENABLED; the
|
|
40
|
+
* additive Fronts publish endpoints only go dark when the host explicitly sets
|
|
41
|
+
* FRONTS_PUBLISH_ENABLED to a falsy string ('0' | 'false' | 'off' | 'no') or the
|
|
42
|
+
* boolean false. When off, foundryd's polls/callbacks are refused loudly (503)
|
|
43
|
+
* and the untouched D1 cron path owns publishing.
|
|
44
|
+
*/
|
|
45
|
+
export function isFrontsPublishEnabled(env) {
|
|
46
|
+
const raw = env?.FRONTS_PUBLISH_ENABLED;
|
|
47
|
+
if (raw === undefined || raw === null)
|
|
48
|
+
return true;
|
|
49
|
+
if (typeof raw === 'boolean')
|
|
50
|
+
return raw;
|
|
51
|
+
if (typeof raw === 'number')
|
|
52
|
+
return raw !== 0;
|
|
53
|
+
if (typeof raw === 'string') {
|
|
54
|
+
return !['0', 'false', 'off', 'no'].includes(raw.trim().toLowerCase());
|
|
55
|
+
}
|
|
56
|
+
return true;
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* List `scheduled` items due at or before the window end. Includes overdue
|
|
60
|
+
* items (publish_at < window start) — the window's lower bound is intentionally
|
|
61
|
+
* not applied, matching foundryd's "next window + any overdue" contract. Ordered
|
|
62
|
+
* by publish_at ascending so the most-overdue item is published first.
|
|
63
|
+
*/
|
|
64
|
+
export async function listFrontsPublishSchedule(db, options) {
|
|
65
|
+
const now = options.nowSeconds ?? Math.floor(Date.now() / 1_000);
|
|
66
|
+
const limit = Math.min(Math.max(1, Math.floor(options.limit ?? 200)), 1000);
|
|
67
|
+
const result = await db
|
|
68
|
+
.prepare(`SELECT id, type, slug, title, channel, publish_at, fronts_publish_status
|
|
69
|
+
FROM content_items
|
|
70
|
+
WHERE status = 'scheduled'
|
|
71
|
+
AND publish_at IS NOT NULL
|
|
72
|
+
AND publish_at <= ?
|
|
73
|
+
ORDER BY publish_at ASC
|
|
74
|
+
LIMIT ?`)
|
|
75
|
+
.bind(options.toSeconds, limit)
|
|
76
|
+
.all();
|
|
77
|
+
return (result.results ?? []).map((row) => ({
|
|
78
|
+
id: row.id,
|
|
79
|
+
type: row.type,
|
|
80
|
+
slug: row.slug,
|
|
81
|
+
title: row.title,
|
|
82
|
+
channel: row.channel,
|
|
83
|
+
publishAt: row.publish_at,
|
|
84
|
+
frontsPublishStatus: row.fronts_publish_status,
|
|
85
|
+
overdue: row.publish_at <= now,
|
|
86
|
+
}));
|
|
87
|
+
}
|
|
88
|
+
function hasReceipt(receipt) {
|
|
89
|
+
if (!receipt)
|
|
90
|
+
return false;
|
|
91
|
+
const urls = Array.isArray(receipt.published_urls) && receipt.published_urls.length > 0;
|
|
92
|
+
const ids = Array.isArray(receipt.platform_post_ids) && receipt.platform_post_ids.length > 0;
|
|
93
|
+
const sha = typeof receipt.sha256 === 'string' && receipt.sha256.trim().length > 0;
|
|
94
|
+
return urls || ids || sha;
|
|
95
|
+
}
|
|
96
|
+
/** Resolve occurred_at to a bounded, non-future unix-seconds value (or null). */
|
|
97
|
+
function resolveOccurredAtSeconds(occurredAt, now) {
|
|
98
|
+
let seconds = null;
|
|
99
|
+
if (typeof occurredAt === 'number' && Number.isFinite(occurredAt)) {
|
|
100
|
+
seconds = Math.floor(occurredAt);
|
|
101
|
+
}
|
|
102
|
+
else if (typeof occurredAt === 'string' && occurredAt.trim()) {
|
|
103
|
+
const ms = Date.parse(occurredAt);
|
|
104
|
+
if (!Number.isNaN(ms))
|
|
105
|
+
seconds = Math.floor(ms / 1_000);
|
|
106
|
+
}
|
|
107
|
+
if (seconds === null || !Number.isSafeInteger(seconds) || seconds < 0)
|
|
108
|
+
return null;
|
|
109
|
+
// publishOne rejects a published_at later than `now`; clamp for clock skew.
|
|
110
|
+
return Math.min(seconds, now);
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* Apply one foundryd publish-callback. Idempotent by `event_id`: a repeat
|
|
114
|
+
* delivery returns the stored outcome without re-applying. See the module
|
|
115
|
+
* header for the state-transition contract.
|
|
116
|
+
*/
|
|
117
|
+
export async function applyFrontsPublishCallback(db, input) {
|
|
118
|
+
const now = input.now ?? Math.floor(Date.now() / 1_000);
|
|
119
|
+
// 1. Idempotency — replay the stored outcome for a known event_id.
|
|
120
|
+
const existing = await readStoredOutcome(db, input.eventId);
|
|
121
|
+
if (existing)
|
|
122
|
+
return existing;
|
|
123
|
+
// 2. Resolve the target item. A missing item is NOT recorded, so a retry can
|
|
124
|
+
// still land once the item exists.
|
|
125
|
+
const item = await db
|
|
126
|
+
.prepare('SELECT id, status, fronts_publish_status FROM content_items WHERE id = ? LIMIT 1')
|
|
127
|
+
.bind(input.contentId)
|
|
128
|
+
.first();
|
|
129
|
+
if (!item) {
|
|
130
|
+
return {
|
|
131
|
+
ok: false,
|
|
132
|
+
deduped: false,
|
|
133
|
+
status: input.status,
|
|
134
|
+
published: false,
|
|
135
|
+
attemptId: null,
|
|
136
|
+
contentFound: false,
|
|
137
|
+
ledgerError: null,
|
|
138
|
+
};
|
|
139
|
+
}
|
|
140
|
+
// 3. On a confirmed `live` WITH a receipt, drive the publish through the 2PC
|
|
141
|
+
// ledger — record attempt + commit — flipping the item to published.
|
|
142
|
+
// A `live` on an already-published item just confirms it (no re-publish,
|
|
143
|
+
// so we never race the cron path into a duplicate revision).
|
|
144
|
+
let published = item.status === 'published';
|
|
145
|
+
let attemptId = null;
|
|
146
|
+
let ledgerError = null;
|
|
147
|
+
const shouldPublish = input.status === 'live' && hasReceipt(input.receipt);
|
|
148
|
+
if (shouldPublish && item.status !== 'published') {
|
|
149
|
+
try {
|
|
150
|
+
const receiptSummary = summarizeReceipt(input.receipt);
|
|
151
|
+
const surface = {
|
|
152
|
+
name: 'fronts',
|
|
153
|
+
async prepare() {
|
|
154
|
+
return { name: 'fronts', status: 'ok', phase: 'prepare' };
|
|
155
|
+
},
|
|
156
|
+
async commit() {
|
|
157
|
+
return { name: 'fronts', status: 'ok', phase: 'commit', message: receiptSummary };
|
|
158
|
+
},
|
|
159
|
+
};
|
|
160
|
+
const publishedAt = resolveOccurredAtSeconds(input.occurredAt, now);
|
|
161
|
+
const receipt = await publishOne(db, {
|
|
162
|
+
contentId: input.contentId,
|
|
163
|
+
now,
|
|
164
|
+
...(publishedAt !== null ? { publishedAt } : {}),
|
|
165
|
+
createdBy: 'foundry.fronts-publish',
|
|
166
|
+
surfaces: [surface],
|
|
167
|
+
});
|
|
168
|
+
attemptId = receipt.attemptId;
|
|
169
|
+
published = true;
|
|
170
|
+
}
|
|
171
|
+
catch (error) {
|
|
172
|
+
// publishOne can throw when a concurrent/superseding publish already
|
|
173
|
+
// moved the canonical pointer (the item ends up published anyway) — treat
|
|
174
|
+
// that as success. Any other failure is recorded and surfaced loudly.
|
|
175
|
+
const reread = await db
|
|
176
|
+
.prepare('SELECT status FROM content_items WHERE id = ? LIMIT 1')
|
|
177
|
+
.bind(input.contentId)
|
|
178
|
+
.first();
|
|
179
|
+
if (reread?.status === 'published') {
|
|
180
|
+
published = true;
|
|
181
|
+
}
|
|
182
|
+
else {
|
|
183
|
+
ledgerError = error instanceof Error ? error.message : String(error);
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
const incomingOccurredAt = resolveOccurredAtSeconds(input.occurredAt, now);
|
|
188
|
+
// 4. Reflect the lifecycle marker onto the item — but NEVER regress it. A
|
|
189
|
+
// retried/out-of-order `publishing`/`failed` arriving after `live` must not
|
|
190
|
+
// make a published item read as publishing/failed, so gate on occurred_at
|
|
191
|
+
// ordering and the terminal `live`/published state.
|
|
192
|
+
const latestSeenRow = await db
|
|
193
|
+
.prepare('SELECT MAX(occurred_at) AS latest FROM fronts_publish_events WHERE content_id = ? AND occurred_at IS NOT NULL')
|
|
194
|
+
.bind(input.contentId)
|
|
195
|
+
.first();
|
|
196
|
+
if (shouldApplyFrontsMarker(item.status, item.fronts_publish_status, input.status, incomingOccurredAt, latestSeenRow?.latest ?? null)) {
|
|
197
|
+
await db
|
|
198
|
+
.prepare('UPDATE content_items SET fronts_publish_status = ?, updated_at = unixepoch() WHERE id = ?')
|
|
199
|
+
.bind(input.status, input.contentId)
|
|
200
|
+
.run();
|
|
201
|
+
}
|
|
202
|
+
// 5. Record the durable, idempotent event row (the "processed" marker). The
|
|
203
|
+
// dedupe SELECT (step 1) and this INSERT are not one transaction, so two
|
|
204
|
+
// concurrent same-event_id deliveries can both reach here — ON CONFLICT DO
|
|
205
|
+
// NOTHING makes the loser a no-op (never a spurious PK-violation 500), and
|
|
206
|
+
// we then replay the winner's stored outcome. publishOne's own CAS already
|
|
207
|
+
// prevents a double publish.
|
|
208
|
+
const insertResult = await db
|
|
209
|
+
.prepare(`INSERT INTO fronts_publish_events
|
|
210
|
+
(event_id, intent_id, content_id, version, correlation_id, status, occurred_at,
|
|
211
|
+
receipt_json, error, published, attempt_id, received_at)
|
|
212
|
+
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
213
|
+
ON CONFLICT(event_id) DO NOTHING`)
|
|
214
|
+
.bind(input.eventId, input.intentId ?? null, input.contentId, typeof input.version === 'number' && Number.isFinite(input.version)
|
|
215
|
+
? Math.floor(input.version)
|
|
216
|
+
: null, input.correlationId ?? null, input.status, incomingOccurredAt, input.receipt ? JSON.stringify(input.receipt) : null, ledgerError, published ? 1 : 0, attemptId, now)
|
|
217
|
+
.run();
|
|
218
|
+
const changes = insertResult.meta?.changes;
|
|
219
|
+
if (typeof changes === 'number' && changes === 0) {
|
|
220
|
+
// A concurrent callback with the same event_id won the PK race.
|
|
221
|
+
const winner = await readStoredOutcome(db, input.eventId);
|
|
222
|
+
if (winner)
|
|
223
|
+
return winner;
|
|
224
|
+
}
|
|
225
|
+
return {
|
|
226
|
+
ok: ledgerError === null,
|
|
227
|
+
deduped: false,
|
|
228
|
+
status: input.status,
|
|
229
|
+
published,
|
|
230
|
+
attemptId,
|
|
231
|
+
contentFound: true,
|
|
232
|
+
ledgerError,
|
|
233
|
+
};
|
|
234
|
+
}
|
|
235
|
+
/** Replay a stored callback outcome by event_id, or null when not yet recorded. */
|
|
236
|
+
async function readStoredOutcome(db, eventId) {
|
|
237
|
+
const row = await db
|
|
238
|
+
.prepare('SELECT status, published, attempt_id, error FROM fronts_publish_events WHERE event_id = ? LIMIT 1')
|
|
239
|
+
.bind(eventId)
|
|
240
|
+
.first();
|
|
241
|
+
if (!row)
|
|
242
|
+
return null;
|
|
243
|
+
return {
|
|
244
|
+
ok: !row.error,
|
|
245
|
+
deduped: true,
|
|
246
|
+
status: row.status,
|
|
247
|
+
published: row.published === 1,
|
|
248
|
+
attemptId: row.attempt_id,
|
|
249
|
+
contentFound: true,
|
|
250
|
+
ledgerError: row.error,
|
|
251
|
+
};
|
|
252
|
+
}
|
|
253
|
+
/**
|
|
254
|
+
* Whether an incoming callback may overwrite `content_items.fronts_publish_status`.
|
|
255
|
+
* `live` is the authoritative terminal-success marker (always reflected, never
|
|
256
|
+
* downgraded); older-by-occurred_at callbacks may not regress a newer marker.
|
|
257
|
+
*/
|
|
258
|
+
function shouldApplyFrontsMarker(itemStatus, currentMarker, incomingStatus, incomingOccurredAt, latestSeenOccurredAt) {
|
|
259
|
+
if (incomingStatus === 'live')
|
|
260
|
+
return true;
|
|
261
|
+
if (itemStatus === 'published' || currentMarker === 'live')
|
|
262
|
+
return false;
|
|
263
|
+
if (incomingOccurredAt !== null &&
|
|
264
|
+
latestSeenOccurredAt !== null &&
|
|
265
|
+
incomingOccurredAt < latestSeenOccurredAt) {
|
|
266
|
+
return false;
|
|
267
|
+
}
|
|
268
|
+
return true;
|
|
269
|
+
}
|
|
270
|
+
/** Bounded, human-readable receipt digest recorded on the ledger surface receipt. */
|
|
271
|
+
function summarizeReceipt(receipt) {
|
|
272
|
+
if (!receipt)
|
|
273
|
+
return 'fronts:live';
|
|
274
|
+
const parts = [];
|
|
275
|
+
if (Array.isArray(receipt.published_urls) && receipt.published_urls.length > 0) {
|
|
276
|
+
parts.push(`urls=${receipt.published_urls.length}`);
|
|
277
|
+
}
|
|
278
|
+
if (Array.isArray(receipt.platform_post_ids) && receipt.platform_post_ids.length > 0) {
|
|
279
|
+
parts.push(`posts=${receipt.platform_post_ids.length}`);
|
|
280
|
+
}
|
|
281
|
+
if (typeof receipt.sha256 === 'string' && receipt.sha256.trim()) {
|
|
282
|
+
parts.push(`sha256=${receipt.sha256.trim().slice(0, 64)}`);
|
|
283
|
+
}
|
|
284
|
+
return `fronts:live ${parts.join(' ')}`.trim().slice(0, 500);
|
|
285
|
+
}
|
|
286
|
+
//# sourceMappingURL=fronts-publish.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fronts-publish.js","sourceRoot":"","sources":["../../src/engine/fronts-publish.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,kCAAkC;AAClC,EAAE;AACF,2EAA2E;AAC3E,EAAE;AACF,+EAA+E;AAC/E,gFAAgF;AAChF,0EAA0E;AAC1E,8EAA8E;AAC9E,iFAAiF;AACjF,sEAAsE;AACtE,mDAAmD;AACnD,EAAE;AACF,8EAA8E;AAC9E,+EAA+E;AAC/E,+EAA+E;AAC/E,0EAA0E;AAC1E,qEAAqE;AACrE,2EAA2E;AAC3E,mDAAmD;AACnD,EAAE;AACF,8EAA8E;AAC9E,gFAAgF;AAChF,+EAA+E;AAC/E,4BAA4B;AAI5B,OAAO,EAA8B,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAEzE,8EAA8E;AAC9E,MAAM,CAAC,MAAM,uBAAuB,GAAmC;IACtE,QAAQ;IACR,YAAY;IACZ,MAAM;IACN,MAAM;IACN,QAAQ;CACC,CAAA;AAEV,MAAM,UAAU,qBAAqB,CAAC,KAAc;IACnD,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAK,uBAAoC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;AAC1F,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,sBAAsB,CAAC,GAAwC;IAC9E,MAAM,GAAG,GAAG,GAAG,EAAE,sBAAsB,CAAA;IACvC,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,IAAI,CAAA;IAClD,IAAI,OAAO,GAAG,KAAK,SAAS;QAAE,OAAO,GAAG,CAAA;IACxC,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,GAAG,KAAK,CAAC,CAAA;IAC7C,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC7B,OAAO,CAAC,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAA;IACvE,CAAC;IACD,OAAO,IAAI,CAAA;AACZ,CAAC;AA2BD;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC9C,EAAc,EACd,OAAyC;IAEzC,MAAM,GAAG,GAAG,OAAO,CAAC,UAAU,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,CAAA;IAChE,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,IAAI,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;IAC3E,MAAM,MAAM,GAAG,MAAM,EAAE;SACrB,OAAO,CACP;;;;;;YAMS,CACT;SACA,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC;SAC9B,GAAG,EAQA,CAAA;IACL,OAAO,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAC3C,EAAE,EAAE,GAAG,CAAC,EAAE;QACV,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,SAAS,EAAE,GAAG,CAAC,UAAU;QACzB,mBAAmB,EAAE,GAAG,CAAC,qBAAqB;QAC9C,OAAO,EAAE,GAAG,CAAC,UAAU,IAAI,GAAG;KAC9B,CAAC,CAAC,CAAA;AACJ,CAAC;AAuCD,SAAS,UAAU,CAAC,OAAgD;IACnE,IAAI,CAAC,OAAO;QAAE,OAAO,KAAK,CAAA;IAC1B,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,OAAO,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAA;IACvF,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,OAAO,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAA;IAC5F,MAAM,GAAG,GAAG,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAA;IAClF,OAAO,IAAI,IAAI,GAAG,IAAI,GAAG,CAAA;AAC1B,CAAC;AAED,iFAAiF;AACjF,SAAS,wBAAwB,CAChC,UAA8C,EAC9C,GAAW;IAEX,IAAI,OAAO,GAAkB,IAAI,CAAA;IACjC,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QACnE,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;IACjC,CAAC;SAAM,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC;QAChE,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;QACjC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;YAAE,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,KAAK,CAAC,CAAA;IACxD,CAAC;IACD,IAAI,OAAO,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,OAAO,GAAG,CAAC;QAAE,OAAO,IAAI,CAAA;IAClF,4EAA4E;IAC5E,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAA;AAC9B,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC/C,EAAc,EACd,KAAiC;IAEjC,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,CAAA;IAEvD,mEAAmE;IACnE,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,EAAE,EAAE,KAAK,CAAC,OAAO,CAAC,CAAA;IAC3D,IAAI,QAAQ;QAAE,OAAO,QAAQ,CAAA;IAE7B,6EAA6E;IAC7E,sCAAsC;IACtC,MAAM,IAAI,GAAG,MAAM,EAAE;SACnB,OAAO,CAAC,kFAAkF,CAAC;SAC3F,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;SACrB,KAAK,EAAqF,CAAA;IAC5F,IAAI,CAAC,IAAI,EAAE,CAAC;QACX,OAAO;YACN,EAAE,EAAE,KAAK;YACT,OAAO,EAAE,KAAK;YACd,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,SAAS,EAAE,KAAK;YAChB,SAAS,EAAE,IAAI;YACf,YAAY,EAAE,KAAK;YACnB,WAAW,EAAE,IAAI;SACjB,CAAA;IACF,CAAC;IAED,6EAA6E;IAC7E,wEAAwE;IACxE,4EAA4E;IAC5E,gEAAgE;IAChE,IAAI,SAAS,GAAG,IAAI,CAAC,MAAM,KAAK,WAAW,CAAA;IAC3C,IAAI,SAAS,GAAkB,IAAI,CAAA;IACnC,IAAI,WAAW,GAAkB,IAAI,CAAA;IACrC,MAAM,aAAa,GAAG,KAAK,CAAC,MAAM,KAAK,MAAM,IAAI,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IAC1E,IAAI,aAAa,IAAI,IAAI,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;QAClD,IAAI,CAAC;YACJ,MAAM,cAAc,GAAG,gBAAgB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YACtD,MAAM,OAAO,GAA0B;gBACtC,IAAI,EAAE,QAAQ;gBACd,KAAK,CAAC,OAAO;oBACZ,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAA;gBAC1D,CAAC;gBACD,KAAK,CAAC,MAAM;oBACX,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,cAAc,EAAE,CAAA;gBAClF,CAAC;aACD,CAAA;YACD,MAAM,WAAW,GAAG,wBAAwB,CAAC,KAAK,CAAC,UAAU,EAAE,GAAG,CAAC,CAAA;YACnE,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,EAAE,EAAE;gBACpC,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,GAAG;gBACH,GAAG,CAAC,WAAW,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAChD,SAAS,EAAE,wBAAwB;gBACnC,QAAQ,EAAE,CAAC,OAAO,CAAC;aACnB,CAAC,CAAA;YACF,SAAS,GAAG,OAAO,CAAC,SAAS,CAAA;YAC7B,SAAS,GAAG,IAAI,CAAA;QACjB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,qEAAqE;YACrE,0EAA0E;YAC1E,sEAAsE;YACtE,MAAM,MAAM,GAAG,MAAM,EAAE;iBACrB,OAAO,CAAC,uDAAuD,CAAC;iBAChE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;iBACrB,KAAK,EAAsB,CAAA;YAC7B,IAAI,MAAM,EAAE,MAAM,KAAK,WAAW,EAAE,CAAC;gBACpC,SAAS,GAAG,IAAI,CAAA;YACjB,CAAC;iBAAM,CAAC;gBACP,WAAW,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YACrE,CAAC;QACF,CAAC;IACF,CAAC;IAED,MAAM,kBAAkB,GAAG,wBAAwB,CAAC,KAAK,CAAC,UAAU,EAAE,GAAG,CAAC,CAAA;IAE1E,0EAA0E;IAC1E,+EAA+E;IAC/E,6EAA6E;IAC7E,uDAAuD;IACvD,MAAM,aAAa,GAAG,MAAM,EAAE;SAC5B,OAAO,CACP,+GAA+G,CAC/G;SACA,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;SACrB,KAAK,EAA6B,CAAA;IACpC,IACC,uBAAuB,CACtB,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,qBAAqB,EAC1B,KAAK,CAAC,MAAM,EACZ,kBAAkB,EAClB,aAAa,EAAE,MAAM,IAAI,IAAI,CAC7B,EACA,CAAC;QACF,MAAM,EAAE;aACN,OAAO,CACP,2FAA2F,CAC3F;aACA,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC;aACnC,GAAG,EAAE,CAAA;IACR,CAAC;IAED,4EAA4E;IAC5E,4EAA4E;IAC5E,8EAA8E;IAC9E,8EAA8E;IAC9E,8EAA8E;IAC9E,gCAAgC;IAChC,MAAM,YAAY,GAAG,MAAM,EAAE;SAC3B,OAAO,CACP;;;;qCAIkC,CAClC;SACA,IAAI,CACJ,KAAK,CAAC,OAAO,EACb,KAAK,CAAC,QAAQ,IAAI,IAAI,EACtB,KAAK,CAAC,SAAS,EACf,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC;QAClE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC;QAC3B,CAAC,CAAC,IAAI,EACP,KAAK,CAAC,aAAa,IAAI,IAAI,EAC3B,KAAK,CAAC,MAAM,EACZ,kBAAkB,EAClB,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,EACpD,WAAW,EACX,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EACjB,SAAS,EACT,GAAG,CACH;SACA,GAAG,EAAE,CAAA;IAEP,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,EAAE,OAAO,CAAA;IAC1C,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,CAAC,EAAE,CAAC;QAClD,gEAAgE;QAChE,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,EAAE,EAAE,KAAK,CAAC,OAAO,CAAC,CAAA;QACzD,IAAI,MAAM;YAAE,OAAO,MAAM,CAAA;IAC1B,CAAC;IAED,OAAO;QACN,EAAE,EAAE,WAAW,KAAK,IAAI;QACxB,OAAO,EAAE,KAAK;QACd,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,SAAS;QACT,SAAS;QACT,YAAY,EAAE,IAAI;QAClB,WAAW;KACX,CAAA;AACF,CAAC;AAED,mFAAmF;AACnF,KAAK,UAAU,iBAAiB,CAC/B,EAAc,EACd,OAAe;IAEf,MAAM,GAAG,GAAG,MAAM,EAAE;SAClB,OAAO,CACP,mGAAmG,CACnG;SACA,IAAI,CAAC,OAAO,CAAC;SACb,KAAK,EAKF,CAAA;IACL,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAA;IACrB,OAAO;QACN,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK;QACd,OAAO,EAAE,IAAI;QACb,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,SAAS,EAAE,GAAG,CAAC,SAAS,KAAK,CAAC;QAC9B,SAAS,EAAE,GAAG,CAAC,UAAU;QACzB,YAAY,EAAE,IAAI;QAClB,WAAW,EAAE,GAAG,CAAC,KAAK;KACtB,CAAA;AACF,CAAC;AAED;;;;GAIG;AACH,SAAS,uBAAuB,CAC/B,UAAkB,EAClB,aAAyC,EACzC,cAAmC,EACnC,kBAAiC,EACjC,oBAAmC;IAEnC,IAAI,cAAc,KAAK,MAAM;QAAE,OAAO,IAAI,CAAA;IAC1C,IAAI,UAAU,KAAK,WAAW,IAAI,aAAa,KAAK,MAAM;QAAE,OAAO,KAAK,CAAA;IACxE,IACC,kBAAkB,KAAK,IAAI;QAC3B,oBAAoB,KAAK,IAAI;QAC7B,kBAAkB,GAAG,oBAAoB,EACxC,CAAC;QACF,OAAO,KAAK,CAAA;IACb,CAAC;IACD,OAAO,IAAI,CAAA;AACZ,CAAC;AAED,qFAAqF;AACrF,SAAS,gBAAgB,CAAC,OAAgD;IACzE,IAAI,CAAC,OAAO;QAAE,OAAO,aAAa,CAAA;IAClC,MAAM,KAAK,GAAa,EAAE,CAAA;IAC1B,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,OAAO,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChF,KAAK,CAAC,IAAI,CAAC,QAAQ,OAAO,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,CAAA;IACpD,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,OAAO,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtF,KAAK,CAAC,IAAI,CAAC,SAAS,OAAO,CAAC,iBAAiB,CAAC,MAAM,EAAE,CAAC,CAAA;IACxD,CAAC;IACD,IAAI,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;QACjE,KAAK,CAAC,IAAI,CAAC,UAAU,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAA;IAC3D,CAAC;IACD,OAAO,eAAe,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;AAC7D,CAAC"}
|
package/dist/engine/index.d.ts
CHANGED
|
@@ -9,6 +9,8 @@ export { type ContributorInput, type ContributorRecord, listContributors, setCon
|
|
|
9
9
|
export { runScheduledPublish, type ScheduledPublishResult } from './cron.js';
|
|
10
10
|
export type { D1Database, D1DatabaseSession, D1PreparedStatement, D1Result } from './d1.js';
|
|
11
11
|
export { applyFoundryCallback, type CallbackInput, type DispatchResult, dispatchToFoundry, type ProcessingState, verifyHmac, } from './foundry-dispatch.js';
|
|
12
|
+
export { applyFrontsPublishCallback, FRONTS_PUBLISH_STATUSES, type FrontsPublishCallbackInput, type FrontsPublishCallbackResult, type FrontsPublishReceipt, type FrontsScheduleItem, isFrontsPublishEnabled, isFrontsPublishStatus, type ListFrontsPublishScheduleOptions, listFrontsPublishSchedule, } from './fronts-publish.js';
|
|
13
|
+
export { armFrontsPublishTriggerToken, type FrontsPublishContentRefs, type FrontsPublishIntent, FrontsPublishIntentError, type FrontsPublishIntentErrorCode, type FrontsPublishIntentFailure, frontsPublishTriggerTokenHash, type HydrateFrontsPublishIntentsResult, hydrateFrontsPublishIntents, setFrontsChannelTargets, } from './fronts-publish-intent.js';
|
|
12
14
|
export { htmlToMarkdown, type ParsedImportItem, parseGhost, parseMarkdown, parseSubstackCsv, } from './import-parsers.js';
|
|
13
15
|
export { type AcceptInviteInput, acceptInvite, type CreateInviteInput, type CreateInviteResult, createInvite, hashInviteToken, type InviteRecord, loadInviteByToken, } from './invites.js';
|
|
14
16
|
export { listMembers, loadMembership, type MemberListEntry, type MembershipRecord, removeMember, setRole, type UpsertMastheadUserInput, upsertMastheadUser, } from './members.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/engine/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/engine/index.ts"],"names":[],"mappings":"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"}
|
package/dist/engine/index.js
CHANGED
|
@@ -21,6 +21,11 @@ export { listContributors, setContributors, } from './contributors.js';
|
|
|
21
21
|
export { runScheduledPublish } from './cron.js';
|
|
22
22
|
// Foundry dispatch + HMAC callback engine (P3 Task 5 / bead-08).
|
|
23
23
|
export { applyFoundryCallback, dispatchToFoundry, verifyHmac, } from './foundry-dispatch.js';
|
|
24
|
+
// Fronts publish path — schedule poll + publish-callback receiver (additive, flag-gated).
|
|
25
|
+
export { applyFrontsPublishCallback, FRONTS_PUBLISH_STATUSES, isFrontsPublishEnabled, isFrontsPublishStatus, listFrontsPublishSchedule, } from './fronts-publish.js';
|
|
26
|
+
// Canonical Fronts publish INTENT contract — the CMS-owned canonical values a
|
|
27
|
+
// pull consumer needs to build a complete publish intent (packages#500).
|
|
28
|
+
export { armFrontsPublishTriggerToken, FrontsPublishIntentError, frontsPublishTriggerTokenHash, hydrateFrontsPublishIntents, setFrontsChannelTargets, } from './fronts-publish-intent.js';
|
|
24
29
|
// Import parsers — pure string→struct transforms for Markdown/Ghost/Substack.
|
|
25
30
|
export { htmlToMarkdown, parseGhost, parseMarkdown, parseSubstackCsv, } from './import-parsers.js';
|
|
26
31
|
// Invite engine — workspace_invites (P7 Task 5).
|
package/dist/engine/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/engine/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/engine/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"publisher.d.ts","sourceRoot":"","sources":["../../src/engine/publisher.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,EAAE,KAAK,eAAe,EAA4B,MAAM,uBAAuB,CAAA;AACtF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"publisher.d.ts","sourceRoot":"","sources":["../../src/engine/publisher.ts"],"names":[],"mappings":"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"}
|
package/dist/engine/publisher.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { serializeContentMetadata } from './content-metadata.js';
|
|
2
|
+
import { armFrontsPublishTriggerToken } from './fronts-publish-intent.js';
|
|
2
3
|
import { evaluateArticleBody } from './publish-guard.js';
|
|
3
4
|
import { slugify } from './slug.js';
|
|
4
5
|
import { MAX_ITEM_TAG_COUNT, validateDeclaredTagList, validateStoredTaxonomyRows, } from './taxonomy.js';
|
|
@@ -501,7 +502,13 @@ export async function updateContentItem(db, id, input) {
|
|
|
501
502
|
ai_locked_fields = ?,
|
|
502
503
|
seo_focus_keyword = ?,
|
|
503
504
|
metadata_json = ?,
|
|
504
|
-
updated_at = unixepoch()
|
|
505
|
+
updated_at = unixepoch(),
|
|
506
|
+
-- The canonical revision counter behind the Fronts publish intent id
|
|
507
|
+
-- masthead:<content_id>:<version> (migration 0027). This is the ONE seam
|
|
508
|
+
-- that advances it, so an intent identity changes exactly when the item's
|
|
509
|
+
-- canonical content does -- and never on a fronts_publish_status marker
|
|
510
|
+
-- write or a schedule poll.
|
|
511
|
+
canonical_version = canonical_version + 1
|
|
505
512
|
WHERE id = ?
|
|
506
513
|
`)
|
|
507
514
|
.bind(slug, title, seoTitle, description, excerpt, byline, primaryCategory, primaryTopic, featured, visibility, authorId, heroImageId, heroImageAlt, heroImageCaption, socialImageId, canonicalUrl, aiLockedFields, seoFocusKeyword, metadataJson, id)
|
|
@@ -636,6 +643,12 @@ export async function scheduleContent(db, id, publishAt, publishTz = 'Europe/Par
|
|
|
636
643
|
.prepare(`UPDATE content_items SET status = 'scheduled', publish_at = ?, publish_tz = ?, updated_at = unixepoch() WHERE id = ?`)
|
|
637
644
|
.bind(publishAt, publishTz, id)
|
|
638
645
|
.run();
|
|
646
|
+
// Arming an item for the additive Fronts publish path happens HERE — the one
|
|
647
|
+
// seam through which an item becomes `scheduled` with a `publish_at`. The mint
|
|
648
|
+
// is compare-and-set and never rotates an existing token, so an item's
|
|
649
|
+
// `trigger_token_hash` is stable across reschedules and across every poll.
|
|
650
|
+
// The raw token stays in D1; only `sha256:<hex>` is ever exposed.
|
|
651
|
+
await armFrontsPublishTriggerToken(db, id);
|
|
639
652
|
}
|
|
640
653
|
export async function evaluateContentBodyForPublish(db, id, source) {
|
|
641
654
|
const row = await db
|
|
@@ -725,6 +738,13 @@ export async function duplicateContentItem(db, sourceId) {
|
|
|
725
738
|
// — a duplicate should keep the SEO work already done on the source. But
|
|
726
739
|
// board_position is the source item's slot in the editorial board ordering;
|
|
727
740
|
// a fresh draft copy must NOT inherit it, so it is reset to NULL.
|
|
741
|
+
//
|
|
742
|
+
// The migration-0027 Fronts publish columns are DELIBERATELY omitted so the
|
|
743
|
+
// copy takes their defaults: canonical_version = 1 (a new item starts its own
|
|
744
|
+
// revision line), fronts_channel_targets = NULL and
|
|
745
|
+
// fronts_publish_trigger_token = NULL (a distinct item must be armed on its
|
|
746
|
+
// own and must never inherit another item's publish trigger token). Do not
|
|
747
|
+
// add them to the column list.
|
|
728
748
|
await db
|
|
729
749
|
.prepare(`INSERT INTO content_items (
|
|
730
750
|
id, type, status, visibility, slug, title, seo_title, description, excerpt,
|