Skip to content

v42.2.0#119

Merged
Phinetwork merged 55 commits intoPhinetwork:mainfrom
kojibai:main
Jan 26, 2026
Merged

v42.2.0#119
Phinetwork merged 55 commits intoPhinetwork:mainfrom
kojibai:main

Conversation

@Phinetwork
Copy link
Copy Markdown
Owner

No description provided.

kojibai and others added 30 commits January 25, 2026 20:25
…vercel

Fix SSR on Vercel: run SSR build and resilient manifest lookup
…rding-credentials

Safely access `navigator.credentials` in WebAuthn helpers
…essages

Keep SSR debug output visible without client boot
…-for-ssr

Fix SSR entry bundle resolution
…e-error

Fix SSR bundle lookup for Vercel deployments
…e-error-41k07e

Preserve SSR server outputs during client build
…oading-errors

Avoid warm-up 404s for shell routes
…signer

Fix audit auth signer display for receive glyphs
kojibai and others added 25 commits January 26, 2026 11:33
…es-as-specified

Refactor VerifyPage to verify-only audit flow
…rifypage

Fix owner auth ΦKey enforcement, guard credId decoding, expose raw embedded φKey, and ignore stale receive bundles
…in-verifypage

Fix WebAuthn signer verification flow to accept discoverable passkeys and normalize credId comparison
…signer-flow

VerifyPage: enforce owner vs provenance signer and implement two‑phase owner WebAuthn (assert→restore)
…dering

Hide KAS UI and effects when required author signature data is absent
…of bundle)

### Motivation
- Improve the existing “Save Verified Card” output so exported PNGs are authoritative, self‑verifying receipts that embed the full proof bundle and include sigil, steward pulse, KAS/G16 indicators, compact fingerprints, and a QR pointer.
- Allow offline verification by enabling VerifyPage to ingest receipt PNGs and re-run the same verification pipeline from the embedded bundle.
- Reuse existing SVG/QR/export pipelines where possible and add a minimal PNG iTXt helper to embed metadata.

### Description
- Redesigned the verified‑card SVG layout for a sober, receipt/sovereign look and added a QR area, seals, sigil rendering and microtext fingerprints in `src/og/buildVerifiedCardSvg.ts` and adjusted types in `src/og/types.ts` to carry `svgHash`, `verifierUrl`, `proofBundleJson`, and `qrDataUrl`.
- Updated the client export flow in `src/og/downloadVerifiedCard.ts` to: generate a compact QR pointer payload, rasterize the SVG at poster scale, then embed iTXt PNG chunks named `phi_proof_bundle`, `phi_bundle_hash`, and `phi_receipt_hash` before downloading the PNG.
- Added a small, dependency‑free PNG chunk utility `src/utils/pngChunks.ts` that can read iTXt chunks and insert iTXt chunks (CRC32 table + chunk builder + parser) so the full proof bundle JSON can be embedded into the PNG.
- Wire VerifyPage to accept receipt PNGs: added file input and button, `onPickReceiptPng` handler and drag/drop support that reads `phi_proof_bundle` from the PNG, reconstructs the shared receipt, and sets it into the same `sharedReceipt` flow so the existing verification pipeline runs unchanged (files updated: `src/pages/VerifyPage.tsx`, `src/pages/VerifyPage.css`).
- Kept existing rasterization/export utilities (`svgToPngBlob`, `qrDataURL`, svg meta helpers) and only added one new file (`pngChunks.ts`) as required by the metadata embedding requirement.

### Testing
- Ran TypeScript full check with `npx tsc -p tsconfig.json --noEmit`, which completed successfully after fixes (no type errors reported).
- Launched the dev server (`vite`) and confirmed it started; captured a smoke screenshot of the Verify page via a headless browser to validate the new UI control is present (receipt upload button and dropzone updated).
- Performed local interactive flows during development: exported a PNG via the client SVG→PNG pipeline and validated that iTXt chunks can be read back by the new reader utility (manual verification during development; export/import loop exercised).
…of bundle)

### Motivation
- Improve the existing “Save Verified Card” output so exported PNGs are authoritative, self‑verifying receipts that embed the full proof bundle and include sigil, steward pulse, KAS/G16 indicators, compact fingerprints, and a QR pointer.
- Allow offline verification by enabling VerifyPage to ingest receipt PNGs and re-run the same verification pipeline from the embedded bundle.
- Reuse existing SVG/QR/export pipelines where possible and add a minimal PNG iTXt helper to embed metadata.

