Skip to content

v38.2.0#108

Merged
Phinetwork merged 1 commit intoPhinetwork:mainfrom
kojibai:main
Jan 1, 2026
Merged

v38.2.0#108
Phinetwork merged 1 commit intoPhinetwork:mainfrom
kojibai:main

Conversation

@Phinetwork
Copy link
Copy Markdown
Owner

Release Notes — 38.2.0

Attestation — Full-screen Verify portal (no route change)

Motivation

  • Provide an Attestation entry in the Atrium that opens the existing Verify experience as a full-screen modal popover without navigating away from the shell.
  • Keep Verify isolated in a portal so it can be dismissed via backdrop click or Esc without impacting routed panel state.

Description

  • Added a lazy-loaded VerifyPageLazy and a new VerifyPopover component that mirrors existing popover behavior:

    • portal mounting
    • backdrop handling
    • Esc close
    • focus management
    • useBodyScrollLock
  • Introduced verifyOpen state with openVerify / closeVerify handlers and rendered:

    • <VerifyPopover open={verifyOpen} onClose={closeVerify}> … </VerifyPopover> inside AppChrome to host the Verify modal.
  • Added an Attestation tile button to the Atrium nav that opens the popover, styled via .nav-item--button to preserve the tile look while using a semantic button.

  • Kept styling consistent by reusing explorer-pop panel classes with additional verify-pop modifiers for the attestation portal.

Testing

  • Started the dev server with:

    • npm run dev -- --host 0.0.0.0 --port 4173 and confirmed the app launched and served successfully.
  • Ran a Playwright script that navigated to /, clicked Attestation: Verify ΦKey, and captured:

    • artifacts/attestation-modal.png successfully.

KaiVoh — Edge-to-edge full-viewport modal

Motivation

  • The KaiVoh panel felt visually constrained compared to the Attestation/Explorer portal and should open full-screen for a more spacious, app-like experience.
  • Match Attestation/Explorer full-viewport presentation and remove inner padding + rounded framing that restricts content.

Description

  • Updated src/components/KaiVoh/styles/KaiVohModal.css to make the modal backdrop and container occupy the full viewport:

    • changed layout from centered to stretched
    • removed inset padding
  • Set the container to width: 100% and height: 100%, adjusted max-height to use --kai-vh for stable viewport sizing, and removed rounded border-radius so the modal becomes edge-to-edge.

  • Adjusted backdrop alignment (align-items / justify-content) to stretch, cleared padding, and lowered .kai-voh-body min-height to 0 so the inner scroll region expands correctly.


Verifier — On-glyph ledger balance surfaced (BALANCE vs LIVE)

Motivation

  • The verifier should display the glyph’s on-glyph balance for transfer/receive glyphs instead of showing the origin/root value.
  • When a glyph embeds a ledger of debits, the remaining balance must surface in the header and valuation panel.
  • If no ledger exists, preserve the existing live valuation as the fallback.

Description

  • Added a small ledger parser readLedgerBalance and DebitLoose type to extract originalAmount and compute remaining from embedded debits in the verifier payload.

  • Reworked valuation logic to compute:

    • displayPhi / displayUsd as ledgerBalance.remaining when present
    • otherwise fall back to liveValuePhi
  • Updated LiveValuePill to accept label and ariaLabel so the UI clearly reflects BALANCE vs LIVE.

  • Adjusted valuation mini-fields to label/show glyph balance vs live valuation accordingly.

  • All changes contained in src/pages/VerifyPage.tsx (value computation + UI label updates).


Verifier header chips — Direct entry actions (no new UI surfaces)

  • Clicking Proof of Breath™ under the Verifier header opens Attestation (Verify popover).
  • Clicking ☤Kai-Signature™ opens Mint ΦKey (Mint route/modal), keeping the shell intact and the interaction instant.

Summary

38.2.0 locks the Atrium into a true KaiOS-style shell: portals are full-viewport, dismissible, and isolated; KaiVoh is finally edge-to-edge; and the verifier now reports the actual on-glyph balance when a ledger is present—without breaking the live valuation fallback.

## Release Notes — 38.2.0

### Attestation — Full-screen Verify portal (no route change)

**Motivation**

