@taprootio/site-authoring 0.12.5 → 0.12.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/package.json +1 -1
- package/src/delivery-check.js +2 -11
- package/src/reference-help.js +3 -4
- package/src/verbs/delivery-check.js +0 -7
package/README.md
CHANGED
|
@@ -537,8 +537,8 @@ completed deployment for the target, HTTP delivery of the authored routes and
|
|
|
537
537
|
the favicon, images, module preloads and site bundle they declare (status and
|
|
538
538
|
content type, no redirects followed), internal link targets, accidental
|
|
539
539
|
local-only references, and the pinned runtime — the version the page names,
|
|
540
|
-
its entry module and the capability modules the page declares
|
|
541
|
-
|
|
540
|
+
its entry module and the capability modules the page declares (a page that
|
|
541
|
+
pins no runtime version and entry fails the runtime check). The
|
|
542
542
|
browser dimension (a fresh and a returning load
|
|
543
543
|
compared against the page's pinned entry, every document request in the browser,
|
|
544
544
|
popups included, held to the site origin before it is sent, and cache reuse
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@taprootio/site-authoring",
|
|
3
|
-
"version": "0.12.
|
|
3
|
+
"version": "0.12.6",
|
|
4
4
|
"description": "Taproot site authoring CLI: sign in once in the browser, then pull, validate, push, preview, approve, and deploy a site from the terminal",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "ISC",
|
package/src/delivery-check.js
CHANGED
|
@@ -205,8 +205,6 @@ export function parseBootstrap(html) {
|
|
|
205
205
|
return {
|
|
206
206
|
version: text(parsed.version).slice(0, 64),
|
|
207
207
|
entry: text(parsed.entry),
|
|
208
|
-
// A release published before runtime pinning named a mutable pointer instead.
|
|
209
|
-
legacyPointer: typeof parsed.runtimeManifestUrl === "string" && parsed.runtimeManifestUrl !== "",
|
|
210
208
|
siteBundleUrl: text(parsed.siteBundleUrl),
|
|
211
209
|
runtimeCapabilities,
|
|
212
210
|
capabilities,
|
|
@@ -506,9 +504,6 @@ async function observe(context, origin, sampledRoutes) {
|
|
|
506
504
|
}
|
|
507
505
|
}
|
|
508
506
|
runtime.pinned = runtime.version !== "" && Boolean(bootstrap?.entry);
|
|
509
|
-
// Such a page still loads in a browser, but this check no longer reads the
|
|
510
|
-
// pointer, so its runtime is reported unverified rather than as passed or failed.
|
|
511
|
-
runtime.legacy = !runtime.pinned && Boolean(bootstrap?.legacyPointer);
|
|
512
507
|
const entryUrl = runtime.pinned ? admit(bootstrap.entry) : undefined;
|
|
513
508
|
if (entryUrl) {
|
|
514
509
|
const { row } = await probe(context, entryUrl.href, "runtime-entry");
|
|
@@ -570,10 +565,7 @@ async function observe(context, origin, sampledRoutes) {
|
|
|
570
565
|
...assetResults.filter((row) => !row.ok).map((row) => `${row.kind} ${row.url}: ${row.failure}`),
|
|
571
566
|
...linkResults.filter((row) => !row.ok).map((row) => `link ${row.path}: ${row.failure}`),
|
|
572
567
|
...(runtime.declared ? [] : ["runtime: the home page declares no runtime bootstrap"]),
|
|
573
|
-
...(runtime.declared && runtime.
|
|
574
|
-
? ["runtime: the page names a pre-pinning runtime pointer, which is not verified here; republish the site so it pins a runtime version"]
|
|
575
|
-
: []),
|
|
576
|
-
...(runtime.declared && !runtime.pinned && !runtime.legacy
|
|
568
|
+
...(runtime.declared && !runtime.pinned
|
|
577
569
|
? ["runtime: the page does not pin a runtime version and entry"]
|
|
578
570
|
: []),
|
|
579
571
|
...(runtime.declared && runtime.pinned && !runtime.entry.ok
|
|
@@ -677,7 +669,7 @@ export async function checkDelivery({
|
|
|
677
669
|
|
|
678
670
|
const verdict = observed.failuresTotal === 0
|
|
679
671
|
? "delivered"
|
|
680
|
-
: observed.routeRows.every((row) => row.ok) &&
|
|
672
|
+
: observed.routeRows.every((row) => row.ok) && observed.runtime.compatible
|
|
681
673
|
? "degraded"
|
|
682
674
|
: "failed";
|
|
683
675
|
const report = {
|
|
@@ -757,7 +749,6 @@ function withinOutputBudget(report, failuresTotal) {
|
|
|
757
749
|
declared: runtime.declared,
|
|
758
750
|
version: runtime.version,
|
|
759
751
|
pinned: runtime.pinned,
|
|
760
|
-
legacy: runtime.legacy,
|
|
761
752
|
capabilities: runtime.capabilities.length,
|
|
762
753
|
capabilitiesResolvable: runtime.capabilitiesResolvable,
|
|
763
754
|
compatible: runtime.compatible,
|
package/src/reference-help.js
CHANGED
|
@@ -480,8 +480,7 @@ const WORKFLOW_REFERENCES = Object.freeze({
|
|
|
480
480
|
+ "image fails.",
|
|
481
481
|
"Runtime: the page's bootstrap pins one runtime version, its entry module and the module each declared "
|
|
482
482
|
+ "capability resolves to. The entry must load as JavaScript and every declared capability must resolve and "
|
|
483
|
-
+ "load. A page
|
|
484
|
-
+ "degraded, until the site is republished.",
|
|
483
|
+
+ "load. A page whose bootstrap does not pin a runtime version and entry fails the runtime check.",
|
|
485
484
|
"Browser: a fresh and a returning (same-context, cached) load are compared against the page's pinned entry when "
|
|
486
485
|
+ "Playwright resolves from the CLI's own install: npm install --global @taprootio/site-authoring@latest "
|
|
487
486
|
+ "playwright && npx playwright install chromium, then rerun through the installed taproot-site command (a "
|
|
@@ -505,8 +504,8 @@ const WORKFLOW_REFERENCES = Object.freeze({
|
|
|
505
504
|
+ "not delivery), local-only references (localhost, *.test, *.local) are reported rather than fetched, a "
|
|
506
505
|
+ "redirect Location that could reflect a credential is withheld, bodies are read up to a fixed bound, "
|
|
507
506
|
+ "member-only content is not exercised, and nothing is purged, republished or rolled back.",
|
|
508
|
-
"Verdicts: delivered (no findings), degraded (every route served and the runtime is compatible
|
|
509
|
-
+ "
|
|
507
|
+
"Verdicts: delivered (no findings), degraded (every route served and the runtime is compatible, "
|
|
508
|
+
+ "but an asset, link or browser load did not match), failed (a route or the runtime did not deliver).",
|
|
510
509
|
]),
|
|
511
510
|
example: Object.freeze({
|
|
512
511
|
command: `${CLI_BINARY_NAME} delivery check --production --url https://www.example.com/ --wait 30`,
|
|
@@ -156,13 +156,6 @@ export async function deliveryCheck(invocation) {
|
|
|
156
156
|
let browser;
|
|
157
157
|
if (invocation.browser === false) {
|
|
158
158
|
browser = { status: "unchecked", reason: "disabled", note: "Browser verification was not requested." };
|
|
159
|
-
} else if (report.runtime.legacy) {
|
|
160
|
-
// There is no pinned entry to compare a browser load against.
|
|
161
|
-
browser = {
|
|
162
|
-
status: "unchecked",
|
|
163
|
-
reason: "legacy_runtime_reference",
|
|
164
|
-
note: "The page names a pre-pinning runtime pointer, so no entry is pinned to compare a browser load against; republish the site and rerun.",
|
|
165
|
-
};
|
|
166
159
|
} else {
|
|
167
160
|
onProgress("Browser dimension: probing with Playwright when it is installed.");
|
|
168
161
|
browser = await probeDeliveryWithBrowser({
|