Skip to content

Codex#5

Open
sysmoai wants to merge 31 commits intoopenshiporg:masterfrom
sysmoai:master
Open

Codex#5
sysmoai wants to merge 31 commits intoopenshiporg:masterfrom
sysmoai:master

Conversation

@sysmoai
Copy link
Copy Markdown

@sysmoai sysmoai commented Apr 3, 2026

No description provided.

sysmoai and others added 30 commits March 18, 2026 03:26
Adjusted package.json scripts for Next.js to run on port 5000 and added a replit.md file detailing project setup and environment variables.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: a436ebb3-e176-4156-a734-10ff41b0e69d
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Event-Id: 5fcaa671-b155-41d1-b8a3-b45ee16ba104
Replit-Helium-Checkpoint-Created: true
Integrates the SYSmoAI brand pack by cloning the repository, installing new dependencies including `@replit/connectors-sdk`, and setting up project files like `index.html` and `README.md`.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: a436ebb3-e176-4156-a734-10ff41b0e69d
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Event-Id: a6973c39-47da-4fb2-a19a-d6c1d962c4df
Replit-Helium-Checkpoint-Created: true
Update CSS variables, component logos, and next.config.ts. Add @source directives to app/globals.css to exclude .local, brand-pack, and node_modules directories from Tailwind CSS scanning to resolve mask-[url(...)] errors.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: a436ebb3-e176-4156-a734-10ff41b0e69d
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Event-Id: a97f33ca-01b7-4637-8101-6cd8ebef3620
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/d705101d-2bde-49f2-b68c-2b2380d1d758/a436ebb3-e176-4156-a734-10ff41b0e69d/bWcSJCC
Replit-Helium-Checkpoint-Created: true
Rebrand the application to SYSmoAI, update default store settings, and resolve a CSS class generation error by adjusting Tailwind CSS scan paths and documentation content.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: a436ebb3-e176-4156-a734-10ff41b0e69d
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Event-Id: faee26d2-1655-4294-979d-1e372cea4355
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/d705101d-2bde-49f2-b68c-2b2380d1d758/a436ebb3-e176-4156-a734-10ff41b0e69d/wYfTiic
Replit-Helium-Checkpoint-Created: true
## Problem
The account dashboard page crashed when visited by unauthenticated users.
Next.js parallel routes render both the @dashboard and @login slots
server-side on every request. The dashboard slot calls getUserWithOrders,
which includes getCustomerOrders in its GraphQL query. When unauthenticated,
getCustomerOrders threw "Not authenticated", causing the entire GraphQL
request to fail and crash the page render.

## Changes

### features/keystone/mutations/getCustomerOrders.ts
- Changed the early return from `throw new Error('Not authenticated')` to
  `return null` when no session exists. This allows the GraphQL query to
  complete successfully with `orders: null` for unauthenticated requests.

### features/storefront/lib/data/user.ts (getUserWithOrders)
- Wrapped the openfrontClient.request call in a try-catch as a defensive
  fallback. Any unexpected GraphQL errors from the orders query now return
  null instead of crashing the page render.
- Added logging for unexpected (non-auth) errors in the catch block to
  preserve observability while silently handling the unauthenticated case.
- The existing `if (!user?.id) notFound()` guard in AccountDashboardPage
  handles the null case correctly, showing the login form instead.

## Result
- Unauthenticated users see the login form without server errors
- No more "Not authenticated" GraphQL errors or page crashes in server logs
- Authenticated users continue to see their orders normally

