UBI Construction Suite — kickoff: context pack, CEO mockups, monorepo build - #1
Draft
mcabico-blip wants to merge 62 commits into
Draft
UBI Construction Suite — kickoff: context pack, CEO mockups, monorepo build#1mcabico-blip wants to merge 62 commits into
mcabico-blip wants to merge 62 commits into
Conversation
Seed the repo with the kickoff context: master context (stack, hard rules, three pillars, 14 module specs, git strategy), branching quick reference, functional & DFD diagram set, and Node/TS monorepo ignores. https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
Annotated design frames for the suite's primary output, per scope decision (CEO deep-dive first, brand light UI, static annotated frames): - ManCom live dashboard: KPI band, accomplishment-vs-plan and survey volume charts, flagged projects, department report feed, AI rail - Trend-projection toggle shown OFF vs ON (solid=actual, dashed= projected, grey=plan convention) - AI Insights register: grounded, severity-ranked, actions route into VPO inbox / Audit exceptions - Ask AI conversational view with per-claim source citations - Agentic-view sandboxed host shell (host contract visible) - Mobile ManCom (PWA) - Widget -> Pillar-3 read-model contract table Verified in headless Chromium (Playwright): no console errors, no horizontal overflow at 1280px. https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
…ity-scoped base entity, health https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
…le offline grace, Google stub https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
…t/receive, where-is + full movement history https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
…cketing/notifications/expiry engines https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
…er + dept read-model stubs + CEO ManCom consolidation + seeds All 14 departments expose Pillar-3 read surfaces; ManCom snapshot verified end-to-end against live Postgres (RBAC 401/403 checked). https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
… auth session, chart components https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
…provals, engineering + dept read-surface pages Implements the approved mockup design against live API data; verified end-to-end in headless Chromium (CEO journey + PE→PM→VPO chain). https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
mcabico-blip
force-pushed
the
claude/gifted-heisenberg-inxyvn
branch
from
June 11, 2026 16:05
c1fbae9 to
0796e41
Compare
…, sheet cards w/ crop marks, title blocks, stamps, chainage rulers, hazard stripes; Space Grotesk + IBM Plex Mono bundled https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
…rs, stamped severities/approvals, billing chainage, survey-flag chart marker, drafting-sheet login https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
…sessions (branches, run, prod env, next work) https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
…ET in production, pin CORS via CORS_ORIGIN, throttle /auth/login (10/min/IP) Verified: 11th bad login returns 429; boot fails on dev JWT default when NODE_ENV=production. https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
…ile server-side verify (enforced when TURNSTILE_SECRET_KEY set), 5/min/IP spam throttle https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
…get slot, TICKET LOGGED stamp, IT helpdesk queue card, nav + login links https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
…ch loaders across pages; proper inline input style on doc transmit https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
- GET /api/dept/:slug/dashboard — uniform shape for all 13 departments: 4 standard KPIs, dept-specific field monitoring (Pillar-3 read-model), CCTV camera meta (live snapshot when CCTV_BASE_URL set) - departments registry (head, read-model, camera id per dept) - seed head-<dept>@ubi.ph accounts (role:manager + dept:<slug>) - RBAC: dept head sees only their dept; CEO/VPO/admin cross-cutting https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
…oring, CCTV thumbnail; dept heads land on their dashboard - DeptDashboard renders uniform KPI band + monitoring table + CctvThumb - CctvThumb: NVR snapshot when online, else NO-SIGNAL drafting placeholder - homeFor() routes dept heads to /dept/<slug>; Engineering tools at /engineering https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
…-update, history; feeds IT PMS https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
…ss-gated physical-location index https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
…ty assets, DeskGuard v2 + consent, env monitoring https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
- Property: scan/re-custody/attest + movement history - Records: expiry, add vehicle doc, access-gated physical index - IT control room: devices, PMS, DeskGuard (consent banner), environmental https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
…ist/kanban/calendar views, tech assign + status advance https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
…llup, projection, material reqs) + ManCom accomplishment fields https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
…ls to monthly report; per-project rollup (to-date %, this-month); monthly projection + material requirements (GDrive-sheet replacement); read-models + seed from real DPWH data https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
…all %, this-month ₱, top-projects panel); wire QuantityModule + seed https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
…ojection+materials grid (GDrive replacement), Quantity head dashboard; ManCom accomplishment KPI + quantity panel; Engineering links https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
…OAEC API, simulated ref when OAEC_BASE_URL unset); read-models https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
…chedules surface as ready-to-buy https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
…curement intake page; Engineering + dept links https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
…ceive only) — POST /docs then opens it ready to transmit https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
…AC-scoped); ManCom/Insights remain exec-only https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
… every page (popover chat, typewriter + sources, RBAC-scoped) https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
…x+rollback), wake trigger (timer + webhook), status-markdown handshake, tool allowlist Server Claude (claude -p on the box) deploys the production branch and fixes issues itself; status flows back via committed ops/DEPLOY_STATUS.md. https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
…property/etc data now backfills onto an existing demo DB after a deploy (was skipped by early return when pay_items already existed) Verified: on a DB with projects but no quantity rows + zeroed in-house, reboot restores in-house amounts + weekly entries without dropping the DB. https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
…t to ubi-edge, capture nginx PWA hardening Closes the loop on DEPLOY_STATUS for_cloud_claude: - Login demo chips gated on import.meta.env.DEV / VITE_SHOW_DEMO_LOGINS (prod login page no longer advertises working creds; verified absent from bundle) - DEPLOY.md §4 + allowlist use 'systemctl restart ubi-edge' (binds :8091) - ops/nginx.sample.conf documents the immutable-assets / no-cache-shell hardening https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
…backstop), with security hardening + end-to-end verify https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
…NGINE warning flagged by deploy) https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
…(deploy) status commit; run triggers from /opt to survive git reset (folds server's box-side fix upstream) Without this, each deploy's status-commit push re-fires the webhook/timer → redeploy → push → infinite loop. Guard runs for both triggers. https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
…p off with VITE_HIDE_DEMO_LOGINS=true at real launch) https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
…(build) + X-Robots-Tag note for nginx https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
…de demo login chips in prod; ensureUser force-rotates on boot Plaintexts not committed (hashes only). Demo tap-to-login is off on the live login page now that real data is in. https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
…no env override) — box VITE_SHOW_DEMO_LOGINS could re-enable them https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
…icle list, trips/events/geofences/drivers/fuel/maintenance proxy + read-models Env-driven Basic auth (CARTRACK_REGION/USER/PASS); demo fleet when unset. Verified live against PH account: 56 vehicles located, nested location.* parsed. https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
…iver events, alerts, geofences, maintenance; per-vehicle locate; enriched live (odometer/fuel/driver); ManCom live-fleet card All verified against the live PH account: 56 vehicles, 10 trips, driver-events, 10 alerts, 10 geofences, maintenance/licence list. Correct paths/params (events end<=midnight, notifications bracket-keys). https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
…ized pilot creds; rotate after) https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
…sswords, migrations, backups…); CLAUDE.md §0 points to it https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM
9 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What this is
Kickoff of the UBI Construction Suite (Ulticon Builders, Inc. + Omega Asia) — building breadth-first per
CLAUDE.md: pillars first, all modules stubbed, refine later.Included so far
CLAUDE.md(master context),GIT.md,diagrams.html,.gitignoremockups.html— annotated CEO-module UI mockups (ManCom, trend projection, AI Insights, Ask AI, agentic host shell, mobile). Verified in headless Chromium: no console errors, no overflow.env.examplewith externalized endpoints (hard rule 6), dev docker-compose@ubi/types— shared domain contracts@ubi/storage— swappableStorageProvider+ LocalDisk driver (hard rules 3/4)In progress (pushed incrementally)
@ubi/api— NestJS modular monolith: pillar-auth (JWT/RBAC/entity scope), pillar-doc-tracking (scan transmit/receive, where-is), pillar-ai-layer (read-model registry), RBAC-gated files, shared services, 14 dept module stubs, seeds@ubi/web— React + Vite PWA: shell per mockups + ManCom wired to APIMicro-commits throughout, conventional scoped messages per
GIT.md.https://claude.ai/code/session_01SmE5jXnu5J2Di7wG6po7yM