En → scn / scn → en 체인 간 kip7 전송 문의

EN과 SCN 각각에 KIP7 Token Contract를 배포하고, 각 체인 내에서의 기능 테스트는 완료 했습니다.
그런데 체인 간 KIP7 전송을 위해 Bridge 등록 기능을 추가하고, 2 step으로 실행하는 경우 SCN 에서,

  1. Parent → Child 에 Tx Pending이 걸리거나
  2. Parent ← Child 에 Tx Pending이 걸리는
    현상이 발생합니다.
    위 현상이 발생할 때는 Sender User의 Token Balance는 차감되어 있지만, Receiver의 Token Balance는 증가되지 않습니다.

이상한 것은 위의 1번이든 2번이든 하나가 발생하면 반대 방향으로의 토큰 전송은 잘 수행된다는 점입니다.


찾다 보니

여기에 Bridge Contract 소스코드를 보면 죄다 ERC20 변환 및 transfer를 처리하고 있는데요…
SCN 테스트용 Javascript , token contract는 죄다 ERC20 으로 구현되어 있어서 양방향 여러 번 실행해도 정상 처리되고, 제가 만든 Contract는 KIP7만 구현해서 문제가 되는 것은 아닌가 하는 생각이 들어요.

현재 Klaytn과 Service chain의 토큰 전송을 ERC20 만 지원한다는 내용을 어디서 본 것 같은데 어떻게 진행을 하는 게 좋을까요?

혼선을 드려 죄송합니다. 해당 servicechain-contracts 레포지토리는 아직 완성된 버전이 아니고, 다음 개선 사항으로 개발 진행 중인 상태입니다.
저희가 service chain bridge contract의 버전을 0.8.x 버전으로 올리기 위한 준비 과정에 있습니다. 구체적인 릴리즈 일정은 잡혀 있지 않지만 10월 전후로 목표를 잡고 있습니다.
README 내용을 수정하여 혼선이 없도록 수정해 놓겠습니다.

궁금한 부분이나 개선 부분들 있으면 이슈로 많이 등록해 주세요~

저희가 kip7 관련해서 테스트 가능한 예제를 만들어 놓았는데요, 아래 링크를 참고해 보시면 좋겠습니다. servicechain-value-transfer-examples/kip7 at master · klaytn/servicechain-value-transfer-examples · GitHub

서비스체인은 klaytn v1.8.3은 ERC-20 지원이 되었고, NFT의 tokenURI 처리에 문제가 있어서 v1.8.4부터 ERC-721NFT 토큰 전송이 되도록 수정을 하였습니다.
KIP-7과 KIP-17은 정식 지원은 하고 있지 않지만 ERC-20, ERC-721을 사용하면 토큰 전송이 가능해서 servicechain-value-transfer-examples에서 예제를 추가해 놓았습니다.