2.5 KiB
2.5 KiB
Iteration Log - 2026-07-24-1220-adhoc-siab-branding
Request
Ad-hoc request to fix multitenant branding issues for the SIAB site/account:
- Replaced the incorrect Nexus logo/branding with the BackOne logo/branding when logged in under the SIAB account.
- Removed the word "Nexus" from the browser tab and page description on the App Lookup page when viewing the SIAB tenant.
Steps Taken
- Analysed Branding Logic:
- Inspected
src/lib/branding.tsto examine how site configurations are selected. - Identified that
isNexuscheck prioritized hostname matches (likedemoplace.my.id) over explicitsiteUuidvalues. Because of this, SIAB accounts (siteUuid === '6681452d_9cae_4ff4_8ae8_0d504774265e') were evaluated as Nexus branding.
- Inspected
- Updated Branding Selection:
- Modified
src/lib/branding.tsto ensure thatisNexusis evaluated only if the active site is NOT SIAB. - Updated the return values for
isSiabto return the BackOne branding (name"BackOne", logo"/backone-logo.png", title"BackOne Dashboard", copyright"PT. Data Bisnis Solusi", color"#E11D48"), which is permitted by Rule 5 inAGENTS.md.
- Modified
- Validated App Lookup Page:
- Verified that the
App Lookuppage (src/app/(dashboard)/lookup/page.tsx) queriesgetSiteBranding()on mount. - Now, on SIAB accounts, the document title will resolve to
"App Lookup | BackOne - Deep Package Inspection"(removing"Nexus"), and the description will correctly read"Search BackOne's...".
- Verified that the
- Created and Executed Unit Test:
- Created a brand-new unit test script
test/branding_unit_test.jsto isolate and testgetSiteBranding. - Verified that the unit test fails when SIAB site gets matched as Nexus on
demoplace.my.id. - Verified that after fixing the branding logic, all test cases pass.
- Created a brand-new unit test script
- Updated Feature List:
- Documented the fix in
docs/feature-list.mdunder the "Sidebar & Brand Alignment" section.
- Documented the fix in
Outcome
- All 5 test cases in
test/branding_unit_test.jspassed successfully. - Branding checks in the DB and multitenant integration tests (
test/multitenant_branding_test.js) remain functional. - The browser subagent encountered an outage of Playwright setup (
playwright.azureedge.net/builds/driver/playwright-1.57.0-win32_x64.zipreturning 404), which is an external issue out of our control.
Considerations for Next Time
- Explicit
siteUuidchecks should always take absolute precedence over hostname/query parameter fallbacks in frontend branding files.