SLIPWAY · build harness

← all builds

the-crab-bag-2026 (the-crab-bag-2026)

Repo the-crab-bag/the-crab-bag-2026 · Origin buildout · Owner dan@d3corp.com · Reference coastal-hospice-wpe-2026 (house starter source)

27%
complete — toward launch-ready
8/30
dimensions green
18/18
buildout gates
6/6
page fidelity
8
open P0
2/4
client axis · design · forms · content · sign-off
29
agent steps open
7
human actions
— builder drives the loop; the referee adjudicates fidelity in a separate fresh session
INTAKE
EXTRACT
ASSEMBLE
QA_LOOP
STAGING
AUDIT
LIVE
REFINE

Build & audit spec

Paste images or drop files anywhere ↑ — added as references your local agent resolves.

Design flats — siteupdates.com

No siteupdates.com project matched this build (tried the build id, repo, display name and year-stripped variants).

Client axis: the 4 things a client judges on

✅ design: Matches the approved design on every contracted route (referee-adjudicated, staging)
6/6 routes referee-passed on staging + 27 flat sections present
❌ forms: Every form is real, routes to a real inbox, and was proven on staging
dimension 19 (Forms) not green on staging: post /agent/<id>/form-config with the GF + SMTP inventory
✅ content: Zero placeholder copy, em-dashes or dead CTAs on any published route
23 routes content-scanned clean
❌ signoff: Finish sign-off recorded by the owner (client-axis review done)
owner finish sign-off not recorded
, you reviewed staging the way the client will: design incl. photography, forms, every word, finished feel

Evidence comes from the referee (design), dimension 19 + slipway's form scan (forms), slipway's content scan (content): run Verify to refresh scans: and the owner (sign-off). An essential is never deferred.

Action required

🧑 Client written approval of the Figma layouts (design lock is D3-internal only) owner — Lock recorded 2026-09-15 against Figma eDbUoJOEU08K5CcmWw2vJK (7 flats sha-pinned). Record who at The Crab Bag approved and where (email/PM job) before launch.
🧑 Client to supply: 3 Bars copy, full 2026 menu, product catalog + prices + shipping, product descriptions, FAQ answers, Pages Google Doc access owner — Figma has Lorem ipsum in the 3 Bars body and the product description; Menu frame repeats Starters/Seafood under Chicken/Ribs; site menu PDF is 404; store has gift cards only. Never ship stubs (client axis).
🧑 Gate 11 failing: Security headers ops — Two of ten applicable headers are correct. HSTS and CSP are both absent on all 17 routes and on static assets, Referrer-Policy and Permissions-Policy are absent, X-XSS-Protection is set to the deprecated 1; mode=block, and both the nginx and PHP version banners leak. Every fix is an ops change in deploy-config: the existing headers are emitted by the nginx vhost (they appear on .css and .webp responses that never reach PHP), not by the theme or by either security plugin. Checks: Grepped all 17 raw/html-snapshots/*.headers.txt for HSTS, CSP, X-Frame-Options, X-Content-Type-Options, X-XSS-Protection, Referrer-Policy, Permissions-Policy, Cross-Origin-*; Live header probe on a CSS asset and an uploads WebP asset to separate nginx-emitted from PHP-emitted headers; Grepped the theme (functions.php, inc/*.php, all templates) for header() and send_headers; Grepped every plugin tree for X-Frame-O
🧑 Gate 20 failing: Media / CDN ops — There is no CDN. Every image is served from the container's local disk with no Cache-Control header at all. webp-express is active but inert on this nginx stack, so WebP only reaches users because every source image was uploaded a second time by hand as a .webp twin, leaving 141 orphaned JPEG and PNG files that are 74% of the uploads tree. Not one of the 38 media library images has alt text. Markup hygiene is good: width, height, srcset, sizes and decoding are on everything and the LCP hero is correctly excluded from lazy loading. Checks: curl with Accept: image/webp and Accept: */* against four upload URLs, comparing Content-Type, byte count and Vary; full response header dump for an image and a theme CSS file; site-wide grep for website-media.com and cloudfront.net across all 17 snapshots; container inspection of wp-content/uploads, wp-content/webp-express and uploads .htaccess.
🧑 Gate 21 failing: Email deliverability owner — wp-mail-smtp is active but set to PHP mail() with no relay, and it force-rewrites every From address to dan@d3corp.com, so the site will send as a d3corp.com sender from a container IP that d3corp.com's SPF does not list. The real public domain thecrabbag.com publishes SPF and Google Workspace MX but has no DMARC record and no DKIM key on any of twelve probed selectors. No address on thecrabbag.com is configured anywhere as a sender. Checks: dig +short A / MX / TXT for thecrabbag.com and d3corp.com; dig +short TXT _dmarc for both domains; DKIM selector probe on thecrabbag.com and d3corp.com: default, s1, s2, google, k1, selector1, selector2, mail, dkim, sendgrid, smtp, em; wp_mail_smtp option dump (mailer, from_email, from_name, force flags, return_path).
🧑 Gate 24 failing: Infrastructure ops — The staging container itself is healthy (305.7 MiB of a 2 GiB cap, zero restarts, never OOM-killed) but it sits on a conch root filesystem that is 99 percent full, and its 35 MB of uploads exist only on that disk with no S3 offload and no git tracking. Production is specified but not placeable: production.yml names no host, no www alias, no redirect map, and moves the database to a different RDS instance than the live site uses. Checks: docker stats + docker inspect on the-crab-bag_the-crab-bag-2026_stable (memory limit, restart count, OOMKilled, CPU limit, restart policy, mounts); conch host df, free, container count; deploy-config origin/master read of the-crab-bag/the-crab-bag-2026 _config.yml, staging.yml, production.yml; deploy-config read of the legacy the-crab-bag/the-crab-bag-site production.yml for comparison.
🧑 Gate 29 failing: Build / Deploy ops — There is no CI of any kind: no .gitlab-ci.yml, no .github directory, nothing lints PHP or compiles SCSS. The compiled CSS is built by hand on a laptop and committed, and a stale source map is tracked that the documented build command can never regenerate. Deploys rsync in place into the live document root with no releases directory, no tags and no documented rollback. Environment separation is otherwise clean (env.php is generated at deploy and gitignored, no secrets are committed) except that the production and staging database passwords are the same string. Checks: repo tree scan for .gitlab-ci.yml, .github, composer.json, composer.lock, auth.json; git branch -a, git log, git rev-list --left-right --count https/main...stable; git ls-files for node_modules, compiled CSS, lock files, credential-shaped paths; package.json scripts, .nvmrc, bs-config.js read.