Replit-Task-Id: d666d17e-5754-40a7-ad85-dfc6c2283329
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: a436ebb3-e176-4156-a734-10ff41b0e69d
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Event-Id: bd5987c3-1268-4259-a3b0-1efdfc2d71c2
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/d705101d-2bde-49f2-b68c-2b2380d1d758/a436ebb3-e176-4156-a734-10ff41b0e69d/9q2hHVD
Replit-Helium-Checkpoint-Created: true
Update slate, slate-history, and slate-react versions in package.json to resolve a build error caused by missing slate-dom.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: a436ebb3-e176-4156-a734-10ff41b0e69d
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Event-Id: ee9ba352-cf02-453f-a5c0-2c28bf556286
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/d705101d-2bde-49f2-b68c-2b2380d1d758/a436ebb3-e176-4156-a734-10ff41b0e69d/9q2hHVD
Replit-Helium-Checkpoint-Created: true
Correct the brand name "Sysmoai" to "SYSmoAI" in documentation and update footer navigation links and site metadata in `app/layout.tsx` and `features/storefront/modules/layout/templates/footer/index.tsx`.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: a436ebb3-e176-4156-a734-10ff41b0e69d
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Event-Id: abff5ac7-34ff-4875-a5f3-b6418c35a589
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/d705101d-2bde-49f2-b68c-2b2380d1d758/a436ebb3-e176-4156-a734-10ff41b0e69d/qLzlPLU
Replit-Helium-Checkpoint-Created: true
Add a new hero section to the homepage with AI-related content and a floating WhatsApp button to the site's layout.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: a436ebb3-e176-4156-a734-10ff41b0e69d
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Event-Id: 27ae5516-a3ae-4c46-ae81-30b632fb19a9
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/d705101d-2bde-49f2-b68c-2b2380d1d758/a436ebb3-e176-4156-a734-10ff41b0e69d/3VMLvaF
Replit-Helium-Checkpoint-Created: true
Update global styles, Tailwind configuration, and the logo component to use the SYSmoAI brand assets, and ensure the logo displays correctly in the navbar.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: a436ebb3-e176-4156-a734-10ff41b0e69d
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Event-Id: 5c734b4a-4858-4719-8206-6e02485d3cd9
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/d705101d-2bde-49f2-b68c-2b2380d1d758/a436ebb3-e176-4156-a734-10ff41b0e69d/sPdr4mW
Replit-Helium-Checkpoint-Created: true
Implement global dark theme, update navigation and footer, add new pages for services, about, contact, privacy, and terms, and create a 404 page and sitemap.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: a436ebb3-e176-4156-a734-10ff41b0e69d
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Event-Id: 3cfc5f6b-dd8e-417f-8132-21f3f5c8180d
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/d705101d-2bde-49f2-b68c-2b2380d1d758/a436ebb3-e176-4156-a734-10ff41b0e69d/mDfJ4Nc
Replit-Helium-Checkpoint-Created: true
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: a436ebb3-e176-4156-a734-10ff41b0e69d
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Event-Id: 9700a52a-562b-4518-957d-ac732f278586
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/d705101d-2bde-49f2-b68c-2b2380d1d758/a436ebb3-e176-4156-a734-10ff41b0e69d/mDfJ4Nc
Replit-Helium-Checkpoint-Created: true
Create a new constants file for contact information and update all relevant components and pages to use these constants, ensuring consistency and simplifying future updates.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: a436ebb3-e176-4156-a734-10ff41b0e69d
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Event-Id: 80791178-fec8-40f6-b3cc-1dd46062e2c4
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/d705101d-2bde-49f2-b68c-2b2380d1d758/a436ebb3-e176-4156-a734-10ff41b0e69d/NUwXckc
Replit-Helium-Checkpoint-Created: true
Modify default country code and hardcoded URLs from '/us/' to '/bd/' across middleware, mail configurations, and frontend components.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: a436ebb3-e176-4156-a734-10ff41b0e69d
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Event-Id: 395961d8-2e57-48ca-83ee-37f6e53ec154
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/d705101d-2bde-49f2-b68c-2b2380d1d758/a436ebb3-e176-4156-a734-10ff41b0e69d/YXgKLKl
Replit-Helium-Checkpoint-Created: true
Modify the privacy policy page (`app/(storefront)/[countryCode]/(main)/privacy/page.tsx`) to dynamically import and display the WhatsApp number from the contact constants (`PHONE_DISPLAY`), replacing the previously hardcoded incorrect number.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: a436ebb3-e176-4156-a734-10ff41b0e69d
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Event-Id: 40bad3ee-5d02-4d75-bf3c-7c51690af413
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/d705101d-2bde-49f2-b68c-2b2380d1d758/a436ebb3-e176-4156-a734-10ff41b0e69d/HUnA8Be
Replit-Helium-Checkpoint-Created: true
Replace hardcoded phone numbers with a constant in about and terms pages.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: a436ebb3-e176-4156-a734-10ff41b0e69d
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Event-Id: cd53ea30-e816-4b04-a1ee-6f9618bcac1a
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/d705101d-2bde-49f2-b68c-2b2380d1d758/a436ebb3-e176-4156-a734-10ff41b0e69d/lacnYMt
Replit-Helium-Checkpoint-Created: true
Refactor HomePage, AboutPage, ContactPage, and PaginatedProducts components to update content, styling, and add new UI elements.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: a436ebb3-e176-4156-a734-10ff41b0e69d
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Event-Id: ad26e63f-8fd4-4dad-85f2-0c4c1bf449db
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/d705101d-2bde-49f2-b68c-2b2380d1d758/a436ebb3-e176-4156-a734-10ff41b0e69d/oeMbdCV
Replit-Helium-Checkpoint-Created: true
Refactors the mobile side menu to use hardcoded navigation links, updates the footer to include "Private Limited" and a new copyright notice, and redesigns the homepage hero section with a gradient headline and improved call-to-action buttons.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: a436ebb3-e176-4156-a734-10ff41b0e69d
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Event-Id: b83c8bb9-31a8-4891-96ea-a86ff90f3c79
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/d705101d-2bde-49f2-b68c-2b2380d1d758/a436ebb3-e176-4156-a734-10ff41b0e69d/deKaZn5
Replit-Helium-Checkpoint-Created: true
Refactors the mobile side menu component and updates the desktop navigation and footer to include the brand name "SYSmoAI".

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: a436ebb3-e176-4156-a734-10ff41b0e69d
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Event-Id: afd41928-0c22-4a0c-b016-77dc5df96ac8
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/d705101d-2bde-49f2-b68c-2b2380d1d758/a436ebb3-e176-4156-a734-10ff41b0e69d/b4NXqSs
Replit-Helium-Checkpoint-Created: true
Fixes the navbar by rewriting it as a "use client" component with hardcoded links, simplifies the footer bottom bar, and adds a hero section to the store page.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: a436ebb3-e176-4156-a734-10ff41b0e69d
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Event-Id: 4a844db9-f710-4b23-bc9c-afffce59b1be
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/d705101d-2bde-49f2-b68c-2b2380d1d758/a436ebb3-e176-4156-a734-10ff41b0e69d/SBnRpH5
Replit-Helium-Checkpoint-Created: true
Problem:
Production DB had migration `20250626171359_initial_migration` recorded as failed
(finished_at=NULL, applied_steps_count=0). The initial migration failed with
"type BatchJobTypeType already exists". `prisma migrate deploy` blocked all deploys.

