E2E Test Suite / Smoke Tests (P0) (push) Failing after 9m27s
E2E Test Suite / Critical User Journeys (push) Has been skipped
E2E Test Suite / API Integration Tests (push) Has been skipped
E2E Test Suite / Security Header Tests (push) Failing after 10m21s
E2E Test Suite / Mobile Device Tests (push) Failing after 10m27s
E2E Test Suite / Cross-Browser Regression (webkit) (push) Failing after 11m13s
E2E Test Suite / Cross-Browser Regression (firefox) (push) Failing after 12m5s
E2E Test Suite / Cross-Browser Regression (chromium) (push) Failing after 12m58s
E2E Test Suite / Destructive & Chaos Tests (push) Failing after 13m50s
E2E Test Suite / Form Interaction Tests (push) Failing after 14m43s
E2E Test Suite / Test Report Summary (push) Has been cancelled
Deploy to Production / Build & Verify (push) Waiting to run
Deploy to Production / Pre-Deploy Tests (push) Blocked by required conditions
Deploy to Production / Deploy to Railway (push) Has been cancelled
Deploy to Production / Deploy to Render (push) Has been cancelled
Deploy to Production / Deploy to VPS (PM2) (push) Has been cancelled
Deploy to Production / Deploy to Fly.io (push) Has been cancelled
Deploy to Production / Post-Deploy Verification (push) Has been cancelled
Deploy to Production / Notify on Failure (push) Has been cancelled
Move the base Organization + LocalBusiness and WebSite structured data out of BaseLayout's inline scripts into SEO.astro behind a new `base` prop, rendered once from BaseLayout's <head> so every route (incl. pages without a page-specific <SEO>) carries the canonical company schema exactly once. - Organization/LocalBusiness now includes aggregateRating + Review nodes built from the three real homepage testimonials (Ajay Pruthi, Dhirendra Singh, Dilip Raj — all 5-star, reviewCount 3, rating 5.0). - foundingDate 2022, telephone +91-9561417403, email admin@workroot.in, areaServed Bihar (AdministrativeArea) + India (Country). - Description keeps the canonical proof numbers identical to the site: 20+ projects, 11 districts, 50,000+ records, 99.9% uptime. - Reusable Service node now links provider via @id to #organization and serves Bihar/India; page-specific schema (Service/FAQ/WebPage/...) stays opt-in and is gated off the base instance to prevent duplication. - Homepage still emits a single FAQPage (from HomepageFaq) — no duplicate. - Add jsdom devDependency required by scripts/validate-schema.js. Verified: build succeeds; scripts/validate-schema.js passes (24 schemas, 0 issues, 0 warnings); rendered ld+json inspected on homepage, services, and schema-less pages (privacy/terms/cookies/404). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
58 lines
2.5 KiB
JSON
58 lines
2.5 KiB
JSON
{
|
|
"name": "workroot-website",
|
|
"type": "module",
|
|
"version": "0.0.1",
|
|
"scripts": {
|
|
"dev": "astro dev",
|
|
"build": "astro build",
|
|
"preview": "astro preview",
|
|
"start": "node server.mjs",
|
|
"start:prod": "NODE_ENV=production node server.mjs",
|
|
"deploy:build": "npm run build",
|
|
"deploy:start": "npm run start:prod",
|
|
"astro": "astro",
|
|
"test": "playwright test",
|
|
"test:smoke": "playwright test tests/e2e-smoke-suite.spec.ts --project=chromium",
|
|
"test:critical": "playwright test tests/e2e-critical-paths.spec.ts",
|
|
"test:api": "playwright test tests/api-integration.spec.ts --project=chromium",
|
|
"test:newsletter": "playwright test tests/newsletter-subscription.spec.ts --project=chromium",
|
|
"test:forms": "playwright test tests/contact-form.spec.ts tests/e2e-form-interactions.spec.ts tests/newsletter-subscription.spec.ts --project=chromium",
|
|
"test:chaos": "playwright test tests/destructive-chaos.spec.ts --project=chromium",
|
|
"test:chromium": "playwright test --project=chromium",
|
|
"test:firefox": "playwright test --project=firefox",
|
|
"test:webkit": "playwright test --project=webkit",
|
|
"test:mobile": "playwright test --project='Mobile Chrome' --project='Mobile Safari'",
|
|
"test:report": "playwright show-report playwright-report",
|
|
"test:ci": "playwright test tests/e2e-smoke-suite.spec.ts tests/e2e-critical-paths.spec.ts tests/api-integration.spec.ts --project=chromium",
|
|
"backup:full": "bash scripts/backup/backup-full.sh",
|
|
"backup:content": "bash scripts/backup/backup-content.sh",
|
|
"backup:config": "bash scripts/backup/backup-config.sh",
|
|
"backup:restore": "bash scripts/backup/restore.sh",
|
|
"backup:verify": "bash scripts/backup/verify.sh",
|
|
"backup:cleanup": "bash scripts/backup/cleanup-old.sh",
|
|
"backup:list": "bash scripts/backup/restore.sh list",
|
|
"validate:schema": "node scripts/validate-schema.js",
|
|
"validate:structured-data": "node .agents/seo-specialist/validate-structured-data.js"
|
|
},
|
|
"dependencies": {
|
|
"@astrojs/node": "^8.3.4",
|
|
"@astrojs/sitemap": "^3.7.1",
|
|
"@tailwindcss/typography": "^0.5.19",
|
|
"astro": "^4.5.0",
|
|
"compression": "^1.8.1",
|
|
"dotenv": "^17.4.2",
|
|
"express": "^5.2.1",
|
|
"nodemailer": "^8.0.3"
|
|
},
|
|
"devDependencies": {
|
|
"@astrojs/check": "^0.9.9",
|
|
"@astrojs/tailwind": "^5.1.0",
|
|
"@playwright/test": "^1.58.2",
|
|
"@types/nodemailer": "^7.0.11",
|
|
"jsdom": "^29.1.1",
|
|
"playwright": "^1.58.2",
|
|
"tailwindcss": "^3.4.1",
|
|
"typescript": "^5.9.3"
|
|
}
|
|
}
|