학습 작업공간 계약
자격시험을 시작·재개하거나 기록 구조를 바꿀 때 쓰는 공통 저장 계약이다. 시험별 학습 방식은 시험 안내에서 연결한 학습 계약이 정한다. 학습의 판단 이유는 자격시험은 학습 커리큘럼으로 사용하되 시험에 종속되지 않는다와 자격시험 학습에서 공식 자료와 AI의 역할을 분리한다에서 읽는다.
재개와 문서 책임
Certifications에서 시험별 학습 안내의 실제 링크를 따라 계약·최신 계획·활동 원장을 읽는다. 안내에서 역할별 링크를 찾으며 과거의 고정 파일명을 추측해 열지 않는다. 이전 대화의 요약보다 이 문서들이 연속성의 기준이다.
| 문서 역할 | 이름 예시 | 책임 |
|---|---|---|
| 학습 안내 | 리눅스 1급 — 학습 안내.md | 계약·계획·원장·자료와 보존 산출물의 실제 링크 |
| 학습 계약 | 리눅스 1급 — 학습 계약.md | 사용자가 채택한 방식·자료 형식·문제 사용·저장 계약 |
| 학습 계획 | 리눅스 1급 — 학습 계획.md | plan_id, 정수 version, 개정일, supersedes와 안정적인 단원 ID·순서·범위·선수 관계 |
| 활동 원장 | 리눅스 1급 — 활동 원장.md | 추가 전용 객관적 사건 원장 |
| 자료 지도 | 리눅스 1급 — 자료 지도.md | 자료별 역할·권위·접근·획득·범위·한계 |
| 학습자 성찰 | learner-owned/SAA-C03 — 학습자 성찰.md | 선택 사항인 학습자 소유 판단. 사용자가 기록·활용을 요청할 때만 읽고 반영 |
| 학습 본문·요약 | lessons/리눅스 1급 03 — 사용자·파일·권한.md | 전달·보존한 산출물. 존재 자체는 숙달 증거가 아님 |
| 학습 회고 | SAA-C03 — 학습 회고.md | 요청 또는 의미 있는 전환점의 근거 있는 회고 |
파일명과 식별자
파일명은 Obsidian 파일 목록·그래프에서 보여도 시험과 내용을 짐작할 수 있게 쓴다. 본문의 실제 범위를 확인한 뒤 시험명 또는 일관된 약칭, 필요한 순서, 주제나 문서 역할을 조합한다.
- 학습 본문은
시험명 순서 — 주제.md, 통합 요약은시험명 요약 순서 — 주제.md로 구분한다. 단원의 여러 개념을 담는 범위를 한 주장으로 억지로 줄이지 않는다. - 관리 문서는
시험명 — 역할.md로 쓴다. 분석·검증·편집 기록은시험명 역할 순서 — 주제.md로 쓴다. 단계 번호·영어 슬러그·내부 코드만으로 제목을 대신하지 않는다. exams/<exam-id>/의 exam_id와 plan_id·unit_id·기존 계획 version은 안정적으로 유지한다. 파일명 변경만으로 학습 단원이나 계획 개정을 만들지 않는다. YAML title·본문 제목·별칭은 설명을 보완하며 실제 파일명을 대신하지 않는다.- 제목의 금지 문자와 길이는 MCP 경로 계약을 따른다. 파일명은 Vault 안에서 모호하지 않게 정하고 링크는 실제 경로를 사용한다.
- 학습 안내는 읽을 본문과 근거 확인용 분석·검증 기록을 나누어 연결한다. 분석 기록도 내용과 근거를 보존한다.
- 학습자 소유 성찰은 시험 폴더의
learner-owned/아래에 둔다. 이 폴더 전체는 자동 본문 검색·삭제 참조 검사에서 제외하며 명시적 선택 읽기는 허용한다. 이전learner-reflection.md도 이관 호환을 위해 같은 보호를 유지한다. 파일 이동은 이 보호 기능의 배포 확인 뒤 수행한다.
최신 계획과 개정 시 단원 ID 매핑을 기준으로 적용 가능한 unit_delivered 사건을 모은다. 폐기된 단원과 선수 단원이 전달되지 않은 단원을 제외하고, 계획 순서상 가장 앞에 남은 단원을 다음 전달 대상으로 삼는다. current, next, completed, mastered를 별도 권위 상태로 저장하지 않는다. 계획은 단원·구간으로 구성하고 달력 진도는 사용자가 요청할 때만 추가한다. 개정은 버전과 이전 계획의 관계를 보존한다.
사건과 자료 필드
각 사건은 고유 event_id, ISO occurred_at, type, 객관적 필드와 필요한 source를 가진다. 가공하지 않은 평가 관찰에는 interpretation: none을 둔다. unit_delivered는 plan_id·계획 version·unit_id·artifact를 기록한다. 전달 사실만 있고 산출물이 없으면 artifact: not-retained로 남긴다. workspace_initialized, plan_adopted, plan_revised, unit_revisited, assessment_observed, learner_feedback_recorded, contract_revised, source_added, exam_result_recorded, retrospective_created 등 사건의 실제 의미에 맞는 유형을 쓴다.
자료 항목은 URL/경로와 다음 필드를 가진다.
- 역할: coverage_authority, fact_authority, explanatory_scaffold, derived_index, assessment_calibration
- 권위: primary, secondary, derived
- access: open 또는 reserved
- acquisition_owner: agent 또는 learner
- acquisition_state: available, needed, optional, deferred
- access_barrier: none, account, purchase, institution, drm, local_install
- 범위: direct, partial, gap; 필요한 확인일, 허용 변환과 한계
공개 공식 자료는 에이전트가 확보하고 계정·구매·기관·DRM·설치 장벽이 있는 자료는 학습자 획득 대상으로 구분한다. 실제 평가자료는 확보 여부와 별개로 승인된 단계까지 reserved/deferred로 두며 일반 자료 생성에 읽지 않는다. 문제에서 속성·개념을 추출한 뒤의 점수는 완전히 독립적인 첫 노출 평가로 해석하지 않는다. 자료 부족은 이 접근 경계를 바꾸지 않는다.
변경 묶음
보존 산출물을 만들면 학습 안내의 직접 탐색 링크와 원장의 전달 사건을 같은 변경 묶음에 넣는다. 전달·점수·시간·사용자 자기진술을 숙달·강점·약점으로 바꾸지 않는다. 계약 개정에는 결정과 이유를 담은 사건을 추가한다. 포트폴리오 상태는 자격증 로드맵 기록 계약의 별도 책임이다.
새 시험 폴더는 실제 시작 요청 뒤에 만든다. 공식 목표·공식 학습 생태계·권위 있는 참고자료로 범위와 공백을 정하고, 단원 수와 다른 시험의 계약을 미리 강제하지 않는다. 빈 성찰·회고는 미리 만들지 않는다. 회고는 관찰된 준비 과정, 사용자가 말한 효과, 에이전트의 조건부 전이 제안을 구분한다.
이름 변경과 과거 기록
이름 변경은 새 경로 생성·옛 경로 삭제와 현재 탐색 링크 수정을 한 검토 묶음에 넣는다. 시험 계약의 저장 규칙이 달라지면 계약 version을 올리고 이유를 원장에 추가한다. 공통 저장 schema_version과 시험별 contract_version·학습 계획 version은 따로 관리한다.
활동 원장의 사건 ID·시각·평가·전달·판단과 원문 경로 문자열은 보존한다. 탐색용 위키 링크의 목적지만 기계적으로 새 경로에 연결할 수 있으며 표시 문구는 보존한다. 과거 본문을 대조할 수 있도록 이관 전 commit과 옛 경로→새 경로 대응표를 남기고 원장에 이관 사건을 추가한다. 이관을 새로운 전달·학습·숙달 사건으로 세지 않는다.
2026-09-10의 대응표는 자격증 학습 문서 이름 이관 — 2026-09-10에서 확인한다.
출처
2026-09-06 스킬 최소화 준비에서 기존 certification-study-workflow의 본문과 exam-workspace-schema.md를 대조하여 파일 책임·필드·재개 규칙을 추출했다. 스킬 전체 복제나 새 학습 방식 채택이 아니다. 최초 이전 전 원본 사본과 실제 적용 상태는 HANDOFF에서 확인한다.
2026-09-10 사용자가 파일명·그래프에서 내용을 짐작할 수 있도록 공통 스키마 개정과 기존 문서 이관을 요청했다. v2는 고정 관리 파일명을 역할별 실제 링크와 읽을 수 있는 이름으로 전환하며 기존 학습 방식·단원 식별자는 유지한다.