AI가 짠 코드,
설명할 수 있나요?
테스트 커버리지가 실행된 줄을 보여주듯, CRDD는 내가 설명할 수 있는 코드를 보여줍니다. 레포를 연결하고 퀴즈를 풀면 설명하지 못한 부분이 부채비율로 드러납니다.
먼저 둘러보려면 porklog 데모를 열어 보세요. 로그인 없이 볼 수 있습니다.
23export function extractToc(markdown: string): TocItem[] {// 첫 시도에 설명함24const slugger = new GithubSlugger();25const items: TocItem[] = [];26let inCodeFence = false;2728for (const line of markdown.split("\n")) {// 힌트를 보고 설명함29if (/^\s*(```|~~~)/.test(line)) {30inCodeFence = !inCodeFence;31continue;32}33if (inCodeFence) continue;3435const match = /^(#{2,3})\s+(.*)$/.exec(line);// 설명하지 못함36if (!match) continue;3738const text = plainText(match[2]);// 아직 묻지 않음39if (!text) continue;4041items.push({42depth: match[1].length as 2 | 3,43text,44id: slugger.slug(text),45});46}// 첫 시도에 설명함4748return items;49}
첫 시도에 설명함힌트를 보고 설명함설명하지 못함아직 묻지 않음
동작 방식
레포를 연결합니다
public 레포의 import·호출 관계를 읽어 코드를 개념 단위로 묶습니다. LLM은 쓰지 않습니다.
그 코드로 질문합니다
개념 하나를 고르면 실제 코드를 근거로 세 문항을 냅니다. 틀리면 힌트, 그다음 설명이 열립니다.
설명하지 못한 곳이 부채로 남습니다
첫 시도 정답과 설명을 보고 맞힌 답은 점수가 다릅니다. 지도에서 부채가 높은 곳부터 갚아 나갑니다.