Skip to main content
All Docs
Getting StartedmyProp (AgentOS People Portal)Updated April 4, 2026

Scaffolding Audit: What We Found in v0.1.61

Scaffolding Audit: What We Found in v0.1.61

During the v0.1.61 verification pass, four pages were identified as unfinished scaffolding — either containing template placeholder text or rendering entirely wrong content for a property portal. This post explains each finding, why it matters, and what needs to happen before the portal is production-ready.


Why This Matters

myProp is a white-labelled client portal that agencies deploy directly to their tenants, landlords, buyers, and vendors. Every page a user can reach must be intentional, branded, and appropriate to their role. Placeholder content and misrouted admin tooling undermine trust and can cause real compliance problems — particularly on legal pages like Privacy and Terms.


Finding 1: The Root Page Shows a Generic Marketing Template

Route: /
File: src/app/page.tsx

The portal's root URL currently renders a generic SaaS marketing page that includes the literal string %%PROJECT_NAME%%. This is scaffolding that was never replaced.

The correct behaviour for / is to act as the portal entry point: show the GenericHomeView, which presents a login form to unauthenticated visitors and redirects authenticated users to /companies. Until this is fixed, anyone visiting the root URL sees a broken, unbranded page.

Fix: Replace src/app/page.tsx with a redirect to /companies, or restore the GenericHomeView component as the root page.


Finding 2: A SaaS Pricing Page Is Reachable from the Portal

Route: /pricing
File: src/app/pricing/page.tsx

The /pricing route renders a generic three-tier SaaS pricing table ($0 / $29 / Custom) with features like "Up to 3 team members" and "Community support". None of this content relates to myProp or property management.

Portal users — tenants, landlords, buyers — who stumble onto this page will be confused. There is no pricing model that applies to them here.

Fix: Remove the /pricing route from the portal, or add access controls so it is only reachable by platform administrators. If a pricing page is needed in future, it must be written specifically for myProp's agency-facing offering.


Finding 3: The Platform Admin Dashboard Is Exposed to Portal Users

Route: /dashboard
Directory: src/app/dashboard/

The /dashboard route currently renders a full platform-management interface containing components such as OverviewStats, RecentActivity, an admin panel, job queues, and billing. This is tooling intended for platform operators, not for tenants or landlords using the portal.

Without route-level access control, any authenticated portal user could potentially navigate to /dashboard and see internal operational data.

Fix: Add server-side or middleware-level access control to the /dashboard route so that only users with a platform admin role can access it. Remove any link or navigation item that exposes this route to standard portal users.


Finding 4: Privacy and Terms Pages Contain Unfilled Placeholders

Routes: /privacy, /terms
Files: src/app/privacy/page.tsx, src/app/terms/page.tsx

Both the Privacy Policy and Terms of Service pages were generated from a template and have never had their placeholder tokens replaced. The following strings appear verbatim in the rendered output:

  • {{COMPANY_NAME}}
  • {{DPO_EMAIL}}
  • {{LAST_UPDATED}}

These are legally significant pages. Under GDPR and similar regulations, a Privacy Policy must identify the data controller, provide contact details for the Data Protection Officer, and be kept up to date. Displaying unfilled template tokens is non-compliant and unprofessional.

Fix: Before any public or client-facing deployment, replace all placeholder tokens with the correct company name, DPO email address, and the date the policy was last reviewed. Consider automating this substitution as part of the build or deployment pipeline to prevent regression.


Summary of Required Actions

PriorityRouteFileRequired Action
High/src/app/page.tsxRestore portal entry flow or redirect to /companies
Medium/pricingsrc/app/pricing/page.tsxRemove or restrict to platform admins
High/dashboardsrc/app/dashboard/Restrict to platform admin role; remove from portal nav
High/privacy, /termssrc/app/privacy/page.tsx, src/app/terms/page.tsxReplace all {{PLACEHOLDER}} tokens before go-live

What Was Not Changed

This release is a verification-only audit. No code was modified. All findings above are tracked and awaiting remediation in a follow-up release.