Per-position accounting
A new swap must not reset the lock for an older position. Amount, destination and unlock time are recorded together.
Case 04 · Token conversion & claims
Each PHL swap keeps its own destination, unlock time and claim.
I built the interface and contracts for converting PHL on Polygon into time-locked claims on a destination chain, including wallet pairing, agreement recording and Merkle proofs.
Deployed the public interface, Polygon swap and receipt contracts, and a funded BSC demo claim contract. Demo parameters: a ten-minute lock and TGIVE destination token.
Each swap needs its own destination and unlock time. Multiple positions from the same wallet must remain independently claimable, even when their amounts and timestamps are identical.
Built the interface, Phil wallet pairing, position display and agreement-signing flow.
Implemented swap positions and locked receipts with a separate unlock time and destination for each position.
Implemented snapshot-based Merkle claims, duplicate-claim protection and deployment across Polygon and BSC.
The wallet signs the acknowledgement and records the document hash before the swap. Personal information is not written as plain text on-chain.
Document hash + wallet signatureThe acknowledgement is tied to the wallet and document version.The swap creates a position carrying its amount, destination chain and unlock time. The interface reads positions directly from the contract.
PositionOpened → positionsOfThe lock belongs to the position, not the whole wallet.A snapshot becomes a Merkle root published to the destination claim contract by its administrator.
account + positionIndex + amount + unlockAtThe position index distinguishes otherwise identical positions.After the position unlocks, the contract verifies its proof, marks the leaf as claimed and sends the destination tokens to the recipient.
MerkleProof → claimedLeaf → transferAn already-claimed leaf cannot pay a second time.A new swap must not reset the lock for an older position. Amount, destination and unlock time are recorded together.
The administrator publishes the snapshot root. This is a snapshot-based conversion system, not a trustless bridge.
Public demo interface. Inspect without connecting a wallet or making a transaction.

Based on contract source, deployment handoff and the publicly accessible demo. Contract and product links identify the implementation artifacts.
Demonstration configuration: ten-minute lock and TGIVE demo token on BSC. This is not represented as the final production rollout.