Skip to content

docs(policy): record that only a dataset declaring its terms can be published - #801

Merged
Eomdahyeon merged 2 commits into
mainfrom
docs/issue-785-publish-needs-declared-terms
Oct 4, 2026
Merged

Eomdahyeon merged 2 commits into
mainfrom
docs/issue-785-publish-needs-declared-terms

Conversation

@Eomdahyeon

Copy link
Copy Markdown
Collaborator

Closes #785

결정 — (b)

이슈는 (a) 나머지 131개의 라이선스를 채우거나 (b) "spec 기반 데이터셋만 publish 할 수 있다"를 계약으로 적으라고 했다. (b)를 택했다.

변경 내용

  • docs/policy/terms-matrix.md 에 "Which datasets can be published" 절: 결정, 근거, 어디서 강제되는지, 카탈로그 전용 데이터셋이 게시 가능해지는 경로(spec 이전 시 조건 확인, chore: remaining migrate-to-spec backlog #409).
  • tests/unit/test_declared_terms_decision.py: 조건이 있는 데이터셋은 모두 spec 기반 / 카탈로그 전용 데이터셋에는 조건이 없음 / to_dict() 에서 license: null / 결정 문장이 문서에 있음.
  • CHANGELOG [Unreleased] Changed.

완료 조건 2번 (Builder 의 거부 테스트)

이미 있다 — 새로 추가하지 않았다. Builder main 의 service/redistribution.py 가 선언 없는 데이터셋을 unknown("the dataset declares no redistribution terms")으로 판정하고 tests/unit/test_redistribution.py::test_unknown_terms_block_a_public_publish_only 가 공개 게시 거부를 고정한다 (코드와 테스트 이름을 읽어 확인했고, 이 PR 에서 다시 돌리지는 않았다). 비공개 게시는 여전히 가능하다는 점도 문서에 적었다.

검증

실행: 런타임 데이터셋 156개 중 license 가 있는 것 25개, spec 이 있는 것 25개. 새 테스트 4개 통과, ruff 통과.

review:R3 이슈다 — 작성자가 아닌 사람의 승인이 필요하다. 결정 자체가 정책이므로 다르게 정하고 싶으면 이 PR 을 닫으면 된다.

🤖 Generated with Claude Code

@yeongseon yeongseon left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

리뷰 — 수정 요청 한 가지.

결정에는 동의합니다: 조건을 선언한 데이터셋만 공개 게시합니다. 확인하지 않은 KOGL 유형을 기관 기본값으로 채우지 않는다는 근거도 맞습니다.

고칠 것: tests/unit/test_declared_terms_decision.py 에 # type: ignore[type-arg] 가 4곳 있습니다 (refs() -> list, 그리고 refs: list 인자 3곳). AGENTS.md 가 type: ignore 를 금지합니다 — list[DatasetRef] 로 적으면 ignore 없이 됩니다. CI 의 mypy 는 src 만 보기 때문에 걸리지 않았을 뿐입니다.

main 과 충돌 상태(CHANGELOG)이니 같이 리베이스해 주세요.

@Eomdahyeon
Eomdahyeon force-pushed the docs/issue-785-publish-needs-declared-terms branch from 6469c44 to 18e3e42 Compare October 4, 2026 14:43
@Eomdahyeon

Copy link
Copy Markdown
Collaborator Author

리뷰 반영: type: ignore 네 곳을 없앴다 — list[DatasetRef] 로 적었다. main 위로 리베이스도 했다. 같은 위반이 오늘 내가 머지한 다른 테스트에도 세 곳 있어서 따로 PR 로 고쳤다 (test/drop-type-ignores).

@yeongseon yeongseon left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

수정 확인했습니다 — type: ignore 4곳이 list[DatasetRef] 로 바뀌었고 그 밖의 내용은 그대로입니다. 체크도 통과했습니다. 승인합니다.

Eomdahyeon added a commit that referenced this pull request Oct 4, 2026
## 문제

#801 리뷰가 짚은 것과 같은 위반이 오늘 내가 이미 머지한 테스트에 세 곳 더 있다. AGENTS.md 는 `type:
ignore` 를 금지한다 ("Fix the type error instead of silencing it").

- `tests/unit/test_nodata_is_an_empty_result.py` (#792):
`representation="api_json" # type: ignore[arg-type]`
- `tests/unit/core/test_list_all_memory.py` (#802):
`_make_executor(transport) # type: ignore[arg-type]` 두 곳

## 변경 내용

- 문자열 대신 `Representation.API_JSON` 을 넘긴다.
- `_LazyTransport` 를 `FakeTransport` 의 서브클래스로 만들어 `_make_executor` 가 받는
타입이 되게 했다.

테스트 동작은 그대로다: 두 파일 `13 passed`. ruff 통과.

## 범위

오늘 내가 추가한 파일만 고쳤다. `main` 의 `tests/` 에는 `type: ignore` 가 그 밖에도 53곳 남아
있다(`git grep -c` 합계 56 중 이 3곳 제외) — 그것들은 건드리지 않았다.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Eomdahyeon <213566566+Eomdahyeon@users.noreply.github.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
@Eomdahyeon
Eomdahyeon force-pushed the docs/issue-785-publish-needs-declared-terms branch from 18e3e42 to 95fff4e Compare October 4, 2026 15:18
Eomdahyeon and others added 2 commits October 5, 2026 00:28
…ublished

Closes #785

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@Eomdahyeon
Eomdahyeon force-pushed the docs/issue-785-publish-needs-declared-terms branch from 95fff4e to adacbe2 Compare October 4, 2026 15:28
@Eomdahyeon
Eomdahyeon merged commit 62fa6a3 into main Oct 4, 2026
23 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat(specs): 131 of 156 datasets declare no licence terms, so Builder's publish gate has nothing to read

2 participants