There is no headers() function in next.config.mjs configuring CSP, X-Frame-Options, X-Content-Type-Options, Referrer-Policy, or Permissions-Policy. For a wallet application handling (eventually real) financial operations and rendering data from external sources (CoinGecko rates, federation lookups once real), the absence of CSP in particular means any future XSS (see the chart.tsx issue above) has no defense-in-depth backstop.
Definition of done:
- CSP configured with a documented policy (script-src, connect-src covering coingecko.com and the real backend API once wired, etc.)
- Remaining standard security headers set (X-Frame-Options or frame-ancestors, X-Content-Type-Options: nosniff, Referrer-Policy)
- Verified via a response-header assertion test against a running dev server
Before opening a PR for this issue, read CONTRIBUTING.md.
This is not a starter-issue. The Definition of done above is the full
acceptance criteria, not a subset to sample from — a PR that addresses part
of it is an unfinished issue, not a smaller one. Your PR must include, in
the PR description itself:
PRs missing these will be sent back before review, not reviewed and rejected — please do this up front.
There is no
headers()function in next.config.mjs configuring CSP, X-Frame-Options, X-Content-Type-Options, Referrer-Policy, or Permissions-Policy. For a wallet application handling (eventually real) financial operations and rendering data from external sources (CoinGecko rates, federation lookups once real), the absence of CSP in particular means any future XSS (see the chart.tsx issue above) has no defense-in-depth backstop.Definition of done:
Before opening a PR for this issue, read CONTRIBUTING.md.
This is not a starter-issue. The Definition of done above is the full
acceptance criteria, not a subset to sample from — a PR that addresses part
of it is an unfinished issue, not a smaller one. Your PR must include, in
the PR description itself:
PRs missing these will be sent back before review, not reviewed and rejected — please do this up front.