### Description
- Redesigned the verified‑card SVG layout for a sober, receipt/sovereign look and added a QR area, seals, sigil rendering and microtext fingerprints in `src/og/buildVerifiedCardSvg.ts` and adjusted types in `src/og/types.ts` to carry `svgHash`, `verifierUrl`, `proofBundleJson`, and `qrDataUrl`.
- Updated the client export flow in `src/og/downloadVerifiedCard.ts` to: generate a compact QR pointer payload, rasterize the SVG at poster scale, then embed iTXt PNG chunks named `phi_proof_bundle`, `phi_bundle_hash`, and `phi_receipt_hash` before downloading the PNG.
- Added a small, dependency‑free PNG chunk utility `src/utils/pngChunks.ts` that can read iTXt chunks and insert iTXt chunks (CRC32 table + chunk builder + parser) so the full proof bundle JSON can be embedded into the PNG.
- Wire VerifyPage to accept receipt PNGs: added file input and button, `onPickReceiptPng` handler and drag/drop support that reads `phi_proof_bundle` from the PNG, reconstructs the shared receipt, and sets it into the same `sharedReceipt` flow so the existing verification pipeline runs unchanged (files updated: `src/pages/VerifyPage.tsx`, `src/pages/VerifyPage.css`).
- Kept existing rasterization/export utilities (`svgToPngBlob`, `qrDataURL`, svg meta helpers) and only added one new file (`pngChunks.ts`) as required by the metadata embedding requirement.

### Testing
- Ran TypeScript full check with `npx tsc -p tsconfig.json --noEmit`, which completed successfully after fixes (no type errors reported).
- Launched the dev server (`vite`) and confirmed it started; captured a smoke screenshot of the Verify page via a headless browser to validate the new UI control is present (receipt upload button and dropzone updated).
- Performed local interactive flows during development: exported a PNG via the client SVG→PNG pipeline and validated that iTXt chunks can be read back by the new reader utility (manual verification during development; export/import loop exercised).
…of bundle)

### Motivation
- Improve the existing “Save Verified Card” output so exported PNGs are authoritative, self‑verifying receipts that embed the full proof bundle and include sigil, steward pulse, KAS/G16 indicators, compact fingerprints, and a QR pointer.
- Allow offline verification by enabling VerifyPage to ingest receipt PNGs and re-run the same verification pipeline from the embedded bundle.
- Reuse existing SVG/QR/export pipelines where possible and add a minimal PNG iTXt helper to embed metadata.

### Description
- Redesigned the verified‑card SVG layout for a sober, receipt/sovereign look and added a QR area, seals, sigil rendering and microtext fingerprints in `src/og/buildVerifiedCardSvg.ts` and adjusted types in `src/og/types.ts` to carry `svgHash`, `verifierUrl`, `proofBundleJson`, and `qrDataUrl`.
- Updated the client export flow in `src/og/downloadVerifiedCard.ts` to: generate a compact QR pointer payload, rasterize the SVG at poster scale, then embed iTXt PNG chunks named `phi_proof_bundle`, `phi_bundle_hash`, and `phi_receipt_hash` before downloading the PNG.
- Added a small, dependency‑free PNG chunk utility `src/utils/pngChunks.ts` that can read iTXt chunks and insert iTXt chunks (CRC32 table + chunk builder + parser) so the full proof bundle JSON can be embedded into the PNG.
- Wire VerifyPage to accept receipt PNGs: added file input and button, `onPickReceiptPng` handler and drag/drop support that reads `phi_proof_bundle` from the PNG, reconstructs the shared receipt, and sets it into the same `sharedReceipt` flow so the existing verification pipeline runs unchanged (files updated: `src/pages/VerifyPage.tsx`, `src/pages/VerifyPage.css`).
- Kept existing rasterization/export utilities (`svgToPngBlob`, `qrDataURL`, svg meta helpers) and only added one new file (`pngChunks.ts`) as required by the metadata embedding requirement.

### Testing
- Ran TypeScript full check with `npx tsc -p tsconfig.json --noEmit`, which completed successfully after fixes (no type errors reported).
- Launched the dev server (`vite`) and confirmed it started; captured a smoke screenshot of the Verify page via a headless browser to validate the new UI control is present (receipt upload button and dropzone updated).
- Performed local interactive flows during development: exported a PNG via the client SVG→PNG pipeline and validated that iTXt chunks can be read back by the new reader utility (manual verification during development; export/import loop exercised).
…-functionality

Enhance verified card PNG export and receipt PNG import (embedded proof bundle)
…ipt-image-export

Add deterministic “Proof of Breath” seal, move QR under Φ logo, add Sigil‑Seal branding
…port-layout

Polish verified card layout: SIGIL‑SEAL, G16 badge, and Proof seal sizing
@Phinetwork Phinetwork merged commit 74d61f1 into Phinetwork:main Jan 26, 2026
1 check failed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants