Release decision
Do not release an external beta that exposes real candidates or influences hiring decisions.
The prototype presents named candidates, match percentages, capability ratings, evidence, recommendations, shortlists, and “not a fit” decisions. Yet the matching logic, candidate source and permission model, tenant controls, retention, and backend security are not present in this repository. Recruiter bearer tokens and hiring decisions are currently stored in browser localStorage. An internal demonstration using synthetic candidates may continue, but an independent customer beta requires the twelve gates below. A SOC 2 report is not a beta prerequisite.
01 / Scope
The only safe immediate scope is a synthetic-data demonstration
This is a product-readiness assessment, not a certification, legal opinion, penetration test, or review of the unseen backend. The permitted beta boundary must be explicit.
Permitted now
- Internal or closely supervised design demonstrations.
- Synthetic candidate names, portfolios, skills, and scores only.
- Test employer accounts and fictional companies.
- No candidate outreach, rejection, selection, or other employment action.
- No representation that scoring is validated, unbiased, or production ready.
Excluded until gates close
- Real candidate profiles, portfolios, assessment records, or inferred rankings.
- Automated filtering, rejection, ordering, or decisive recommendations.
- Children, student records, biometrics, health/disability data, background checks, or protected traits.
- Resume or public-profile scraping and third-party enrichment.
- NYC, Colorado, EU, or other regulated use without a jurisdiction review.
Expansion rule: any move from a synthetic demo to real people, real employers, candidate contact, or a score used to make a hiring decision requires a new documented release decision. A “human in the loop” is meaningful only when that person has enough information, authority, and time to challenge the system.
02 / Product evidence
Current code shows a useful prototype, not an independently governable hiring system
Findings are based on the Talent Marketplace frontend at commit d1dabf08f38babc54b78132c2adbb22772060ffe. The platform backend, model or ranking implementation, production configuration, contracts, and operational evidence were not in scope.
| Area | Observed evidence | Beta implication |
| Strength | Invite-only signup, password rules, authenticated routes, shared auth/HTTP packages, typed API contracts, and Cloudflare deployment infrastructure. | Useful foundation; the server-side enforcement and shared packages still require evidence. |
| Strength | Production dependency audit reported zero known vulnerabilities on August 13, 2026. | Point-in-time signal only; private packages, configuration, code flaws, and future advisories remain in scope. |
| Blocker | Bearer access tokens are configured in JavaScript-readable localStorage, including a two-week “remember me” path. | An XSS flaw can become account takeover. Replace with hardened, revocable server sessions or an equivalent architecture validated by security. |
| Blocker | Saved and dismissed candidate IDs are persisted as saved-candidates and dismissed-candidates without user or tenant namespacing. | Employment decisions can persist across sessions and accounts on a shared browser, without audit, retention, correction, or tenant control. |
| Blocker | Company name, recruiter title, industry, state, target roles, preferred skills, and onboarding status are stored under company-context-state. | The browser is acting as the authoritative employer record. Account switching, shared devices, deletion, and evidence integrity are unresolved. |
| Blocker | Invitation tokens appear in /signup/:token and TanStack Query cache keys before verification and resend requests. | Tokens may reach browser history, screenshots, referrers, logs, or telemetry. They need single use, short expiry, URL removal, and redaction. |
| Blocker | The frontend consumes /api/v1/tmp/candidates data containing identity, location, score, recommendation, risk items, skills, evidence, portfolio slug, and capability indicators. | Source legitimacy, accuracy, model behavior, authorization, and correction cannot be validated from this repository. |
| Blocker | “Top 3 recommended,” match percentages, strong/moderate/limited indicators, shortlist, and “not a fit” are presented as hiring signals. | These outputs can materially influence employment decisions even if the interface does not automatically reject anyone. |
| Gap | No repository-level CSP or other response-header policy is visible; Vue devtools is included in the Vite plugin list for all builds. | Verify edge headers and production bundles; remove developer tooling and establish CSP, HSTS, frame, MIME, referrer, and permissions policies. |
| Gap | LaunchDarkly receives authenticated user context, Cloudflare observability is enabled, source maps are uploaded, and Google Fonts is loaded remotely. | Inventory transmitted fields, regions, retention, redaction, contracts, and transfers. Self-host fonts or document the legal basis. |
| Gap | PR E2E is disabled until a test secret exists; staging build does not visibly gate on unit tests, lint, or E2E. | Critical auth, tenant, invite, and candidate-decision journeys are not proven by the deployment workflow. |
Product boundary: Skills Validation should remain the source of truth for validated capability evidence. Talent Marketplace owns discovery, matching, presentation, shortlists, and employer workflow. Accuracy corrections must propagate from the validation source; marketplace-specific ranking, search, and workflow errors remain Marketplace responsibilities.
03 / GDPR
Candidate scores are personal data and likely profiling
The system combines observed and inferred professional information with employer preferences to evaluate suitability. That is more sensitive than an ordinary business-directory profile because it can affect access to work.
| Data group | Examples visible or implied | Required treatment |
| Recruiter and account | Name, email, password/account token, company, title, industry, state, invitations, login and security records. | Contract or legitimate interest as appropriate; account notice, security, retention, access and deletion. |
| Employer hiring context | Target roles, preferred skills, company criteria, searches, shortlists, dismissals, notes, and team activity. | Purpose limitation, tenant controls, access logs, retention, and customer instructions. |
| Candidate identity and work profile | Name, role, location, portfolio, projects, certifications, assessments, skills, and evidence dates. | Document source, candidate visibility choice, lawful basis, notice, accuracy, correction, expiry, and access recipients. |
| Inferences and decisions | Match score, recommendation, capability level, risk items, rank, shortlist, “not a fit,” and employer response. | Treat as profiling and consequential employment data; provide meaningful explanation, objection/correction, auditability, and human review. |
| Telemetry and security | Feature context, IP/device, event data, errors, logs, source maps, invite and request metadata. | Minimize and pseudonymize; prohibit secrets and candidate content; define retention and vendor transfers. |
Controller and processor model
The legal role must be assigned per processing purpose, not per product. Talent Marketplace is likely a controller for its own account security, product analytics, candidate discoverability design, and any matching model whose essential means it determines. An employer is the controller for its recruitment decision. Marketplace may be a processor for employer-only shortlists, workflow records, or notes processed solely under the employer’s instructions. The relationship with Skills Validation may involve the same legal entity or separate controller/processor responsibilities, but the architecture alone does not answer that question.
Do not use one blanket lawful basis. Contract may cover recruiter accounts; legitimate interests may support limited adult professional discovery only after a documented balancing test; consent may support voluntary public discoverability but is not a reliable blanket basis in an employment setting. Special-category data requires a separate Article 9 condition and is excluded from beta.
Minimum GDPR operating model
- Complete the data inventory, Article 30 record, controller/processor matrix, lawful-basis assessment, and legitimate-interest assessment before real-data use.
- Deliver Article 13 notice where data comes directly from a person and Article 14 notice where data comes from Skills Validation, an employer, or another source.
- Complete a DPIA before real candidate profiling. Employment impact, systematic scoring, data combination, and potentially large-scale processing make “high risk” a prudent working assumption.
- Support access, correction, deletion, restriction, portability where applicable, objection, and rights related to automated decisions. Candidate corrections must reach both the evidence source and marketplace presentation.
- Avoid solely automated decisions with legal or similarly significant effects. A rubber-stamp reviewer does not provide meaningful human intervention.
- Document subprocessors and international transfers, including SCCs and transfer-risk measures where required.
04 / Employment and AI law
Hiring technology creates obligations beyond ordinary SaaS privacy
EU AI Act
If the matching or ranking qualifies as an AI system, recruitment and candidate-selection use is an Annex III high-risk category, and profiling is especially difficult to exempt. Following the 2026 AI Omnibus, the current application date for stand-alone high-risk rules is December 2, 2027. The product should build the risk, data, documentation, logging, human-oversight, accuracy, robustness, cybersecurity, and post-market disciplines now.
GDPR Article 22
A score or profile used for a solely automated decision with legal or similarly significant effect can be prohibited unless a narrow exception and safeguards apply. Even where Article 22 is not triggered, transparency, fairness, accuracy, lawful basis, DPIA, and objection rights still apply.
United States civil rights
Title VII, the ADA, the ADEA, and selection-procedure rules apply when software makes or informs hiring decisions. Validate job relevance and business necessity, test adverse impact, provide disability accommodations, and assess less discriminatory alternatives. Employer use of a vendor does not remove employer liability.
State and local overlays
NYC Local Law 144 can require an independent annual bias audit, a public summary, and advance notices before an automated employment decision tool is used. Colorado’s 2026 ADMT framework and rulemaking require a fresh launch assessment. Other states and cities need a maintained jurisdiction matrix.
Matching and fairness requirements
- Define the intended job, population, outcome, input fields, score meaning, threshold, ordering logic, and prohibited uses.
- Prove each signal is job related. Course completion alone is not a credible proxy for professional capability; use validated, current evidence.
- Exclude protected traits and obvious proxies from ranking. If protected data is lawfully collected for fairness testing, segregate access and never expose it to recruiters or the ranking path.
- Measure selection-rate and error disparities across relevant groups and intersections before launch and after material changes. The four-fifths rule is a screening tool, not a safe harbor.
- Provide accessible alternatives and reasonable accommodations. Do not infer disability, health, emotion, personality, or protected status.
- Give candidates plain-language notice of data sources, major criteria, score limitations, recipients, retention, correction, objection, appeal, and human-review channels.
- Contractually prohibit sole reliance, discriminatory targeting, unlawful searches, scraping, re-identification, and use outside the stated hiring purpose.
Unknown model means no-go: the frontend proves that scores and recommendations are displayed, but not how they are calculated. Real-data release requires the model or rule implementation, training/reference data, validation evidence, change process, and employer instructions to be reviewed.
05 / Launch gates
Twelve gates for a real-candidate, invitation-only beta
- Blocker 01
Scope, geography, and prohibited-use decisionName participating employers, adult candidate population, countries/states, allowed roles, human-decision boundary, and prohibited data/uses. Default to excluding NYC and Colorado until counsel confirms the product/customer workflow.
- Blocker 02
End-to-end system and data mapDocument frontend, backend, Skills Validation, identity, portfolio, matching, storage, logs, support, vendors, environments, and every personal-data transfer. Assign controller/processor roles per purpose.
- Blocker 03
Candidate source, permission, and noticeProve where every profile and evidence item came from, candidate discoverability choices, legal basis, notice timing, audience, portfolio/content rights, expiry, withdrawal, and correction propagation.
- Blocker 04
DPIA and automated-decision assessmentComplete GDPR DPIA, Article 22 analysis, EU AI Act classification, US jurisdiction matrix, and an employment-law review. Record the mitigations and residual-risk approvals.
- Blocker 05
Matching documentation and job-related validationReview code or model, inputs, outputs, data provenance, objective, benchmarks, limitations, calibration, thresholds, failure modes, drift, versioning, and job-related/business-necessity evidence.
- Blocker 06
Fairness, accessibility, and accommodation proofRun pre-deployment adverse-impact/error testing, document alternatives, establish ongoing monitoring, and provide an accessible accommodation route. Obtain an independent NYC bias audit before covered use.
- Blocker 07
Human oversight, explanation, correction, and appealEmployers must see source evidence and limitations, document their own reasoning, avoid automatic rejection, and provide candidates a timely path to correct data and obtain meaningful human review.
- Blocker 08
Secure sessions and invitation lifecycleMove bearer tokens out of JavaScript-readable storage, enforce MFA for admins, rotate/revoke sessions, harden CSRF/XSS controls, make invite tokens short-lived and single-use, remove them from URLs, and scrub logs/referrers.
- Blocker 09
Server-side tenant and decision recordsMove shortlists, dismissals, employer context, and onboarding state into tenant- and user-scoped APIs with authorization, audit history, retention, correction, and account-switch/logout behavior. Test cross-tenant denial.
- Blocker 10
Privacy operations and legal packageApprove notices, beta terms, DPA, employer acceptable-use/anti-discrimination schedule, subprocessors, transfers, retention, DSAR, deletion, candidate complaint, and breach workflows. Rehearse them.
- Blocker 11
Production security and SDLC evidenceVerify headers, encryption, secrets, dependency/secret scanning, least privilege, logs, alerts, rate limits, backups and restore, incident tabletop, vulnerability process, devtools removal, and automated CI tests.
- Blocker 12
Signed release record and monitoringLegal, privacy, security, product, and model owners sign the evidence set, customer restrictions, known limitations, monitoring thresholds, rollback/disable plan, and residual risks before the first real candidate appears.
Manual is acceptable for a small beta only when it is real: candidate requests, deletion, notice delivery, appeal, bias review, and incident coordination may begin as documented human workflows if they are owned, rehearsed, logged, and capable of meeting legal timelines.
06 / Legal package
Documents needed before an employer sees real candidates
| Document | Beta? | Required content |
| Beta service terms / order form | Yes | Named employers/users, beta limitations, permitted hiring purpose, support, suspension, changes, confidentiality, IP, liability, term/exit, and shared responsibilities. |
| Data Processing Addendum | Yes | Article 28 terms where Marketplace is processor, processing schedule, TOMs, subprocessors, transfers, rights/breach assistance, return/delete, and audit information. |
| Recruiter privacy notice | Yes | Account, security, product, feature flag, support and telemetry processing; bases, recipients, transfers, retention, rights, and contacts. |
| Candidate privacy and AI notice | Yes | Profile source, discoverability, employer recipients, matching purpose, major criteria, score limitations, retention, corrections, objection/appeal, and human review. |
| Employer acceptable-use and anti-discrimination schedule | Yes | No sole reliance, unlawful screening, protected-trait targeting, scraping, re-identification, credential sharing, export/resale, or non-hiring use; accommodation and notice duties. |
| Matching system factsheet / instructions | Yes | Intended purpose, inputs, outputs, validation population, metrics, limitations, prohibited uses, human oversight, version, monitoring, and incident/appeal contacts. |
| Candidate participation and portfolio terms | Yes | Visibility controls, license to display content, evidence accuracy, employer access, withdrawal, correction, IP/takedown, and consequences of deleting source evidence. |
| Subprocessor and transfer list | Yes | Vendor, purpose, data, region, retention, transfer mechanism, safeguards, and change-notification method. |
| Security overview / TOM schedule | Yes | Accurate system boundary, access, tenancy, encryption, SDLC, vendors, monitoring, backup, incident, retention, and customer responsibilities. |
| Bias-audit and jurisdiction disclosures | By region | NYC audit summary and notices where covered; current Colorado and other state/local notices, impact assessments, and appeal requirements. |
Explicit beta exclusions
Do not add background checks, credit or criminal records, health/disability questions, biometrics, video/emotion analysis, citizenship or protected-trait inference, children, or candidate-contact automation without a separate legal and product assessment. If consumer reports are later used, assess Fair Credit Reporting Act obligations before design or procurement.
07 / Security
Minimum technical controls for the beta
Identity and sessions
- HttpOnly, Secure, SameSite sessions or an equivalently reviewed pattern.
- Short access lifetime, rotation, revocation, and device/session view.
- MFA for staff and employer admins.
- Single-use expiring invites, URL cleanup, and generic errors.
- Logout/account switch clears every tenant-scoped cache.
Authorization and tenancy
- Server enforcement on every candidate and employer action.
- User, employer, purpose, and role scopes.
- Negative tests across API, cache, portfolio links, logs, exports, and search.
- Immutable audit events for view, shortlist, dismiss, export, and admin changes.
- Periodic access reviews and immediate offboarding.
Application and data
- CSP, HSTS, frame-ancestors, MIME, referrer, and permissions headers.
- Encryption in transit/at rest and managed secrets.
- Input validation, output encoding, rate limits, abuse controls, and CSRF protection.
- No candidate content, credentials, tokens, or sensitive criteria in telemetry.
- Remove production devtools; generate SBOM and scan dependencies/secrets.
Operations and resilience
- Restricted security logging with alert owners and defined retention.
- Patch and vulnerability deadlines by severity.
- Backups with recovery objectives and a successful restore test.
- Incident playbook covering candidate and employer impact.
- Disable/rollback path for a faulty model or unfair outcome.
Repository-specific actions
- Replace
_tmp.auth._token.local and _tmp.auth._token_expiration.local with the approved hardened session architecture.
- Move
saved-candidates, dismissed-candidates, and authoritative company-context-state records to secure tenant APIs. If an onboarding draft remains local, minimize it, namespace it, expire it, and clear it on logout/account change.
- Exchange invite tokens immediately and use
history.replaceState or router replacement to remove them; set Referrer-Policy: no-referrer on the invite flow.
- Verify LaunchDarkly contexts are private/pseudonymous and Cloudflare logs exclude candidate records, scores, tokens, and request bodies.
- Remove
vite-plugin-vue-devtools from production builds and prove edge security headers on staging and production.
- Enable unit/lint/security checks and a small auth/tenant/candidate smoke suite on pull requests before promotion.
08 / Privacy operations
Rights and employment challenges must follow the data lineage
Candidate request or challenge workflow
- Log the request, identity, date, employer/search, disputed fact or score, and whether an employment decision is pending.
- Verify identity proportionately and pause affected automated recommendations or disclose the dispute where appropriate.
- Identify whether the issue is source evidence, marketplace presentation, matching logic, employer action, or more than one layer.
- Route source-evidence corrections to Skills Validation while Marketplace corrects caches, display, ranking, and downstream employer copies.
- Provide intelligible information about the principal data and criteria; do not answer with a mathematical formula alone.
- Offer meaningful human review by a trained person who can change the result, record the decision, notify the candidate, and propagate corrections.
Retention decisions to approve
Candidate discoverability should expire or be reconfirmed; stale skill evidence should be visibly dated and excluded from current matching when no longer reliable. Employer searches, shortlists, dismissals, explanations, audit records, notices, and appeals need separate periods based on recruitment need and legal claims. Deleted source evidence must stop influencing future matching. Backups require a fixed rolling expiry and documented restoration handling. Telemetry should be retained for less time than core product records.
Incident and discrimination response
The response plan must cover confidentiality incidents and harmful model behavior. Record discovery time, affected candidates/employers, data/model versions, containment, evidence preservation, regulatory/customer notice, candidate communications, and remediation. As a processor, notify controllers without undue delay. As a controller, preserve the ability to meet the GDPR 72-hour authority deadline where applicable. A bias or scoring incident needs the same named ownership, rollback, impact analysis, and post-incident correction discipline as a security incident.
09 / Light SOC 2
Use SOC 2 habits, not SOC 2 marketing, for beta
SOC 2 is a CPA examination of controls, not legal compliance, certification, or a substitute for GDPR and employment-law work. The beta needs evidence discipline, not an immediate audit purchase.
| Control family | Light beta practice | Evidence |
| CC1-CC2 Governance | Name security, privacy, product, model, and employment-risk owners; approve concise policies; train staff and employer admins. | Approvals, responsibilities, training, customer instructions. |
| CC3 Risk assessment | Maintain one product risk register covering privacy, discrimination, model, security, vendors, and jurisdiction. | Risk entries, DPIA/AI assessments, owners, due dates, acceptance. |
| CC6 Access controls | MFA, least privilege, tenant authorization, session hardening, access approval/offboarding and review. | Configurations, approvals, negative tests, review exports, session evidence. |
| CC7 System operations | Monitor alerts, vulnerabilities, model quality and fairness; run security and harmful-output incident exercises. | Scans, alerts, dashboards, incidents, tabletop results, remediations. |
| CC8 Change management | Peer review, automated tests, controlled deployment, model/version approval, rollback and emergency changes. | PRs, CI, deployment/model registry, approvals, rollback records. |
| CC9 Vendor risk | Tier and review Cloudflare, LaunchDarkly, identity, hosting, Skills Validation, portfolio, support, and other processors. | Vendor register, DPAs, transfer terms, reviews, renewal/exit decisions. |
| Processing integrity design | Define score semantics, data lineage, validation, completeness, correction propagation, and employer-facing limitations. | Model factsheet, tests, reconciliations, correction and appeal logs. |
Later assurance path: consider SOC 2 Type 1 only when the commercial system boundary and control design are stable. Consider Type 2 after controls have operated consistently for a meaningful period. Do not say “SOC 2 compliant” or “SOC 2 certified.” Security is the required category; add others only when customer commitments justify them.
10 / Delivery plan
30/60/90-day path to a controlled beta
| Window | Outcome | Work |
| Days 0-30 | Contain the prototype and define the decision system | Keep candidate data synthetic; name owners; document system/data/model boundary; decide candidate source and discoverability; classify legal roles and jurisdictions; start DPIA/Article 22/AI Act/US assessments; inventory vendors and telemetry; draft beta prohibitions and risk register. |
| Days 31-60 | Implement privacy, model, and security controls | Harden sessions/invites; move employer context and decisions server-side; prove tenant isolation; implement notices/rights/retention/audit; document and validate matching; test adverse impact and accessibility; approve terms, DPA, notices, factsheet and customer instructions; enable CI gates and restore/incident tests. |
| Days 61-90 | Run a named-employer pilot with continuous evidence | Close jurisdiction requirements and independent audit where required; sign documents; activate only approved candidates/employers; rehearse correction/appeal/deletion; monitor score quality, disparities, access, incidents and complaints; review every model change; hold weekly risk review and retain release evidence. |
Go decision
A real-data beta begins only when legal, privacy, security, product, and model owners sign a one-page release record linking every gate to current evidence. Any open blocker keeps the decision at no-go. Medium residual risks require a named accepting owner, a deadline, and a beta-specific containment. A customer contract cannot transfer away the product’s own controller, security, accuracy, or discrimination responsibilities.
11 / Evidence
What the launch reviewer must be able to open
| Evidence | Owner | Pass condition |
| Beta scope, geography, customer and prohibited-use record | Product / Legal | Named employers and candidate population; no ambiguous automated-decision use. |
| System/data map, RoPA, role matrix, LIA and DPIA | Privacy / Engineering | Approved, dated and matches production fields, vendors, regions and flows. |
| Candidate source, visibility, notice and content-rights evidence | Product / Privacy | Every profile has an attributable source, basis, notice, expiry and correction route. |
| Model/rule factsheet, code/version, validation and limitation record | Model / Product | Job relevance, metrics, failure modes, data lineage and change controls approved. |
| Fairness, accessibility, accommodation and jurisdiction results | Legal / Model | No unresolved material disparity; alternatives assessed; required audit/notices complete. |
| Human oversight, explanation, correction and appeal rehearsal | Support / Product | A trained reviewer can explain, pause and change a result within target time. |
| Terms, DPA, notices, AUP, factsheet, TOMs and subprocessors | Legal / Privacy | Approved versions and signed customer acceptance before access. |
| Session, invite, MFA, tenant and audit-log evidence | Engineering / Security | Hardened configuration plus passing cross-tenant and account-switch tests. |
| Telemetry, headers, dependency, secret and vulnerability evidence | Security / Engineering | No tokens/candidate PII in telemetry; no open critical/high issues; production headers proven. |
| Backups, restore, incident and harmful-model tabletop | Platform / Security | Successful restore and exercises with gaps owned and dated. |
| Beta release and monitoring record | Product / Legal / Security | All gates closed; thresholds, rollback, residual risks and reviewers signed. |
12 / Sources
Primary legal and assurance references
- EU General Data Protection Regulation - official text, especially Arts. 5, 6, 9, 12-22, 25, 28, 30, 32-35, and 44-49.
- EDPB Guidelines on automated individual decision-making and profiling.
- EDPB-endorsed GDPR guidance, including the DPIA and transparency guidelines.
- Regulation (EU) 2024/1689 - EU Artificial Intelligence Act, including Art. 6 and Annex III employment uses.
- European Commission - 2026 AI Omnibus enters into force, including the current high-risk application timeline.
- EEOC - Employment Tests and Selection Procedures.
- EEOC Strategic Enforcement Plan 2024-2028, including AI and machine-learning hiring systems.
- EEOC and DOJ - disability discrimination risks in algorithmic hiring.
- NYC DCWP - Automated Employment Decision Tools and Local Law 144.
- Colorado Attorney General - Anti-Discrimination in AI Law rulemaking.
- AICPA Trust Services Criteria.
Repository evidence reviewed
src/main.ts, src/router/index.ts, src/services/auth.service.ts, signup/login components, useCompanyContext.ts, useSavedCandidates.ts, candidate services/types/cards/details/dashboard, onboarding and hiring-context components, architecture.md, vite.config.ts, index.html, wrangler.toml, Terraform and Cloudflare workflows, E2E workflows and Playwright strategy material, dependency manifests, and the production dependency audit.
Important: This report is product, privacy, and engineering guidance, not legal advice, a bias audit, a DPIA, a penetration test, a SOC 2 examination, or an audit opinion. Applicability depends on the legal entity, candidate source and location, employer workflow, model design, contracts, deployment, actual data, and operational practice. Qualified privacy and employment counsel should approve the legal model and jurisdiction decisions; qualified security and model-risk professionals should validate production controls and the matching system before launch.