4월 12일 주간기술보고

Summary

June 5, 2018 12:38 AM

주간 하이라이트

지난주 팀은 핵심 코드 기반들을 리팩토링(재구성)하기 위한 토론에 참여했습니다.
코어가 안정적이면서도 새로운 기능을 도출하고 작업을 시작할 수있도록
최소한의 코드로 재구성하는것이 최적이라는 주안점을 두고 보았습니다.
현재의 코드는 문제 발생시 범위 지정의 어려움이 있어,
첫번째 작업으로 코어 안정화 관련문서(메뉴얼이 되겠죠)를 작성하고
그것을 바탕으로 작업개선에 도움을 줄것입니다.
이 작업을 2주정도 걸릴 거라고 보고 시니어 엔지니어가 피드백을
이미 한번 해줬으므로 곧 문서를 다 작성하고 문제접근에 대한 기본적인
로드맵이 생길 것으로 보입니다.
(소스코드상에 비즈니스 로직의 문제가 서로 얽혀 있어 어디서부터
어디까지 손을 대야할지 애매한 딜레마에 빠지게되는 것을 역설.
이에 대한 지침서를 마련함.)

거래소 협업 지원

V1 API 문서가 완료되었다고 보고했습니다.
새로운 유스케이스가 추가 되었고 검토중입니다.
또한 거래소에 필요한 모든 엔드포인트를 성공적으로 포팅했습니다.
테스트 적용범위를 확대하고있고, 거래소에 제공할 개발 가이드는 작성중입니다.
IOHK개발팀과 거래소별 개발자간 커뮤니케이션을 위해 뉴스레터
(흔히 개발자를 위한 뉴스레터를 발송하는 개발사가 많습니다.
저만 해도 java, 페이스북을 비롯해서 여러 서비스의 개발자용 킷 소식을
받기 위한 뉴스레터를 구독합니다.)를 발송하기 시작했고
슬랙 채널(슬랙은 기업용 SNS라고 보시면 됩니다. 특히 IT관련업계중에서도
개발 프로젝트에 최적화되어있는, 프로젝트 중심의 UI/UX가
특징인 서비스입니다)도 새로 개설했습니다.
개발환경지원팀과 협업을 잘 하기 위한 토론도 진행중입니다.
(그간 제가 오역을 한부분으로 정정하고자 합니다.
이 부분은 거래소에 제공할 API를 만드는 것이었습니다.
이것은 에이다가 절대 스캠이 아니며, 실제 계속 발전하고
앞날을 내다보고 만들고있다는 가장 큰 증거가 됩니다.
실제 구동하거나 존재하는 시스템이어야만 API가 의미 있고,
이는 실체가 있다는 것을 뜻하기 때문입니다.
하드포크 떠서 노드를 돌리는건 스캠도 할 수있지만 스캠이라면
굳이 API까지 만들 이유는 없습니다.
V1 API에 대한 구체적인 사용설명은
https://cardanodocs.com/technical/wallet/api/v1/ 에 나와있습니다.
개발자를 위한 옵션이라 보시면됩니다.)

Version 1 API 개발

V1 API 개발을 마무리하고 초기 테스트버전을 출시(위 링크 참고)
세부 이슈
CSL-2375 : NTP(네트워크시간동기화) 재구성후 지갑 API를
검토 필요부분이 생겼는데 새로운 디자인은 클라이언트가 시간을
표현하는 방식을 변경할 수있는 방법으로 확장할 수 있습니다
(2000-01-01, 18/01/01, 22/apri/2018 등 여러 형태로
날짜와 시간을 나타낼수있게 됨) 이 기능 통합 테스트 진행중입니다
CSL2398 : 여러 부분을 통합하는 기본 작업이 완료되었습니다.
지난주에 이어 V0 엔드 포인트와 V1 엔드 포인트
누락데이터를 수집하는 작업중.
CSL2400 : 누락된 엔드포인트를 복구하는 작업이고 대부분 해결중.
CSL2405 : 이번 스프린트(작업기간 단위)에서
수수료 포함 옵션 기능을 추가하는 것의 설계 및 구현을 완료합니다.
V1 API 관련해서 수집된 피드백을 검토중입니다.
api 사용 예시 문서화작업도 하고있습니다.
(세부작업내용 설명은 굳이 알 필요없는 부분이라 패스)
그 사이 버그 종류를 분류 해주고 모아주는
로그파일 분석툴도 만들었다고 하는군요.
이 버그 수정이 블록 동기화의 개선을 위한 작업이라고 합니다.
배치다운로드모드와 스트리밍 비교(뭐하자는 작업인지 모르겠네요)
도 해서 유의미한 성능차이를 도출했습니다.
이 작업들은 모두 성능을 최적화하기 위한 시도들입니다.

다이달루스 지갑

지난주 페이퍼월렛 인증서 생성기능 완료했습니다.
자체 테스트도 끝났으므로 외부감사 의뢰해서 진행중입니다.
(FP Complete사에 맡겼겠죠 뭐)
QA테스트 참여 및 다이달루스 0.9.1, 카르다노 1.1.1 핫픽스 수정배포 준비중입니다.
자잘한 UI/UX와 버그수정등을 했으며 다음 릴리스에 반영됩니다.
지난주 2~3개월 걸릴거라는 비동기방식 지갑복구 기능 개발에 착수하였습니다.
(앞으로 이팀은 이거 관련 내용이 주를 이룰 것 같습니다.
난이도가 높습니다.)

지갑 백엔드

지난주 업무 계속.
데이터 마이그레이션은 이번주 또는 다음주에 시작할 예정입니다.
( 음… 이 팀은 자세히 보니까 보고 내용이 지난주에 비해 별로
바뀐게 없습니다. 그냥 지난주 업무 그대로 하고있다고 생각됩니다.)

네트워킹

블록 지속성(block continued) 분석중 개선사항 도출하였습니다.
쿼리(데이터 인출 질의어)가 확인 명령 수행중 3번이나
중복 수행된다는 점을 발견했다고 함.
해결을 위해선 이미 구성된 데이터의 검증시 블록 사이즈를
바이트단위로 표시해야할 필요가 있다고 합니다.
(그냥 버그 하나 잡았다고 하면 될것을…;:wink:

개발환경지원

윈도우용, 맥용 다이달루스 클라이언트 업데이트했습니다.
리눅스용은 베타 버전으로 올렸습니다.
다이달루스 업데이트 절차, 런타임 구성, CI빌드시 샌드박스
(어떤 소프트웨어를 실제로 적용하기 전에 안전하고
고립된 별도의 환경에서 먼저 시험해보는것) 등에
대한 자동화 방안을 강구함.
거래소에 제공할 api문서 제공전, 자체 테스트 담당.
(기타 사항은 별로 중요하지 않아 생략함)

기타 등등

  • 스마트컨트랙트 언어
    지난주부터 로드맵 및 세부추진계획 수행 시작하고,
    언어의 데이터 인코딩 타입에 관한 조사부터 시작.
  • K/IELE
    코드 병합, 내부 테스트 준비중
    지난주 모든 스테이크홀더(카르다노 재단, iohk, emurgo
    모든 관계자들을 이렇게 부릅니다)들이 모여 데이터 수집하고
    연구하고자했던 내용을 계속 진행중.
    AWS(아마존에서 제공하는 클라우드 서버 서비스) K-framework
    테스트를 시작했음.

기술지원은 생략합니다.