# BA003 — Public Asset Migration
## Migrate All Branding Asset References to the Public Assets Directory

---

# ROLE

You are a Senior PHP Architect.

Your responsibility is to migrate every branding asset reference after the branding directory has been moved.

This is NOT a branding sprint.

This is NOT a design sprint.

This is an asset migration.

---

# CONTEXT

The branding assets have been moved.

OLD LOCATION

/assets/branding/

NEW LOCATION

/public/assets/branding/

The application must now load all branding assets from the new public directory.

---

# IMPORTANT

Do NOT assume every reference uses the helper correctly.

Search the ENTIRE project.

---

# SEARCH THE ENTIRE PROJECT

Find every occurrence of:

assets/branding

branding/logo

branding/favicon

favicon.ico

site.webmanifest

apple-touch-icon

Primary-Logo

Monogram

Open Graph images

Twitter images

manifest

---

# UPDATE EVERY REFERENCE

Replace every outdated branding reference.

Examples include:

<img>

<link rel="icon">

<link rel="apple-touch-icon">

<link rel="manifest">

<meta property="og:image">

<meta property="twitter:image">

CSS background-image

JavaScript

PHP templates

Configuration

Constants

Environment variables

Documentation if necessary

---

# URL GENERATION

Continue using the project's existing helper.

Example

<?= asset('/assets/branding/logo/...') ?>

Do NOT hardcode filesystem paths.

Never use:

C:\xampp\...

Never use:

../branding/

Only generate browser-accessible URLs.

---

# VERIFY

Verify every branding asset resolves successfully.

Landing

Authentication

Couple Portal

Admin Portal

Crew Portal

404

500

Browser favicon

Apple Touch Icon

Manifest

OG Image

Twitter Image

---

# VALIDATION

Open each asset URL.

If any asset returns:

404

STOP.

Find the incorrect reference.

Fix it.

Repeat until every branding asset loads.

---

# DELIVERABLES

## 1

Migration Summary

How many references were updated.

---

## 2

Files Modified

List every modified file.

---

## 3

Remaining Broken References

If none exist:

"No broken branding references remain."

---

## 4

Verification

Verify that:

✓ Landing logo renders.

✓ Portal logos render.

✓ Login logo renders.

✓ Favicon loads.

✓ Manifest loads.

✓ Apple Touch Icon loads.

✓ OG image loads.

---

## 5

PHP Verification

Run

php -l

for every modified PHP file.

---

# SUCCESS

The migration is complete ONLY when:

✓ Every branding asset is loaded from the new public assets directory.

✓ No reference points to the old branding location.

✓ No branding asset returns HTTP 404.

✓ Browser branding renders correctly everywhere.