Summary
The published @aoagents/ao-web package (0.9.5, current npm latest) references /mascot.png in the dashboard UI but does not ship the asset, so the Next.js server logs an image 404 on render and the brand mark shows as a broken image. The cause is that public/ is missing from the package's npm files allowlist, so public/mascot.png is stripped from the published tarball even though it is committed in source.
Symptom
The dashboard server logs:
⨯ The requested resource isn't a valid image for /mascot.png received null
and the AppMark brand mark renders broken.
Root cause
AppMark renders the brand mark via next/image:
// packages/web/src/components/AppMark.tsx
<span className="app-mark" aria-hidden="true">
<Image src="/mascot.png" alt="" width={23} height={23} ... />
</span>
The asset is committed in source:
packages/web/public/mascot.png (git-tracked) ✓
But packages/web/package.json files does not include public/:
"files": [
".next/server",
".next/static",
".next/*.json",
".next/BUILD_ID",
"dist-server",
"next.config.js"
]
So npm publish excludes public/. Confirmed in the installed 0.9.5 artifact: the @aoagents/ao-web package tree contains zero files under any public/ directory and no mascot.png anywhere, so /mascot.png 404s at runtime. This is config-independent — it reproduces for any user of this release.
Suggested fix
Add "public" to the files array in packages/web/package.json so public/mascot.png (and any other /-rooted static assets) are included in the published tarball. With next start, public/ must be present in the package for root-served static assets to resolve.
Environment
@aoagents/ao 0.9.5 (npm latest)
- Affects all users of this release (independent of local configuration)
Summary
The published
@aoagents/ao-webpackage (0.9.5, current npmlatest) references/mascot.pngin the dashboard UI but does not ship the asset, so the Next.js server logs an image 404 on render and the brand mark shows as a broken image. The cause is thatpublic/is missing from the package's npmfilesallowlist, sopublic/mascot.pngis stripped from the published tarball even though it is committed in source.Symptom
The dashboard server logs:
and the
AppMarkbrand mark renders broken.Root cause
AppMarkrenders the brand mark vianext/image:The asset is committed in source:
packages/web/public/mascot.png(git-tracked) ✓But
packages/web/package.jsonfilesdoes not includepublic/:So
npm publishexcludespublic/. Confirmed in the installed0.9.5artifact: the@aoagents/ao-webpackage tree contains zero files under anypublic/directory and nomascot.pnganywhere, so/mascot.png404s at runtime. This is config-independent — it reproduces for any user of this release.Suggested fix
Add
"public"to thefilesarray inpackages/web/package.jsonsopublic/mascot.png(and any other/-rooted static assets) are included in the published tarball. Withnext start,public/must be present in the package for root-served static assets to resolve.Environment
@aoagents/ao0.9.5(npmlatest)