Gate board — 30 dimensions

not launch-readysystem 6/26project 2/4

Green dimensions are collapsed; anything incomplete is expanded. Launch-ready = all 30 dimensions green, verified on staging (local-only greens don't count), 0 open P0, AND the four client-axis essentials (design match · working forms · real content · owner sign-off): a query, not a call.

system tier · 6/26 green
standards
✓ 2. Theme infrastructure (11/13)buildout-verify
– Pretty CPT taxonomy permalinks @staging — specials/menu items have no public single or taxonomy URLs by design (rendered inside /specials/ and /menu/)
– Personnel order via menu_order @staging — no personnel CPT in this brief
✓ CPT body editor support ('editor' in supports) @staging — special + menu_item CPTs: body copy is an ACF wysiwyg (media upload) per the brief; title/page-attributes/revisions supported; no public singles by design
✓ Nav menus assigned + populated in wp-admin @staging — Header Menu (5), Footer Menu (4), Site Map (9) assigned to header-menu/footer-menu/sitemap-menu
✓ Customizer integration (logo/accent/footer/social) @staging — customize_register (Google Maps key, outline color) + custom-logo; Theme Settings via ACF options page
✓ Widget areas registered (Footer 1-4 + Blog Sidebar) @staging — register_sidebar (Sidebar Right)
✓ Image sizes registered (add_image_size crops) @staging — add_image_size qhd/full_hd/large_high
✓ Theme supports flags complete @staging — add_theme_support in inc/theme-customizations.php: title-tag, post-thumbnails, custom-logo, custom-header, html5, automatic-feed-links, woocommerce (align-wide n/a: block editor disabled by the starter)
✓ Archive pagination present @staging — bootstrap_pagination in index.php / category.php / search.php
✓ Office addresses in Theme Options @staging — address/phones/hours in Theme Settings (options), no hardcoded offices
✓ FAQ in ACF repeater / FAQ CPT @staging — FAQ via D3 FAQ Standard field groups + d3-faq-bridge
✓ Footer attribution in Theme Options @staging — copyright/credit from Theme Settings (copyright wysiwyg with @year)
✓ House stack conformance: the stack the web team finishes + maintains in @staging — d3-house-2026: score 100: conforms
↪ /buildout Phase 14.5 — theme infrastructure defaults
✓ 3. Asset hygiene (1/1)asset-validate
✓ Image artifact pre-flight scan (asset-validate.py) @staging — asset-validate.py over the 18 Figma exports: bottom_text_strip flags on photo-selection.png (the Get Hammered logo art, text is the artwork) and on the 5 product mockup thumbs (not used on the site); no baked cursors/hover states/artifacts in the photos actually placed (hero, tiles, crab box, plate, drinks, wood)
↪ /buildout Phase 5 + _tools/asset-validate.py
✓ 5. Schema / structured data (1/1)schema-validate
✓ JSON-LD complete + valid on every route @staging — schema-validate.py 2026-09-16: 8/8 routes clean (/, /about/, /specials/, /menu/, /shop/, /contact/, /site-map/, /product/long-sleeve-t-shirt/): Organization+Restaurant with address/hours/phones, WebSite, WebPage/AboutPage/ContactPage, BreadcrumbList on every route incl. home, nested #logo resolves; meta description + canonical + og on every route (blog_public=1 on staging, basic auth keeps crawlers out)
↪ /buildout Phase 14 — inc/seo-schema.php + _tools/schema-validate.py
✗ 6. Accessibility (ADA) (0/8)audit · P0 2 P1 7 P2 9 P3 1
○ Skip link present + functional
○ Image alt text complete
○ Color contrast AA (4.5:1 / 3:1)
○ Keyboard navigable (no traps)
○ Visible focus order
○ ARIA landmarks + labels
○ Form fields labelled
○ Heading hierarchy (no skips)
↪ /audit Phase 7 — WCAG 2.2 AA + Section 508 + ADA Title III
✗ 7. Performance (0/6)audit · P1 8 P2 7 P3 1
○ LCP < 2.5s
○ INP < 200ms
○ CLS < 0.1
○ Page weight budget
○ Render-blocking resources
○ Image lazy-load + sizing
↪ /audit Phase 8 — Lighthouse + Core Web Vitals + page weight
✗ 8. SEO technical (0/6)audit · P1 2 P2 6 P3 1
○ robots.txt correct
○ XML sitemap valid
○ Canonical tags
○ Redirects (no chains/loops)
○ Mobile-friendly
○ HTTPS enforced
↪ /audit Phase 9 — technical SEO
✗ 9. SEO on-page (0/6)audit · P1 3 P2 6 P3 1
○ Title tags unique + lengthed
○ Meta descriptions
○ Heading structure
○ Image alt for SEO
○ Internal linking
○ E-E-A-T signals
↪ /audit Phase 9 — on-page SEO
✗ 10. AEO / AIO (0/5)audit · P1 2 P2 4 P3 1
○ llms.txt present
○ AI-crawler stance (robots)
○ FAQ schema on /faq/
○ Direct-answer formatting
○ Topic clusters / entity coverage
↪ /audit Phase 10 — answer-engine / LLM readiness
✗ 12. Security posture (0/6)audit · P1 9 P2 5
○ TLS valid (not expiring <30d)
○ WP version not exposed
○ Login / brute-force hardened
○ XML-RPC disabled
○ REST user-enum blocked
○ 2FA available
↪ /audit Phase 11 — WP hardening
✗ 13. Privacy & compliance (0/5)audit · P0 2 P1 10 P2 1
○ Cookie consent (EU)
○ Privacy policy present
○ CCPA notice
○ DSAR process
○ No PII leaks via REST
↪ /audit Phase 12 — GDPR / CCPA
✗ 14. Mobile / responsive (0/5)audit · P1 2 P2 6 P3 3
○ Viewport meta
○ iOS 16px input (no zoom)
○ Touch targets >= 44px
○ No overflow-x
○ Hamburger nav works
↪ /audit Phase 13 — responsive
✓ 15. Cross-browser (0/5)audit · P2 1
○ Chrome
○ Firefox
○ Safari
○ Edge
○ iOS Safari
↪ /audit Phase 13 — cross-browser smoke
✓ 18. i18n / l10n (0/4)audit · P2 2 P3 5
○ Strings translation-ready
○ lang attributes
○ hreflang (if multi-locale)
○ RTL handling (if needed)
↪ /audit Phase 15 — internationalization
✗ 19. Forms (0/6)audit · P0 3 P1 4 P2 1
○ Gravity Forms configured
○ SMTP sending
○ Honeypot / spam
○ Validation
○ Accessibility
○ Deliverability
↪ /audit Phase 16 — forms
✗ 22. Code quality (0/6)audit · P1 3 P2 10 P3 3
○ WPCS / PHPCS clean
○ ESLint clean
○ Stylelint clean
○ No console.log
○ No PHP warnings
○ No dead code
↪ /audit Phase 19 — code
✗ 23. Database (0/5)audit · P1 1 P2 1 P3 2
○ Autoload bloat
○ Post-type hygiene
○ No orphan meta
○ Object cache
○ No slow queries
↪ /audit Phase 20 — database
✗ 27. Editor experience (0/5)audit · P1 2 P2 8 P3 1
○ Customizer organized
○ Theme Options organized
○ ACF field-group organization
○ Role config
○ Image library tidy
↪ /audit Phase 23 — editor XP
✓ 28. Documentation (0/4)audit · P2 3 P3 2
○ README
○ CHANGELOG
○ Code comments
○ Client editor guide
↪ /audit Phase 24 — docs
✗ 30. UX states + microinteractions (0/7)audit · P1 1 P2 3 P3 3
○ Focus states
○ Hover states
○ Loading states
○ Empty states
○ Error states
○ Success states
○ prefers-reduced-motion
↪ /audit Phase 26 — UX states
infra
✗ 11. Security headers (0/6)audit · P0 1 P1 1 P2 4 P3 1
○ HSTS
○ Content-Security-Policy
○ X-Frame-Options
○ X-Content-Type-Options
○ Referrer-Policy
○ Permissions-Policy
↪ /audit Phase 11 — ingress security headers (set at Traefik/ingress, not theme)
✗ 20. Media / CDN (0/6)audit · P1 2 P2 4 P3 1
○ S3 offload (AS3CF)
○ CloudFront serving
○ WebP / AVIF
○ Lazy-load
○ Aspect ratios
○ No artifacts
↪ /audit Phase 17 — media pipeline
✗ 21. Email deliverability (0/4)audit · P1 4 P2 2
○ SPF
○ DKIM
○ DMARC
○ From-address consistency
↪ /audit Phase 18 — email DNS
✗ 24. Infrastructure (0/7)audit · P1 6 P2 3 P3 1
○ EKS pod healthy
○ EFS mounts
○ DNS at NLB (public + private zones)
○ SSL not expiring <30d
○ CloudFront
○ WAF
○ Backups configured
↪ /audit Phase 21 — EKS platform
○ 25. Analytics (0/5)audit · P1 4 P2 1
○ GA4 installed
○ Search Console verified
○ Tag Manager
○ Conversions tracked
○ Heatmap (if used)
↪ /audit Phase 22 — analytics
○ 26. Monitoring (0/4)audit · P1 2 P2 6
○ StatusCake uptime
○ Grafana dashboards
○ Slack alerts
○ Uptime SLA
↪ /audit Phase 22 — monitoring
✗ 29. Build / Deploy (0/4)audit · P1 3 P2 4 P3 1
○ GitLab CI green
○ Branch strategy (stable/main)
○ Env separation
○ Rollback path
↪ /audit Phase 25 — CI / CD
project tier · 2/4 green
spec
✓ 1. Editorial workflow (3/3)buildout-verify
✓ Editorial smoke test — wp-admin edit renders on front-end @staging — wp-cli sentinel: edited the home hero heading via ACF (QA-SENTINEL-77), rendered on / over basic auth, reverted clean
✓ ACF schema parity — every layout has a module template @staging — house starter keeps the schema in acf-json/ (not inc/acf-fields.php): 11 flexible layouts, 11 matching parts/flexible/flexible-<name>.php, 0 orphans
✓ No hardcoded page-*.php with literal copy @staging — no page-*.php; page.php + templates/template-home.php loop flexible_content
↪ /buildout Phase 3 — core patterns + editorial smoke test
✓ 4. Visual fidelity (7/7)screenshot-diff
✓ No silent visual regression (screenshot diff 375/768/1440) @staging — Re-adjudicated the five routes Slipway marked stale after the round-12 stylesheet change (FAQ toggle reset, in-text link underlines, consent label colour, Woo width selectors retargeted): page.home, page.specials, page.menu, page.shop and page.single-product, at 1440 and 375 against their own APPROVED flats, with 1920 captures used to re-verify the round-12 geometry. All seven flat sha256 were recomputed and match manifest.json. Every round-12 measurement still holds exactly: specials columns 755.3px with a 63.0px gutter at 1920 and 559.2px with the same 63.0px gutter at 1440; product block 1322.9px from x298.6 to x1621.4 at 1920 and 992.2px at 1440, identical on all three product instances; shop content x101 to x1742.5 at 1920 and x75.7 to x1306.9 at 1440. Headers were judged per route from scrollY-0 viewport captures and each matches its own flat: home keeps the two-line contact block top-left at x137-518 with the logo visibility:hidden so nothing is painted, while the four interiors carry the logo left at x120-270 spanning both rows with one right-justified contact line ending at x1800 above the nav. The only visual changes since round 12 are the two intended ones - underlines confined to links inside running text, with no leak onto nav, buttons, card or product links, and the newsletter consent label now rgb(255,255,255) white - and nothing else regressed; no horizontal overflow at 375 on any route. page.about is not re-judged here: it passed in round 13 at d3de416a. All five routes pass, so gate 17 passes.
✓ Fidelity vs design — Home @staging 🛡 slipway-verified — diff 67.5% · @1440/375 · HEADER (home flat, judged at scrollY 0): two-line contact block top-left - line 1 address '130th St. & Coastal Hwy., Ocean City, MD' with pin icon plus phone 410-250-3337, line 2 hours 'Monday - Thursday 11am - 10pm | Friday - Sunday 11am - 12am' with clock icon, running x137-518 at 1920 (x107-488 at 1440), and NO logo painted - the custom-logo img is visibility:hidden so it reserves box but paints nothing, matching the flat where the only mark is the centred hero logo below the bar. Header 250.8px at 1920, 220.9px at 1440, position:fixed. Nav on the second row at y127.7 with Seafood shipped to you!, Order Online, socials and cart count (accepted). ELEMENTS: hero headline 'We Ship Seafood' over the crab photo with the two-tone Ship To Me / View Menu buttons; 'Best Crabs in Ocean City' band with its sub-line and the three linked tiles Check The Menu / See Specials / Get Seafood Shipped each with the yellow circular arrow; '3 Bars + All You Can Eat Crabs' in yellow over the drinks photo with body copy and the orange Visit Us! button; 'The Crab Bag Selection Process' with the steamed-crabs box image left, Crab Size Info list (Jumbo/XL/Large/Medium/Small) and the two pill buttons Learn About Our Crabs / Get Crabs Shipped to You; 'Shore To Your Front Door.' with the three chips 48 States / 24 Hours / 100%; Join the List with the crab glyph, First Name / Last Name / Email and the orange SEND; map band; footer. GEOMETRY: module content x176-1744 at 1920 (x131.8-1308.2 at 1440), unchanged from round 12. MOBILE 375 against mobile-APPROVED: phone bar with address/phone icons, hamburger and Order Online, logo, hero, the three tiles stacked, 3 Bars, Selection Process, Crab Size Info, the three chips stacked, Join the List, map, footer - order and content match the flat; scrollWidth 375 = innerWidth, zero overflowing elements. No regression from the round-12 stylesheet edits: no underline leaks onto nav links, buttons, card links or product links (text-decoration-line 'none' on every non-prose anchor sampled); the newsletter consent label renders rgb(255,255,255) white as intended; the FAQ toggle reset touches no element on this route. Remaining differences are all on the accepted list. /private/tmp/claude-501/-Users-dankott-git-d3corp-dna/c92053e4-51e8-43ec-8d52-0ff1da5d8343/scratchpad/referee14/comps/home-1440.png /private/tmp/claude-501/-Users-dankott-git-d3corp-dna/c92053e4-51e8-43ec-8d52-0ff1da5d8343/scratchpad/referee14/comps/home-1920.png /private/tmp/claude-501/-Users-dankott-git-d3corp-dna/c92053e4-51e8-43ec-8d52-0ff1da5d8343/scratchpad/referee14/comps/hdr-home-1440.png /private/tmp/claude-501/-Users-dankott-git-d3corp-dna/c92053e4-51e8-43ec-8d52-0ff1da5d8343/scratchpad/referee14/comps/hdr-home-1920.png /private/tmp/claude-501/-Users-dankott-git-d3corp-dna/c92053e4-51e8-43ec-8d52-0ff1da5d8343/scratchpad/referee14/comps/home-375.png /private/tmp/claude-501/-Users-dankott-git-d3corp-dna/c92053e4-51e8-43ec-8d52-0ff1da5d8343/scratchpad/referee14/s1920/home-geo.json /private/tmp/claude-501/-Users-dankott-git-d3corp-dna/c92053e4-51e8-43ec-8d52-0ff1da5d8343/scratchpad/referee14/s1440/home-geo2.json
✓ Fidelity vs design — About @staging 🛡 slipway-verified — diff 64.5% · @1440/375 · PASS. FAQ RE-ADJUDICATED against the about flat and the round 12 defect is fixed. Each question is now a transparent reset BUTTON (background rgba(0,0,0,0), no border, 0px radius, 0px padding) spanning the full row: at 1440 the button runs x326.3-1132.7 (806.4px) inside a 807.4px .faq-accordion__item, display:flex with justify-content:space-between. Question text is left-aligned at the row's left edge (span x326.3). The indicator is a 26x26 span with border-radius 50% and background rgb(253,232,36) right-aligned at x1096.7-1122.7, i.e. 10px inside the row/divider right edge. The flat measured natively (1920): panel x376-1563 (1188px), hairline dividers x462-1455 (994px) at y2411/2510/2611/2721, yellow circles 40px at x1405-1444 (11px inside the divider right edge), fill sampled rgb(252,232,36). Scaled to 1440 the flat gives rows 745.5px with a 30px circle whose right edge sits 8.25px inside the divider; staging gives rows 807.4px with a 26px circle 10px inside - same arrangement, same yellow, row 8% wider and circle 13% smaller, and the flat's right panel padding is ~33px larger than staging's. All four items are collapsed (aria-expanded=false, .faq-accordion__answer display:none) and each item carries a 1px solid rgba(255,255,255,0.35) bottom divider including the last, matching the flat's four hairlines. The flat's glyph is a down-arrow, staging's a chevron, inside the same yellow circle. Same behaviour confirmed at 375 (rows x23-353 full width, question left, yellow circle right, collapsed, dividers). NEWSLETTER CONSENT LABEL: legible. The inline label 'Yes, send me deals and events from The Crab Bag. See our Privacy Policy.' computes rgb(255,255,255) at 14px at BOTH 1440 and 375 (was #112337 in round 12), verified by reading the consent zoom; the '(Required)' tag is rgb(253,232,36). FAQ PANEL WIDTH: painted 921.4px at 1440 (x259.3-1180.7, verified by teal pixel scan x259-1180 = 922px), 891.4px inside the 15px container gutters = the stated ~891, and the flat's 1188px at 1920 scales to 891px at 1440. WHOLE ROUTE RE-CHECKED at element level, 1440 and 375. HEADER at scrollY 0 (position:fixed, 154.9px at 1440): logo left x90-220 y1-136.9 spanning both rows; one right-justified contact line - 13005 Coastal Hwy pin, 410-250-3337, clock, Monday-Thursday 11am-10pm | Friday-Sunday 11am-12am - ending at x1350; nav on the second row Menu/Specials/About/Shop/Contact with About underlined as current, 'Seafood shipped to you!', orange Order Online, Facebook, Instagram, cart count. Logo paints 130px wide against the flat's ~168px equivalent. SECTIONS in flat order at 1440: interior hero 'About Our Crabs' over the crab photo (y0-430); content-image 1 (y510-1032) 'All You Can Eat Steamed Crabs' + paragraph + 'Crab Size Info' list Jumbo 7"-7.5" / XL 6.5"-7" / Large 6"-6.5" / Medium 5.5"-6" / Small N/A with the crab-box photo right (x735, 573x464); content-image 2 (y1111.9-1493.3) 'From Crabs to Crab Cakes' + paragraph + the '* Menu items and prices subject to change' line with the plate photo left (x131.8, 573x381); FAQ panel (y1573.3-2285.2) with the crab-and-beer mark overlapping the top edge and the yellow 'Frequently Asked Questions' title; Join the List (y2362.3-2883.8) with the crab glyph, H2, subtitle, First Name / Last Name / Email on one row and the orange SEND; Google map (y2883.7-3483.7) confirmed rendering live in an element capture, pinned to 13005 Coastal Hwy, Ocean City MD (blank in the full-page shot, accepted); full footer. All 18 checklist strings for the about route are present in the rendered text. No horizontal overflow at either width (scrollWidth 1440 = innerWidth; 375 = 375). 375: same section order and content, FAQ reflowed to the same arrangement, consent label white and readable, Join the List stacked, footer complete. ACCEPTED DEVIATIONS observed and not counted: fifth nav item Shop and nav on a second header row, cart icon, header gradient and text shadow, FAQ panel texture as a plain gradient, stand-in FAQ answers, the consent banner and consent checkbox, map absent from the full-page capture, responsive reflow. diff_pct is a raw unaligned full-page pixel diff of the flat rescaled 1920->1440 against the staging capture; it is dominated by photography and by cumulative vertical drift (flat 3349px vs staging 3962px tall) and is not the basis of this verdict. /private/tmp/claude-501/-Users-dankott-git-d3corp-dna/c92053e4-51e8-43ec-8d52-0ff1da5d8343/scratchpad/referee13/comps/about-sbs1440.png /private/tmp/claude-501/-Users-dankott-git-d3corp-dna/c92053e4-51e8-43ec-8d52-0ff1da5d8343/scratchpad/referee13/comps/faq-zoom.png /private/tmp/claude-501/-Users-dankott-git-d3corp-dna/c92053e4-51e8-43ec-8d52-0ff1da5d8343/scratchpad/referee13/comps/faq-zoom-375.png /private/tmp/claude-501/-Users-dankott-git-d3corp-dna/c92053e4-51e8-43ec-8d52-0ff1da5d8343/scratchpad/referee13/comps/consent-zoom.png /private/tmp/claude-501/-Users-dankott-git-d3corp-dna/c92053e4-51e8-43ec-8d52-0ff1da5d8343/scratchpad/referee13/comps/hdr1440.png /private/tmp/claude-501/-Users-dankott-git-d3corp-dna/c92053e4-51e8-43ec-8d52-0ff1da5d8343/scratchpad/referee13/comps/mid-zoom.png /private/tmp/claude-501/-Users-dankott-git-d3corp-dna/c92053e4-51e8-43ec-8d52-0ff1da5d8343/scratchpad/referee13/comps/map-1440.png /private/tmp/claude-501/-Users-dankott-git-d3corp-dna/c92053e4-51e8-43ec-8d52-0ff1da5d8343/scratchpad/referee13/comps/m375-thumb.png
✓ Fidelity vs design — Specials @staging 🛡 slipway-verified — diff 79.1% · @1440/375 · HEADER (judged from the 1440/1920 scrollY-0 viewport captures against this route's own interior flat): logo left at x120-270, y4-161, spanning both rows (x90-220 at 1440); one contact line right-justified on the upper row - address, phone, then hours - ending at x1800 at 1920 (x1350 at 1440), matching the 120px/90px right gutter; nav Menu/Specials/About/Shop/Contact on the second row at y84.7 (y67.2 at 1440) followed by 'Seafood shipped to you!', the Order Online pill, Facebook, Instagram and the cart count. Header 184.8px at 1920, 154.9px at 1440, position:fixed. Unchanged from round 12. Accepted deviations present: fifth nav item Shop, nav on a second row, cart icon with count, header gradient and text shadow, compacting on scroll. GEOMETRY re-measured and identical to round 12: the two specials columns are 755.3px wide with a 63.0px gutter at 1920 (drink x173.2-928.5, food x991.5-1746.8) and 559.2px with the same 63.0px gutter at 1440 (x129.3-688.5 and x751.5-1310.7); inner articles 695.3px, article header inset 655.3px. ELEMENTS: 'Our Specials' hero band; teal Drink Specials panel with 'Daily from 3pm - 6pm at the Bar and Seating' and six yellow rows - Draft Beer (16oz) $3.95 / Rail Drinks $3.95 + one mixer / Natty Light $2.50 Outlaw Can / Orange Crush $5 / Domestic Bottle $3.95 / Wine $6 By the Glass - each with its sub-line, in flat order; orange Food Specials panel with 'Available 11am - 3 pm Daily' and the blue Create Your own Lunch $16.95 card carrying Category 1 Soup & Mac, Category 2 Sandwich, Category 3 Salad, then the two blue rows 1/2 Shrimp $7.95ea and Sauteed Mussels $7.95ea; Join the List; map; footer. Flat typos corrected (Coors Lite->Light, Whickey->Whiskey, Ceaser->Caesar) and 'Wine - $6' with 'By the Glass' on its own line are on the accepted list. MOBILE 375: the two panels stack full-width in flat order, scrollWidth 375 = innerWidth, zero overflowing elements. No regression from the round-12 stylesheet edits: no underline leaks onto nav links, buttons, card links or product links (text-decoration-line 'none' on every non-prose anchor sampled); the newsletter consent label renders rgb(255,255,255) white as intended; the FAQ toggle reset touches no element on this route. Remaining differences are all on the accepted list. /private/tmp/claude-501/-Users-dankott-git-d3corp-dna/c92053e4-51e8-43ec-8d52-0ff1da5d8343/scratchpad/referee14/comps/specials-1440.png /private/tmp/claude-501/-Users-dankott-git-d3corp-dna/c92053e4-51e8-43ec-8d52-0ff1da5d8343/scratchpad/referee14/comps/specials-1920.png /private/tmp/claude-501/-Users-dankott-git-d3corp-dna/c92053e4-51e8-43ec-8d52-0ff1da5d8343/scratchpad/referee14/comps/hdr-specials-1440.png /private/tmp/claude-501/-Users-dankott-git-d3corp-dna/c92053e4-51e8-43ec-8d52-0ff1da5d8343/scratchpad/referee14/comps/hdr-specials-1920.png /private/tmp/claude-501/-Users-dankott-git-d3corp-dna/c92053e4-51e8-43ec-8d52-0ff1da5d8343/scratchpad/referee14/comps/m375-specials.png /private/tmp/claude-501/-Users-dankott-git-d3corp-dna/c92053e4-51e8-43ec-8d52-0ff1da5d8343/scratchpad/referee14/s1920/specials-geo2.json
✓ Fidelity vs design — Menu @staging 🛡 slipway-verified — diff 61.3% · @1440/375 · HEADER (judged from the 1440/1920 scrollY-0 viewport captures against this route's own interior flat): logo left at x120-270, y4-161, spanning both rows (x90-220 at 1440); one contact line right-justified on the upper row - address, phone, then hours - ending at x1800 at 1920 (x1350 at 1440), matching the 120px/90px right gutter; nav Menu/Specials/About/Shop/Contact on the second row at y84.7 (y67.2 at 1440) followed by 'Seafood shipped to you!', the Order Online pill, Facebook, Instagram and the cart count. Header 184.8px at 1920, 154.9px at 1440, position:fixed. Unchanged from round 12. Accepted deviations present: fifth nav item Shop, nav on a second row, cart icon with count, header gradient and text shadow, compacting on scroll. ELEMENTS: 'Menu' hero band; four category pills in flat order and flat colours - Starters orange, Seafood teal, Chicken blue, Ribs yellow - each a full-width rounded bar with the name in the contrasting brand colour. Starters and Ribs carry BBQ Burnt Ends, Soft Pretzels w/ Beer Cheese, Fried Clams and Fried Calamari with their sub-lines and prices; Seafood and Chicken carry the full three-column list (Jumbo Lump Crab Cake Dinner Single 32.95 / Double 59.95, JL Crab Cake Sandwich, Snow Crab Legs, Spiced Shrimp with its four weights, Steamed Clams, Raw Unshucked Oysters or Clams, Middle Neck Clams, Black Rope Mussels, Raw Oyster on the 1/2 Shell, Char Grilled Oysters with the Reggiano and Chesapeake descriptions, and the Fried Seafood Platters column Fish & Chips / Fried Shrimp Platter / Fried Clams Dinner / Fried Diver Scallops Platter / Fried Oysters / Fried Seafood Combo). The flat repeats those two item sets as three-column filler; the build prints them once across the available columns, which is the accepted stand-in-copy deviation, as is the raw-shellfish advisory line under the Seafood heading and the Tarter->Tartar correction. Join the List, map and footer follow, matching the flat. GEOMETRY: category bars and item columns sit inside the same container gutters as the other interiors; no change from round 12. MOBILE 375: categories stack single-column with the pill headings intact, scrollWidth 375 = innerWidth, zero overflowing elements. No regression from the round-12 stylesheet edits: no underline leaks onto nav links, buttons, card links or product links (text-decoration-line 'none' on every non-prose anchor sampled); the newsletter consent label renders rgb(255,255,255) white as intended; the FAQ toggle reset touches no element on this route. Remaining differences are all on the accepted list. /private/tmp/claude-501/-Users-dankott-git-d3corp-dna/c92053e4-51e8-43ec-8d52-0ff1da5d8343/scratchpad/referee14/comps/menu-1440.png /private/tmp/claude-501/-Users-dankott-git-d3corp-dna/c92053e4-51e8-43ec-8d52-0ff1da5d8343/scratchpad/referee14/comps/menu-1920.png /private/tmp/claude-501/-Users-dankott-git-d3corp-dna/c92053e4-51e8-43ec-8d52-0ff1da5d8343/scratchpad/referee14/comps/hdr-menu-1440.png /private/tmp/claude-501/-Users-dankott-git-d3corp-dna/c92053e4-51e8-43ec-8d52-0ff1da5d8343/scratchpad/referee14/comps/hdr-menu-1920.png /private/tmp/claude-501/-Users-dankott-git-d3corp-dna/c92053e4-51e8-43ec-8d52-0ff1da5d8343/scratchpad/referee14/comps/m375-menu.png /private/tmp/claude-501/-Users-dankott-git-d3corp-dna/c92053e4-51e8-43ec-8d52-0ff1da5d8343/scratchpad/referee14/s1920/menu-geo.json
✓ Fidelity vs design — Shop @staging 🛡 slipway-verified — diff 67.8% · @1440/375 · HEADER (judged from the 1440/1920 scrollY-0 viewport captures against this route's own interior flat): logo left at x120-270, y4-161, spanning both rows (x90-220 at 1440); one contact line right-justified on the upper row - address, phone, then hours - ending at x1800 at 1920 (x1350 at 1440), matching the 120px/90px right gutter; nav Menu/Specials/About/Shop/Contact on the second row at y84.7 (y67.2 at 1440) followed by 'Seafood shipped to you!', the Order Online pill, Facebook, Instagram and the cart count. Header 184.8px at 1920, 154.9px at 1440, position:fixed. Unchanged from round 12. Accepted deviations present: fifth nav item Shop, nav on a second row, cart icon with count, header gradient and text shadow, compacting on scroll. GEOMETRY re-measured and identical to round 12: shop content runs x101 to x1742.5 at 1920 and x75.7 to x1306.9 at 1440; the sidebar column is x86-503.9 at 1920 with its form, keyword field, category list and Search button all on the x101 inset (x60.7-376 and x75.7 at 1440). The retargeted WooCommerce width selectors did not move either edge. ELEMENTS: 'Shop' hero band; left sidebar with the Keyword Search field, the six category checkboxes in flat order (Raw Seafood, Cooked Seafood, Frozen Foods, Merchandise, Gift Cards, Accessories) and the orange Search button; three-column product grid with square image, name, price line and the blue Buy Now button per card, carrying the flat's fifteen products in flat order - Maryland Crabs $70 per dozen, Crab Cakes $125 per box, Raw Shrimp $28 per pound, Oysters on the Shell, Frozen Crab Cakes, Frozen Shrimp, Chesapeake Clams, Frozen King Crab Legs, Frozen Mussels, Short Sleeve T-Shirt $19.99, Long Sleeve T-Shirt, Hoodies $34.99, Gift Cards 'Available in all amounts', Crab Bag Hammers $24.99, Crab Bag Key Chain $34.99 - plus the accepted sixteenth item Crab Bag State of Mind T-Shirt. Placeholder product photos, the un-checked Raw Seafood filter and the sale badge on Long Sleeve T-Shirt are accepted. Join the List, map and footer match. MOBILE 375: sidebar above a single-column grid, scrollWidth 375 = innerWidth, zero overflowing elements. No regression from the round-12 stylesheet edits: no underline leaks onto nav links, buttons, card links or product links (text-decoration-line 'none' on every non-prose anchor sampled); the newsletter consent label renders rgb(255,255,255) white as intended; the FAQ toggle reset touches no element on this route. Remaining differences are all on the accepted list. /private/tmp/claude-501/-Users-dankott-git-d3corp-dna/c92053e4-51e8-43ec-8d52-0ff1da5d8343/scratchpad/referee14/comps/shop-1440.png /private/tmp/claude-501/-Users-dankott-git-d3corp-dna/c92053e4-51e8-43ec-8d52-0ff1da5d8343/scratchpad/referee14/comps/shop-1920.png /private/tmp/claude-501/-Users-dankott-git-d3corp-dna/c92053e4-51e8-43ec-8d52-0ff1da5d8343/scratchpad/referee14/comps/hdr-shop-1440.png /private/tmp/claude-501/-Users-dankott-git-d3corp-dna/c92053e4-51e8-43ec-8d52-0ff1da5d8343/scratchpad/referee14/comps/hdr-shop-1920.png /private/tmp/claude-501/-Users-dankott-git-d3corp-dna/c92053e4-51e8-43ec-8d52-0ff1da5d8343/scratchpad/referee14/comps/m375-shop.png /private/tmp/claude-501/-Users-dankott-git-d3corp-dna/c92053e4-51e8-43ec-8d52-0ff1da5d8343/scratchpad/referee14/s1920/shop-geo.json /private/tmp/claude-501/-Users-dankott-git-d3corp-dna/c92053e4-51e8-43ec-8d52-0ff1da5d8343/scratchpad/referee14/s1920/shop-geo2.json
✓ Fidelity vs design — Single Product @staging 🛡 slipway-verified — diff 79.1% · @1440/375 · HEADER (judged from the 1440/1920 scrollY-0 viewport captures against this route's own interior flat): logo left at x120-270, y4-161, spanning both rows (x90-220 at 1440); one contact line right-justified on the upper row - address, phone, then hours - ending at x1800 at 1920 (x1350 at 1440), matching the 120px/90px right gutter; nav Menu/Specials/About/Shop/Contact on the second row at y84.7 (y67.2 at 1440) followed by 'Seafood shipped to you!', the Order Online pill, Facebook, Instagram and the cart count. Header 184.8px at 1920, 154.9px at 1440, position:fixed. Unchanged from round 12. Accepted deviations present: fifth nav item Shop, nav on a second row, cart icon with count, header gradient and text shadow, compacting on scroll. GEOMETRY re-measured and identical to round 12, and identical across all three product instances: container x283.6-1636.4 (1352.9px), gallery x298.6-933.5 (635px), summary x986.5-1621.4 (635px), related-products block x298.6-1621.4 = 1322.9px at 1920; at 1440 container 1022.2px, gallery and summary 476.2px each, related block 992.2px. The retargeted WooCommerce width selectors did not move the product block. ELEMENTS, verified on /product/long-sleeve-t-shirt/ (contracted), /product/short-sleeve-t-shirt/ and /product/hoodies/: 'Shop' hero band; breadcrumb 'Shop > <name>' with Shop in orange; vertical thumbnail strip left of the main gallery image; title; price line - $20 with $24.99 struck through and the blue -20% badge on the long sleeve, $19.99 on the short sleeve, $34.99 on the hoodie; product blurb; 'Select Colors' with three circular swatches, first checked; 'Choose Size' with the four pills Small / Medium / Large / X-Large, Large selected as a dark pill with a tick exactly as the flat shows; minus/quantity/plus stepper beside the black Add to Cart button; the accepted Back to Products button; 'You Might Also Like...' with three related product cards; Join the List; map; footer. All three instances render the same template with only the product data differing. Placeholder photos and the catalogue differing from the designer's sample product are accepted. MOBILE 375: gallery, summary and related cards stack single-column, size pills wrap to two rows, scrollWidth 375 = innerWidth (the only out-of-flow node is WooCommerce's hidden zoomImg overlay, which does not extend the document). No regression from the round-12 stylesheet edits: no underline leaks onto nav links, buttons, card links or product links (text-decoration-line 'none' on every non-prose anchor sampled); the newsletter consent label renders rgb(255,255,255) white as intended; the FAQ toggle reset touches no element on this route. Remaining differences are all on the accepted list. /private/tmp/claude-501/-Users-dankott-git-d3corp-dna/c92053e4-51e8-43ec-8d52-0ff1da5d8343/scratchpad/referee14/comps/product-3up-1440.png /private/tmp/claude-501/-Users-dankott-git-d3corp-dna/c92053e4-51e8-43ec-8d52-0ff1da5d8343/scratchpad/referee14/comps/single-product-1440.png /private/tmp/claude-501/-Users-dankott-git-d3corp-dna/c92053e4-51e8-43ec-8d52-0ff1da5d8343/scratchpad/referee14/comps/single-product-1920.png /private/tmp/claude-501/-Users-dankott-git-d3corp-dna/c92053e4-51e8-43ec-8d52-0ff1da5d8343/scratchpad/referee14/comps/hdr-single-product-1440.png /private/tmp/claude-501/-Users-dankott-git-d3corp-dna/c92053e4-51e8-43ec-8d52-0ff1da5d8343/scratchpad/referee14/comps/build1920-summary.png /private/tmp/claude-501/-Users-dankott-git-d3corp-dna/c92053e4-51e8-43ec-8d52-0ff1da5d8343/scratchpad/referee14/comps/flat-summary.png /private/tmp/claude-501/-Users-dankott-git-d3corp-dna/c92053e4-51e8-43ec-8d52-0ff1da5d8343/scratchpad/referee14/comps/m375-single-product.png /private/tmp/claude-501/-Users-dankott-git-d3corp-dna/c92053e4-51e8-43ec-8d52-0ff1da5d8343/scratchpad/referee14/s1920/single-product-geo2.json
↪ /buildout Phase 3.5 + _tools/screenshot-diff.py + per-route contracts
✗ 16. Content quality (0/4)audit · P1 4 P2 9 P3 3
○ No Lorem / Sample Page
○ No em-dashes / AI-tells / triplets
○ Content depth vs spec
○ Freshness / dates
↪ /audit Phase 14 — content
✗ 17. Brand consistency (0/5)audit · P1 2 P2 4 P3 3
○ Logo correct
○ Colors match brand
○ Typography match
○ Spacing / layout system
○ Voice + tone
↪ /audit Phase 14 — brand

Live site: post-launch reconcile

, fingerprints production and diffs it against this build

Never reconciled. Every 2026 pilot launched as a different build than the one this board graded: run this after every cutover.

Audit

P0 8 · P1 82 · P2 110 · P3 34 — open P0 (gates LIVE): 8

Velocity vs target

QA passes0target 1
Fix-commit ratio—target 0.15
Gate-pass first run—
Grade—target A-

Artifacts

Build theme the-crab-bag · container the-crab-bag_the-crab-bag-2026_stable · reference coastal-hospice-wpe-2026 (house starter source)
Design source figma → https://www.figma.com/design/eDbUoJOEU08K5CcmWw2vJK/The-Crab-Bag---APPROVED?node-id=6058-4298
Spec'd pages 6: Home, About, Specials, Menu, Shop, Single Product
Screenshot triptychs (375/768/1440), stored audit PDFs, and the see.run proof pane need the S3 artifact layer — a later pass.

Open punch-list

[todo] Report current gate status next → agent:buildout
[todo] Client written approval of the Figma layouts (design lock is D3-internal only) next → human:owner 📌 owner
[todo] Client to supply: 3 Bars copy, full 2026 menu, product catalog + prices + shipping, product descriptions, FAQ answers, Pages Google Doc access next → human:owner 📌 owner
[todo] Content not launch-real on /hello-world/ next → agent:buildout 📌 owner
[todo] Content not launch-real on /category/uncategorized/ next → agent:buildout 📌 owner
[todo] Gate 16 failing: Content quality next → agent:buildout 🔒 auto
[todo] Gate 19 failing: Forms next → agent:buildout 🔒 auto
[todo] Gate 4 failing: Visual fidelity next → agent:buildout 🔒 auto
[todo] Gate 2 failing: Theme infrastructure next → agent:buildout 🔒 auto
[todo] Gate 6 failing: Accessibility (ADA) next → agent:buildout 🔒 auto
[todo] Gate 7 failing: Performance next → agent:buildout 🔒 auto
[todo] Gate 8 failing: SEO technical next → agent:buildout 🔒 auto
[todo] Gate 9 failing: SEO on-page next → agent:buildout 🔒 auto
[todo] Gate 10 failing: AEO / AIO next → agent:buildout 🔒 auto
[todo] Gate 11 failing: Security headers next → human:ops 🔒 auto
[todo] Gate 12 failing: Security posture next → agent:buildout 🔒 auto
[todo] Gate 13 failing: Privacy & compliance next → agent:buildout 🔒 auto
[todo] Gate 14 failing: Mobile / responsive next → agent:buildout 🔒 auto
[todo] Gate 17 failing: Brand consistency next → agent:buildout 🔒 auto
[todo] Gate 20 failing: Media / CDN next → human:ops 🔒 auto
[todo] Gate 21 failing: Email deliverability next → human:owner 🔒 auto
[todo] Gate 22 failing: Code quality next → agent:buildout 🔒 auto
[todo] Gate 23 failing: Database next → agent:buildout 🔒 auto
[todo] Gate 24 failing: Infrastructure next → human:ops 🔒 auto
[todo] Gate 27 failing: Editor experience next → agent:buildout 🔒 auto
[todo] Gate 29 failing: Build / Deploy next → human:ops 🔒 auto
[todo] Gate 30 failing: UX states + microinteractions next → agent:buildout 🔒 auto
[todo] Image pipeline on /home/ soon → agent:buildout 📌 owner
[todo] Image pipeline on /about/ soon → agent:buildout 📌 owner
[todo] Image pipeline on /specials/ soon → agent:buildout 📌 owner
[todo] Image pipeline on /menu/ soon → agent:buildout 📌 owner
[todo] Image pipeline on /shop/ soon → agent:buildout 📌 owner
[todo] Image pipeline on /single-product/ soon → agent:buildout 📌 owner
[todo] Image pipeline on /about/ soon → agent:buildout 📌 owner
[todo] Image pipeline on /specials/ soon → agent:buildout 📌 owner
[todo] Image pipeline on /menu/ soon → agent:buildout 📌 owner

Events

Sep 22 · 22:58gatesdan
Sep 22 · 22:48eventdan
slipway DOM verify ran on 6 page(s): 6 clean, 0 with failures/errors
Sep 22 · 22:48eventdan
slipway content scan: 23 route(s) all clean
Sep 22 · 22:48eventdan
slipway form scan: 23 route(s) all clean
Sep 22 · 22:48eventdan
slipway image scan: 23 route(s) all clean
Sep 22 · 22:48eventdan
slipway structural scan: 23 route(s) all clean
Sep 22 · 22:48eventdan
slipway scans recorded: structural/images/forms/content over 23 route(s)
Sep 22 · 22:46gatesdan
Sep 22 · 22:40eventdan
slipway DOM verify ran on 6 page(s): 6 clean, 0 with failures/errors
Sep 22 · 22:40eventdan
slipway content scan: 23 route(s) all clean
Sep 22 · 22:40eventdan
slipway form scan: 23 route(s) all clean
Sep 22 · 22:40eventdan
slipway image scan: 23 route(s) all clean
Sep 22 · 22:40eventdan
slipway structural scan: 23 route(s) all clean
Sep 22 · 22:40eventdan
slipway scans recorded: structural/images/forms/content over 23 route(s)
Sep 22 · 22:32eventdan
slipway DOM verify ran on 6 page(s): 6 clean, 0 with failures/errors
Sep 22 · 22:32eventdan
slipway content scan: 23 route(s) all clean
Sep 22 · 22:32eventdan
slipway form scan: 23 route(s) all clean
Sep 22 · 22:32eventdan
slipway image scan: 23 route(s) all clean
Sep 22 · 22:32eventdan
slipway structural scan: 23 route(s) all clean
Sep 22 · 22:32eventdan
slipway scans recorded: structural/images/forms/content over 23 route(s)
Sep 22 · 22:26eventdan
slipway DOM verify ran on 6 page(s): 6 clean, 0 with failures/errors
Sep 22 · 22:26eventdan
slipway content scan: 23 route(s) all clean
Sep 22 · 22:26eventdan
slipway form scan: 23 route(s) all clean
Sep 22 · 22:26eventdan
slipway image scan: 23 route(s) all clean
Sep 22 · 22:26eventdan
slipway structural scan: 23 route(s) all clean
Sep 22 · 22:26eventdan
slipway scans recorded: structural/images/forms/content over 23 route(s)
Sep 22 · 22:19eventdan
slipway DOM verify ran on 6 page(s): 6 clean, 0 with failures/errors
Sep 22 · 22:19eventdan
slipway content scan: 23 route(s) all clean
Sep 22 · 22:19eventdan
slipway form scan: 23 route(s) all clean
Sep 22 · 22:19eventdan
slipway image scan: 23 route(s) all clean
Sep 22 · 22:19eventdan
slipway structural scan: 23 route(s) all clean
Sep 22 · 22:19eventdan
slipway scans recorded: structural/images/forms/content over 23 route(s)
Sep 22 · 22:12gatesdan
Sep 22 · 22:10gatesdan
Sep 22 · 21:59eventdan
slipway DOM verify ran on 6 page(s): 6 clean, 0 with failures/errors
Sep 22 · 21:59eventdan
slipway content scan: 23 route(s) all clean
Sep 22 · 21:59eventdan
slipway form scan: 23 route(s) all clean
Sep 22 · 21:59eventdan
slipway image scan: 23 route(s) all clean
Sep 22 · 21:59eventdan
slipway structural scan: 23 route(s) all clean
Sep 22 · 21:59eventdan
slipway scans recorded: structural/images/forms/content over 23 route(s)