* Provide an **Attestation** entry in the Atrium that opens the existing Verify experience as a **full-screen modal popover** without navigating away from the shell.
* Keep Verify isolated in a portal so it can be dismissed via **backdrop click** or **Esc** without impacting routed panel state.

**Description**

* Added a **lazy-loaded** `VerifyPageLazy` and a new `VerifyPopover` component that mirrors existing popover behavior:

  * portal mounting
  * backdrop handling
  * **Esc** close
  * focus management
  * `useBodyScrollLock`
* Introduced `verifyOpen` state with `openVerify` / `closeVerify` handlers and rendered:

  * `<VerifyPopover open={verifyOpen} onClose={closeVerify}> … </VerifyPopover>`
    inside `AppChrome` to host the Verify modal.
* Added an **Attestation tile button** to the Atrium nav that opens the popover, styled via `.nav-item--button` to preserve the tile look while using a semantic button.
* Kept styling consistent by reusing `explorer-pop` panel classes with additional `verify-pop` modifiers for the attestation portal.

**Testing**

* Started the dev server with:

  * `npm run dev -- --host 0.0.0.0 --port 4173`
    and confirmed the app launched and served successfully.
* Ran a Playwright script that navigated to `/`, clicked **Attestation: Verify ΦKey**, and captured:

  * `artifacts/attestation-modal.png`
    successfully.

---

### KaiVoh — Edge-to-edge full-viewport modal

**Motivation**

* The KaiVoh panel felt visually constrained compared to the Attestation/Explorer portal and should open full-screen for a more spacious, app-like experience.
* Match Attestation/Explorer full-viewport presentation and remove inner padding + rounded framing that restricts content.

**Description**

* Updated `src/components/KaiVoh/styles/KaiVohModal.css` to make the modal backdrop and container occupy the **full viewport**:

  * changed layout from **centered** to **stretched**
  * removed inset padding
* Set the container to `width: 100%` and `height: 100%`, adjusted `max-height` to use `--kai-vh` for stable viewport sizing, and removed rounded `border-radius` so the modal becomes **edge-to-edge**.
* Adjusted backdrop alignment (`align-items` / `justify-content`) to stretch, cleared padding, and lowered `.kai-voh-body` `min-height` to `0` so the inner scroll region expands correctly.

---

### Verifier — On-glyph ledger balance surfaced (BALANCE vs LIVE)

**Motivation**

* The verifier should display the glyph’s **on-glyph balance** for transfer/receive glyphs instead of showing the origin/root value.
* When a glyph embeds a ledger of debits, the **remaining balance** must surface in the header and valuation panel.
* If no ledger exists, preserve the existing **live valuation** as the fallback.

**Description**

* Added a small ledger parser `readLedgerBalance` and `DebitLoose` type to extract `originalAmount` and compute `remaining` from embedded debits in the verifier payload.
* Reworked valuation logic to compute:

  * `displayPhi` / `displayUsd` as `ledgerBalance.remaining` when present
  * otherwise fall back to `liveValuePhi`
* Updated `LiveValuePill` to accept `label` and `ariaLabel` so the UI clearly reflects **BALANCE** vs **LIVE**.
* Adjusted valuation mini-fields to label/show glyph balance vs live valuation accordingly.
* All changes contained in `src/pages/VerifyPage.tsx` (value computation + UI label updates).

---

### Verifier header chips — Direct entry actions (no new UI surfaces)

* Clicking **Proof of Breath™** under the Verifier header opens **Attestation** (Verify popover).
* Clicking **☤Kai-Signature™** opens **Mint ΦKey** (Mint route/modal), keeping the shell intact and the interaction instant.

---

### Summary

38.2.0 locks the Atrium into a true **KaiOS-style shell**: portals are full-viewport, dismissible, and isolated; KaiVoh is finally **edge-to-edge**; and the verifier now reports the **actual on-glyph balance** when a ledger is present—without breaking the live valuation fallback.
@vercel
Copy link
Copy Markdown

vercel bot commented Jan 1, 2026

@kojibai is attempting to deploy a commit to the realbrianklockgmailcom's projects Team on Vercel.

A member of the Team first needs to authorize it.

@Phinetwork Phinetwork merged commit b710220 into Phinetwork:main Jan 1, 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