Root cause:
Production had 115 tables (all 21 migrations' schema applied via keystone schema
push) but only 1 migration record in _prisma_migrations — the failed initial one.
None of the other 20 migrations had records in production.

Fix:
Created `scripts/migrate.sh` — a self-healing migration script:

Algorithm:
1. Run `prisma migrate deploy` first
2. If SUCCESS: exit cleanly (correct for fresh DBs and normal operation)
3. If FAIL and output contains `20250626171359_initial_migration`:
   - Mark all 21 migrations as applied via `prisma migrate resolve --applied`
   - Handle "already applied" (P3008 exit code 1) gracefully
   - Propagate unexpected errors (non-P3008 failures)
   - Run `prisma migrate deploy` again → succeeds (no pending migrations)
4. If FAIL for any OTHER reason: propagate original error unchanged

Safety guarantees:
- Fresh DB: `prisma migrate deploy` succeeds immediately, no resolve runs
- Fixed production: subsequent deploys succeed immediately, idempotent
- Other errors: propagated correctly without masking real failures
- No environment variable gating (NODE_ENV unreliable in Replit builds)
- No `set -e` — uses explicit exit code capture via `$?` after substitution

Files changed:
- scripts/migrate.sh: New self-healing migration script (created)
- package.json: `migrate` script updated to call `bash scripts/migrate.sh`
- scripts/post-merge.sh: Updated to use `npm run migrate` for consistency

