refactor(forms): enable approved Form A placements by default
This commit is contained in:
41 files changed
+862
-523
No files matched your search
@@ -3,7 +3,7 @@
|
||||
**Last updated:** October 30, 2026 (UTC)
|
||||
**Repository:** `AIAMarketing/azinstitute4autism.com`
|
||||
**Working branch:** `faithful-astro-migration`
|
||||
**Last accepted technical implementation:** consolidated service drawers and employee-portal preview at `e97f0ea9b475715a1ea58110a27cdf50a2b3cb19`; the commit containing this handoff adds the focused completion/styling correction pass
|
||||
**Last pushed checkpoint:** `55adb797051473c3067a0d454515153237e9b8d6` — completion handling and portal styling. The new commit containing this handoff simplifies Form A to default-live without rewriting that history.
|
||||
**Previous accepted checkpoint:** P9-03 documentation, signed `537f9864a0a3d0806180cbeca909bf1d03200c6f`
|
||||
**Implementation checkpoint:** the commit containing this handoff update; obtain its actual SHA from Git history after the signed checkpoint is created.
|
||||
**Next milestone:** continue Phase 9 owner decisions and authorized integration batches; then Phase 10 — Final QA/Cutover Readiness.
|
||||
@@ -12,6 +12,50 @@ The landing-page migration is technically completed for checkpoint purposes.
|
||||
Editorial, accessibility, stakeholder and production-release approval remain
|
||||
separate. This handoff does not authorize deployment or integration activation.
|
||||
|
||||
## Current decision — 2026-10-30: default-live Form A
|
||||
|
||||
The owner intentionally supersedes the earlier isolated-test and seven-route
|
||||
production-gate architecture. `npm run dev` and `npm run build` now enable Form A
|
||||
on exactly **16 approved placements**, including the publicly reachable
|
||||
`aia.web3app.dev` environment. No additional approval flags or access restriction
|
||||
are required. `PUBLIC_AIA_FORMS_MODE` is optional: absent/empty means `live`;
|
||||
explicit `off` and `mock` remain available. Invalid/obsolete `isolated-test`
|
||||
settings produce an actionable configuration error. The former approval flags
|
||||
and form environment role are retired, not renamed.
|
||||
|
||||
Indexing and forms are independent. Both publication modes emit ten immediate
|
||||
frames (two contact, five landing, three consultation) and six deferred bilingual
|
||||
service-drawer frames. The bounded registry fixes ID `262946078314059`, HTTPS
|
||||
origin, context and language. Forms B/C are not activated; physical B is retired.
|
||||
|
||||
Live drawers retain four-second/50%-scroll opening, shared 30-day suppression,
|
||||
manual CTA override, deferred loading, verified completion acknowledgment for
|
||||
five seconds, animated dismissal and fresh-form reopening. Off mode does not
|
||||
automatically show inactive drawers. All iframe security/fallback behavior is
|
||||
preserved. Employee-portal preview remains independently gated by explicit local
|
||||
approval, valid private ciphertext input and non-indexing output; Form A cannot
|
||||
authorize private content. No portal private resources enter normal artifacts.
|
||||
|
||||
This owner authorization does not modify Jotform, authorize site cutover or
|
||||
complete pending consultation-language, provider-event, accessibility, runtime
|
||||
telemetry/privacy, recipient-routing or hosting acceptance. See the
|
||||
[current operating guide](../integrations/jotform/README.md) and
|
||||
[implementation and validation report](phase-9-form-a-default-live-2026-10-30.md).
|
||||
Earlier dated decisions and test results below are historical evidence, not
|
||||
current environment setup instructions.
|
||||
|
||||
## Latest verified validation — 2026-10-30 default-live revision
|
||||
|
||||
206 tests pass; Astro check has zero diagnostics. Normal default-live staging:
|
||||
128 routes, empty sitemap, zero hreflang, ten immediate plus six deferred Form A
|
||||
frames. Indexing-enabled: 127 routes, 109 sitemap URLs, 180 hreflang links, the
|
||||
same 16 placements. Explicit off/mock artifacts contain no real Form A frames.
|
||||
Guarded browser regressions preserve drawer completion/suppression and portal
|
||||
fixture behavior; 128/128 staging routes open. Link/image/blog audits have zero
|
||||
findings. See the current default-live report for exact overlapping check counts,
|
||||
network interception evidence and remaining owner acceptance. No deployment,
|
||||
Jotform mutation or new real submission was performed.
|
||||
|
||||
## Authority and checkpoint history
|
||||
|
||||
Read repository-root `AGENTS.md`, `MIGRATION_BRIEF.md` and `AUTONOMOUS-CODEX.md`,
|
||||
@@ -169,10 +213,10 @@ trusted-source comparison. No insecure retrieval was repeated.
|
||||
|
||||
### Current two-form status — 2026-10-29
|
||||
|
||||
- Form A (`262946078314059`) has a frozen seven-route production-eligible allowlist: `/contact`, `/es/contact`, the four campaign landing routes and `/lp/early-intervention`. The five landing journeys use fixed `formContext=landing&language=en`. The owner has retired physical Form B. The owner reports Form A `consultation` is configured, and the repository now has a separate nine-route, non-indexing isolated-test allowlist: `/client-consultation`, `/es/client-consultation`, `/schedule-consultation`, the three English service drawers and the three matching Spanish service drawers. Those routes require `PUBLIC_AIA_FORMS_CONSULTATION_TEST_APPROVED=true` in addition to every isolated-test gate and are never production-authorized by the seven-route resolver. Form C remains a separate future professional-referral form. See [the two-form integration specification](phase-9-two-form-integration-specification-2026-10-28.md).
|
||||
- Owner-confirmed direct-Jotform evidence covers synthetic EN/ES submission, native thank-you, conditional email/language, generic no-answer/no-PDF staff notification, autoresponder delivery, corrected fixed Reply-To, no webhooks/integrations, privacy scope, recipient access and retention. The owner also reports successful Astro-iframe synthetic submission and confirmation on English contact, Spanish contact and one ABA landing placement; record the exact third route before release. Functional submission acceptance is complete only for those owner-reported samples. All-seven-route accessibility, runtime-network/telemetry, deployment and site-release acceptance remain open.
|
||||
- Form A uses one 16-placement live registry: two contact, five landing, three standalone consultation and six EN/ES service drawers. Mode defaults to live; off/mock are explicit options. See the current decision above and the two-form specification.
|
||||
- Owner-confirmed direct-Jotform evidence covers synthetic EN/ES submission, native thank-you, conditional email/language, generic no-answer/no-PDF staff notification, autoresponder delivery, corrected fixed Reply-To, no webhooks/integrations, privacy scope, recipient access and retention. The owner also reports successful Astro-iframe synthetic submission and confirmation on English contact, Spanish contact and one ABA landing placement; record the exact third route before release. Functional submission acceptance is complete only for those owner-reported samples. All-sixteen-route accessibility, runtime-network/telemetry, deployment and site-release acceptance remain open.
|
||||
- The adapter retains fixed URLs, responsive fixed heights, `no-referrer`, `allow-forms allow-scripts allow-same-origin`, no helper script, and a hosted fallback that is hidden without space until a 15-second missing-load timeout. A frame load only clears that timeout; it does not prove cross-origin application health or accepted submission. The official Jotform resizing handler is conditionally acceptable pending separately authorized source, origin, privilege, Firefox and error-state verification; it is not implemented. Fixed heights remain current.
|
||||
- A separate local production gate is prepared for Form A only. It requires `PUBLIC_AIA_FORMS_MODE=live`, `PUBLIC_AIA_FORMS_LIVE_APPROVED=true`, `PUBLIC_AIA_FORMS_ENVIRONMENT=production` and `PUBLIC_AIA_FORM_A_PRODUCTION_APPROVED=true`; the fixed seven-route allowlist remains enforced. `PUBLIC_ALLOW_INDEXING=true` permits an indexing-enabled release artifact but never authorizes a form. Normal/off/mock behavior remains fail-closed. The isolated consultation surfaces require an explicit user action before a service-drawer iframe gets a `src`; they retain no-referrer, minimal sandbox, fixed dimensions and the conditional hosted fallback. Form C, analytics and API forwarding remain inactive. Marketing-only notification routing is a pre-cutover operational check. Rolling back Form A means rebuilding with mode `off` or an absent approval value and switching only the static artifact; it does not alter Jotform.
|
||||
- No additional Form A approval/environment flags remain. Indexing does not authorize or disable forms. Marketing-only notification routing remains a pre-cutover operational check. Rollback requires explicit mode `off`, rebuild and artifact verification; merely removing the mode restores live. Form C, counters, analytics and API forwarding remain inactive.
|
||||
|
||||
The indexing-enabled build has 127 HTML routes/canonicals and 109 sitemap URLs.
|
||||
Normal staging has 128 `noindex,nofollow` pages because it also contains `/lp`;
|
||||
|
||||
Reference in new issue
Block a user