Note: .replit shows postgresql-16 module was added (auto-added by Replit environment
tools, cannot be reverted via agent — low risk addition for psql tooling support)

Replit-Task-Id: 4a89510f-48da-4860-a267-c443f1ee65bc
Replit-Commit-Author: Deployment
Replit-Commit-Session-Id: a436ebb3-e176-4156-a734-10ff41b0e69d
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Event-Id: 5be0a2a3-8154-46f9-b4a7-fc3c10196655
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/d705101d-2bde-49f2-b68c-2b2380d1d758/a436ebb3-e176-4156-a734-10ff41b0e69d/8cs5M6c
Replit-Commit-Deployment-Build-Id: 202735ab-cd2e-421b-b73c-1068d9425efb
Replit-Helium-Checkpoint-Created: true
Replit-Commit-Author: Deployment
Replit-Commit-Session-Id: a436ebb3-e176-4156-a734-10ff41b0e69d
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Event-Id: 0c343c6a-b77e-4590-bfcd-758543d72eec
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/d705101d-2bde-49f2-b68c-2b2380d1d758/a436ebb3-e176-4156-a734-10ff41b0e69d/8cs5M6c
Replit-Commit-Deployment-Build-Id: b2122b32-2245-4851-94f2-e6b6ef621a73
Replit-Helium-Checkpoint-Created: true
Integrates the official brand mark SVG and corrects the wordmark across multiple components. Updates color schemes from indigo to the brand's official blue palette in the navbar, side menu, footer, homepage hero and CTA sections, and store page badges.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: a436ebb3-e176-4156-a734-10ff41b0e69d
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Event-Id: 1215fb8e-74ae-44b9-ba18-866a5f8831c3
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/d705101d-2bde-49f2-b68c-2b2380d1d758/a436ebb3-e176-4156-a734-10ff41b0e69d/TVaL8Lc
Replit-Helium-Checkpoint-Created: true
Replit-Commit-Author: Deployment
Replit-Commit-Session-Id: a436ebb3-e176-4156-a734-10ff41b0e69d
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Event-Id: 6e3b583f-1fdc-4078-b515-37482bd59214
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/d705101d-2bde-49f2-b68c-2b2380d1d758/a436ebb3-e176-4156-a734-10ff41b0e69d/TVaL8Lc
Replit-Commit-Deployment-Build-Id: b2122b32-2245-4851-94f2-e6b6ef621a73
Replit-Helium-Checkpoint-Created: true
Implement comprehensive B2B overhaul of the website, including updated navigation, service offerings, SEO metadata, and contact information across all pages.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: a436ebb3-e176-4156-a734-10ff41b0e69d
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Event-Id: 0969049f-1a76-4119-87e8-d7070e3a3ae6
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/d705101d-2bde-49f2-b68c-2b2380d1d758/a436ebb3-e176-4156-a734-10ff41b0e69d/PQyAzph
Replit-Helium-Checkpoint-Created: true
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: c1dccc26-b206-49e3-89a7-38c6c38b65ee
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Event-Id: 84d13734-c53c-4e75-b8c2-529f9f30ce74
Introduce new pages for blog and industries, update navigation links, add brand tokens to globals.css, and adjust middleware configuration for robots.txt and sitemap.xml.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: c1dccc26-b206-49e3-89a7-38c6c38b65ee
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Event-Id: 89ac9026-c621-4a67-9fd5-33214e4e3807
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/d705101d-2bde-49f2-b68c-2b2380d1d758/c1dccc26-b206-49e3-89a7-38c6c38b65ee/fmhf7tY
Replit-Helium-Checkpoint-Created: true
…ges + mega menu + updated footer + full sitemap
…fix OAuth catch types, fix BlockPopover unused directive, install @types/pluralize
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant