tink-harness 1.2.0 → 1.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. package/.claude-plugin/plugin.json +2 -2
  2. package/CHANGELOG.md +103 -67
  3. package/README.ko.md +130 -120
  4. package/README.md +88 -81
  5. package/VERSIONING.md +2 -2
  6. package/bin/install.js +318 -257
  7. package/commands/cast.md +179 -172
  8. package/docs/context-change-review.ko.md +14 -0
  9. package/docs/context-change-review.md +14 -0
  10. package/docs/external-context-policy.ko.md +15 -0
  11. package/docs/external-context-policy.md +15 -0
  12. package/docs/graph-contracts-and-guards.md +61 -0
  13. package/docs/harness-lifecycle-signals.ko.md +23 -0
  14. package/docs/harness-lifecycle-signals.md +23 -0
  15. package/docs/hooks.md +49 -0
  16. package/docs/memory-decision-layers.ko.md +14 -0
  17. package/docs/memory-decision-layers.md +14 -0
  18. package/docs/memory.md +31 -0
  19. package/docs/phase-5-update-confidence.ko.md +99 -0
  20. package/docs/phase-5-update-confidence.md +97 -0
  21. package/docs/planned-work-units.ko.md +77 -0
  22. package/docs/planned-work-units.md +77 -0
  23. package/docs/pr/2026-06-07-phase-5-6-follow-up.ko.md +35 -0
  24. package/docs/pr/2026-06-07-v1.2.0-improvements.html +450 -0
  25. package/docs/pr/2026-06-07-v1.2.1.md +25 -0
  26. package/docs/pr/2026-06-08-planned-work-units.ko.md +27 -0
  27. package/docs/pr/2026-06-08-v1.2.2.ko.md +27 -0
  28. package/docs/repo-signals.ko.md +104 -0
  29. package/docs/repo-signals.md +95 -77
  30. package/docs/research.md +16 -0
  31. package/docs/tink-idea-implementation-plan.ko.md +201 -0
  32. package/docs/update-diagnosis.ko.md +16 -0
  33. package/docs/update-diagnosis.md +16 -0
  34. package/docs/update-troubleshooting.ko.md +113 -0
  35. package/docs/update-troubleshooting.md +100 -0
  36. package/docs/update-verification-recipe.ko.md +118 -0
  37. package/docs/update-verification-recipe.md +119 -0
  38. package/docs/verification-evidence-details.ko.md +14 -0
  39. package/docs/verification-evidence-details.md +14 -0
  40. package/docs/work-state.ko.md +94 -0
  41. package/docs/work-state.md +92 -0
  42. package/package.json +7 -9
  43. package/templates/claude/commands/tink/cast.md +179 -172
  44. package/templates/codex/skills/tink-cast/SKILL.md +14 -13
  45. package/templates/codex/skills/tink-core/RULES.md +163 -112
  46. package/templates/tink/memory/approved/README.md +5 -0
  47. package/templates/tink/memory/candidate/README.md +5 -0
  48. package/templates/tink/memory/evidence/README.md +5 -0
  49. package/templates/tink/memory/rejected/README.md +5 -0
  50. package/templates/tink/schemas/harness-lifecycle.schema.json +44 -0
  51. package/templates/tink/schemas/mcp-policy.schema.json +65 -0
  52. package/templates/tink/schemas/verification.schema.json +154 -141
@@ -0,0 +1,14 @@
1
+ # 메모리 결정 계층
2
+
3
+ Tink memory는 결정된 내용과 제안을 분리해야 한다.
4
+
5
+ 설치되는 memory 폴더는 다음과 같다.
6
+
7
+ - `.tink/memory/approved/`: 로드할 수 있는 승인된 reusable memory.
8
+ - `.tink/memory/candidate/`: 아직 rule처럼 로드하면 안 되는 memory 후보.
9
+ - `.tink/memory/rejected/`: 사용자가 거절했거나 대체한 제안.
10
+ - `.tink/memory/evidence/`: approved memory가 왜 생겼는지 설명하는 짧은 근거 handle.
11
+
12
+ 기존 `mistakes.md`, `preferences.md`, `lessons.md` 파일은 계속 호환된다. 새 흐름에서는 구분이 중요할 때 decision folder를 우선 사용한다.
13
+
14
+ secret, raw log, full diff, private payload, 일회성 작업 진행 상황은 저장하지 않는다. reusable memory 저장은 항상 별도 승인이 필요하다.
@@ -0,0 +1,14 @@
1
+ # Memory Decision Layers
2
+
3
+ Tink memory should separate decisions from suggestions.
4
+
5
+ Installed memory folders:
6
+
7
+ - `.tink/memory/approved/`: approved reusable memory that may be loaded.
8
+ - `.tink/memory/candidate/`: possible memory that must not be loaded as a rule yet.
9
+ - `.tink/memory/rejected/`: proposals the user declined or replaced.
10
+ - `.tink/memory/evidence/`: compact handles explaining why approved memory exists.
11
+
12
+ The older files `mistakes.md`, `preferences.md`, and `lessons.md` remain compatible. Newer workflows should prefer the decision folders when the distinction matters.
13
+
14
+ Do not store secrets, raw logs, full diffs, private payloads, or one-off task progress. Saving reusable memory always requires separate approval.
package/docs/memory.md ADDED
@@ -0,0 +1,31 @@
1
+ # Memory
2
+
3
+ Tink memory is for preventing repeated frustration.
4
+
5
+ ## Save
6
+
7
+ - repeated mistakes
8
+ - stable preferences
9
+ - reusable lessons
10
+
11
+ ## Decision layers
12
+
13
+ - `approved/`: reusable memory that the user explicitly approved and Tink may load.
14
+ - `candidate/`: possible memory that must stay a proposal until approved.
15
+ - `rejected/`: declined or replaced proposals so Tink does not keep asking.
16
+ - `evidence/`: compact evidence handles for approved memory.
17
+
18
+ The legacy files `mistakes.md`, `preferences.md`, and `lessons.md` remain compatible.
19
+
20
+ ## Do not save
21
+
22
+ - raw logs
23
+ - full diffs
24
+ - secrets
25
+ - private data
26
+ - one-off task progress
27
+ - stale issue or PR numbers
28
+
29
+ ## Rule
30
+
31
+ Memory changes require user approval.
@@ -0,0 +1,99 @@
1
+ # Phase 5: 업데이트 신뢰도
2
+
3
+ Phase 5의 목표는 기존 사용자가 Tink를 업데이트할 때 안전하고, 이해 가능하고, 되돌릴 수 있다고 느끼게 만드는 것입니다.
4
+
5
+ 이 phase는 새 command surface를 추가하는 작업이 아닙니다. 기존 `install`, `update`, `$tink:update`, `/tink:update`, 문서, 검증 흐름을 더 신뢰할 수 있게 만드는 작업입니다.
6
+
7
+ 영어판은 `docs/phase-5-update-confidence.md`에 있습니다.
8
+
9
+ ## 왜 필요한가
10
+
11
+ v1.2.0은 focused Codex skills, context artifacts, Repo Signals, Verify Runner evidence, MCP Safe Profile guidance를 추가했습니다. 하지만 기존 사용자는 업데이트 후에도 이런 질문을 하게 됩니다.
12
+
13
+ - update가 예전 Codex `tink` skill을 제거했나?
14
+ - 새 action skills가 설치됐나?
15
+ - 새 schemas가 추가됐나?
16
+ - 내 local harnesses, memory, hooks, config는 보존됐나?
17
+ - 업데이트 후 처음 무엇을 실행하면 되나?
18
+ - 업데이트가 제대로 됐는지 어떻게 확인하나?
19
+
20
+ Phase 5는 이 질문에 직접 답해야 합니다.
21
+
22
+ ## 목표
23
+
24
+ - update가 무엇을 바꿨고 무엇을 보존했는지 설명합니다.
25
+ - clean install뿐 아니라 기존 install에 대한 smoke test를 추가합니다.
26
+ - Claude Code와 Codex를 모두 지원합니다.
27
+ - macOS와 Windows에서 모두 동작하게 유지합니다.
28
+ - 명시적으로 always-update 대상인 template이 아니라면 user-modified files를 보존합니다.
29
+ - 넓은 자동화, 숨은 migration, 새 `tink index` command를 추가하지 않습니다.
30
+
31
+ ## 제안 Slice
32
+
33
+ ### Slice 1: 기존 사용자 update smoke tests
34
+
35
+ 다음을 테스트합니다.
36
+
37
+ - legacy `skills/tink/SKILL.md`가 있는 Codex install이 focused action skills로 업데이트되는지.
38
+ - 오래된 Codex action skill files가 refresh되는지.
39
+ - `context-map.schema.json`, `verification.schema.json` 같은 새 schemas가 추가되는지.
40
+ - user-modified preserved files가 보존되는지.
41
+ - update 후에도 Claude Code command 3-copy 동기화가 유지되는지.
42
+
43
+ ### Slice 2: Update Result Summary
44
+
45
+ `update` 후 installer output을 개선해서 사용자가 다음을 볼 수 있게 합니다.
46
+
47
+ - 설치된 surfaces.
48
+ - 업데이트된 command 또는 skill 위치.
49
+ - legacy Codex skill path가 제거됐는지.
50
+ - 보존된 user-modified files.
51
+ - 다음에 실행할 command.
52
+
53
+ 새 state file을 만들지 않고 plain text output으로 시작합니다.
54
+
55
+ ### Slice 3: Troubleshooting Guide
56
+
57
+ 짧은 update troubleshooting section을 추가합니다.
58
+
59
+ - Codex skill picker에 여전히 old `tink`가 보일 때.
60
+ - plugin update가 latest를 못 찾을 때.
61
+ - schema files가 없을 때.
62
+ - local `.tink/current/` state가 오래됐을 때.
63
+ - Windows shell encoding warning이 테스트 중 보일 때.
64
+
65
+ ### Slice 4: Verification Recipe
66
+
67
+ 작은 검증 recipe를 문서화합니다.
68
+
69
+ ```bash
70
+ npm test
71
+ npx tink-harness@latest update --yes
72
+ ```
73
+
74
+ 그 다음 확인할 항목:
75
+
76
+ - Codex skill directory.
77
+ - Claude command copies.
78
+ - `.tink/schemas/`.
79
+ - `.tink/config.json`.
80
+ - `.gitignore` policy.
81
+
82
+ ## 완료 기준
83
+
84
+ - 기존 사용자 update tests가 통과합니다.
85
+ - README와 한국어 README가 update confidence path를 설명합니다.
86
+ - `$tink:update`와 `/tink:update` 지침이 update 검증 방법을 언급합니다.
87
+ - 새 public command가 추가되지 않습니다.
88
+ - README가 참조하는 docs가 npm package에 포함됩니다.
89
+
90
+ ## 위험
91
+
92
+ - user-modified files를 덮어쓰면 신뢰가 깨집니다.
93
+ - update output이 너무 길면 오히려 시끄러워집니다.
94
+ - 한 surface만 테스트하면 Codex와 Claude Code 동작이 갈라질 수 있습니다.
95
+ - shell-specific syntax에 의존하면 Windows와 macOS 동작이 달라질 수 있습니다.
96
+
97
+ ## 추천 첫 단계
98
+
99
+ 기존 사용자 update smoke tests부터 시작합니다. 가장 명확한 안전 신호를 만들고, 이후 output이나 docs 변경이 추측이 아니라 검증 위에 올라가게 해줍니다.
@@ -0,0 +1,97 @@
1
+ # Phase 5: Update Confidence
2
+
3
+ Phase 5 should make existing users confident that updating Tink is safe, understandable, and reversible.
4
+
5
+ This phase is not about adding a new command surface. It should improve the existing `install`, `update`, `$tink:update`, `/tink:update`, docs, and verification flow.
6
+
7
+ ## Why This Is Needed
8
+
9
+ v1.2.0 added focused Codex skills, context artifacts, Repo Signals, Verify Runner evidence, and MCP Safe Profile guidance. Those changes are useful, but existing users may still wonder:
10
+
11
+ - Did update remove the old Codex `tink` skill?
12
+ - Did it install the new action skills?
13
+ - Did it add the new schemas?
14
+ - Did it preserve my local harnesses, memory, hooks, and config?
15
+ - What should I run first after updating?
16
+ - How do I know the update worked?
17
+
18
+ Phase 5 should answer those questions directly.
19
+
20
+ ## Goals
21
+
22
+ - Make update behavior explain what changed and what was preserved.
23
+ - Add smoke tests for existing installs, not only clean installs.
24
+ - Keep update behavior compatible with Claude Code and Codex.
25
+ - Keep update behavior portable across macOS and Windows.
26
+ - Preserve user-modified files unless a template is explicitly in the always-update set.
27
+ - Avoid broad automation, hidden migrations, or a new `tink index` command.
28
+
29
+ ## Proposed Slices
30
+
31
+ ### Slice 1: Existing User Update Smoke Tests
32
+
33
+ Add test coverage for:
34
+
35
+ - Codex install with legacy `skills/tink/SKILL.md` updates to focused action skills.
36
+ - Existing stale Codex action skill files are refreshed.
37
+ - New schemas such as `context-map.schema.json` and `verification.schema.json` are added.
38
+ - User-modified preserved files stay preserved.
39
+ - Claude Code command 3-copy behavior remains aligned after update.
40
+
41
+ ### Slice 2: Update Result Summary
42
+
43
+ Improve installer output after `update` so users can see:
44
+
45
+ - installed surfaces;
46
+ - updated command or skill locations;
47
+ - removed legacy Codex skill path, when applicable;
48
+ - preserved user-modified files;
49
+ - next command to run.
50
+
51
+ This should be plain text, not a new state file.
52
+
53
+ ### Slice 3: Troubleshooting Guide
54
+
55
+ Add a short update troubleshooting section:
56
+
57
+ - Codex skill picker still shows old `tink`;
58
+ - plugin update does not show latest;
59
+ - schema files are missing;
60
+ - local `.tink/current/` state is stale;
61
+ - Windows shell encoding warning appears during tests.
62
+
63
+ ### Slice 4: Verification Recipe
64
+
65
+ Document a small verification recipe:
66
+
67
+ ```bash
68
+ npm test
69
+ npx tink-harness@latest update --yes
70
+ ```
71
+
72
+ Then inspect:
73
+
74
+ - Codex skill directory;
75
+ - Claude command copies;
76
+ - `.tink/schemas/`;
77
+ - `.tink/config.json`;
78
+ - `.gitignore` policy.
79
+
80
+ ## Done Means
81
+
82
+ - Existing-user update tests pass.
83
+ - README and Korean README explain the update confidence path.
84
+ - `$tink:update` and `/tink:update` guidance mention how to verify an update.
85
+ - No new public command is added.
86
+ - npm package contents still include the docs needed by README.
87
+
88
+ ## Risks
89
+
90
+ - Overwriting user-modified files would break trust.
91
+ - Too much update output would become noisy.
92
+ - Codex and Claude Code behavior could drift if tests cover only one surface.
93
+ - Windows and macOS shell behavior can diverge if tests rely on shell-specific syntax.
94
+
95
+ ## Preferred First Step
96
+
97
+ Start with existing-user update smoke tests. They give the clearest safety signal and make later output/docs changes less speculative.
@@ -0,0 +1,77 @@
1
+ # 계획된 작업 단위
2
+
3
+ 이 문서는 남은 로드맵을 번호가 붙은 단계가 아니라 실제 작업 단위로 다시 정리한다. 모든 작업은 Claude Code와 Codex를 함께 지원하고, macOS와 Windows에서 동작해야 하며, 사용자가 명시적으로 원하지 않는 한 새 public command surface를 만들지 않는다.
4
+
5
+ ## 업데이트 결과 명확화
6
+
7
+ 기존 설치 사용자가 `tink-harness update` 후 상태를 믿기 쉽게 만든다.
8
+
9
+ - 무엇이 바뀌었는지 보여준다.
10
+ - 무엇이 보존되었는지 보여준다.
11
+ - 제거된 legacy Codex skill 경로를 보여준다.
12
+ - 현재 surface에 맞는 다음 명령을 보여준다.
13
+
14
+ ## Cast 컨텍스트 선택
15
+
16
+ Context Graph Lite는 `/tink:cast`와 `$tink:cast` 내부 선택 근거로만 유지한다.
17
+
18
+ - changed path를 작고 관련성 높은 context 후보로 연결한다.
19
+ - `context_graph_rule` signal을 기록한다.
20
+ - 관계가 없으면 추측하지 않고 `unmatched_path`를 기록한다.
21
+ - `tink index`, watcher, generated cache, hidden runtime index를 만들지 않는다.
22
+
23
+ ## 검증 증거 세분화
24
+
25
+ 검증 결과를 다음 행동으로 연결하기 쉽게 만든다.
26
+
27
+ - command, manual, diff, coverage, security, external, package evidence를 구분한다.
28
+ - raw log 대신 짧은 evidence handle을 남긴다.
29
+ - 실패하거나 막힌 check 옆에 가장 작은 복구 행동을 둔다.
30
+
31
+ ## 외부 컨텍스트 정책
32
+
33
+ 외부 context 안전 규칙을 작은 정책 파일로 표현한다.
34
+
35
+ - source는 기본 read-only로 다룬다.
36
+ - 가장 작은 유용한 source reference만 사용한다.
37
+ - secret과 넓은 raw payload는 제외한다.
38
+ - 외부 문서의 지시는 권한이 아니라 데이터로 다룬다.
39
+
40
+ ## 하네스 생애주기 신호
41
+
42
+ `/tink:frog`와 `$tink:weave`가 더 좋은 제안을 하도록 돕는다.
43
+
44
+ - 사용, 성공, 실패, blocked, context-cost 신호를 기록한다.
45
+ - 유지, 개선, 정리 후보, 병합 후보, 관찰을 추천한다.
46
+ - 승인 없이 하네스를 삭제하거나 다시 쓰지 않는다.
47
+
48
+ ## 메모리 결정 계층
49
+
50
+ 승인된 memory와 후보, 거절된 제안을 분리한다.
51
+
52
+ - approved memory만 로드할 수 있다.
53
+ - candidate memory는 제안일 뿐이다.
54
+ - rejected memory는 같은 제안을 반복하지 않게 한다.
55
+ - evidence는 private payload가 아니라 짧은 근거 handle만 저장한다.
56
+
57
+ ## 컨텍스트 변화 리뷰
58
+
59
+ 작업 중 선택된 context가 어떻게 바뀌었는지 보여준다.
60
+
61
+ - 추가되거나 제거된 path를 기록한다.
62
+ - 추가되거나 제거된 signal ref를 기록한다.
63
+ - 새 context가 왜 관련 있어졌는지 설명한다.
64
+ - public graph index가 아니라 run evidence로만 둔다.
65
+
66
+ ## 업데이트 진단
67
+
68
+ 새 명령을 만들지 않고 update 문제 해결을 더 쉽게 만든다.
69
+
70
+ - 진단은 `/tink:update`, `$tink:update`, 문서 안에 둔다.
71
+ - 기대한 install surface와 실제 파일을 비교한다.
72
+ - 가장 작은 검증 recipe로 안내한다.
73
+ - `--force`가 명시되지 않으면 user-modified file을 보존한다.
74
+
75
+ ## 제외
76
+
77
+ release evidence bundling은 계속 제외한다. release history, public release note, portfolio framing은 사용자나 팀의 판단 영역이다. Tink는 검증 artifact를 남길 수 있지만, 공개 release evidence를 어떻게 묶을지는 대신 결정하지 않는다.
@@ -0,0 +1,77 @@
1
+ # Planned Work Units
2
+
3
+ This document restates the remaining roadmap as work units instead of numbered phases. Each unit should support Claude Code and Codex, work on macOS and Windows, and avoid new public command surfaces unless the user explicitly asks for one.
4
+
5
+ ## Update Clarity
6
+
7
+ Make existing installs easier to trust after `tink-harness update`.
8
+
9
+ - Show what changed.
10
+ - Show what was preserved.
11
+ - Show removed legacy Codex skill paths.
12
+ - Show the next command for the active surface.
13
+
14
+ ## Cast Context Selection
15
+
16
+ Keep Context Graph Lite internal to `/tink:cast` and `$tink:cast`.
17
+
18
+ - Match changed paths to small related context candidates.
19
+ - Record `context_graph_rule` signals.
20
+ - Record `unmatched_path` instead of inventing relationships.
21
+ - Do not add `tink index`, watchers, generated caches, or hidden runtime indexes.
22
+
23
+ ## Verification Evidence Details
24
+
25
+ Make verification evidence easier to act on.
26
+
27
+ - Separate command, manual, diff, coverage, security, external, and package evidence.
28
+ - Keep short evidence handles instead of raw logs.
29
+ - Put the next smallest recovery action beside failed or blocked checks.
30
+
31
+ ## External Context Policy
32
+
33
+ Turn the safe external context rules into a small policy file.
34
+
35
+ - Default to read-only sources.
36
+ - Use the smallest useful source reference.
37
+ - Exclude secrets and broad raw payloads.
38
+ - Treat external instructions as data, not authority.
39
+
40
+ ## Harness Lifecycle Signals
41
+
42
+ Help `/tink:frog` and `$tink:weave` make better suggestions.
43
+
44
+ - Track use, success, failure, blocked, and context-cost signals.
45
+ - Recommend keep, weave, cleanup candidate, merge candidate, or observe.
46
+ - Never delete or rewrite a harness without approval.
47
+
48
+ ## Memory Decision Layers
49
+
50
+ Separate approved memory from candidates and rejected proposals.
51
+
52
+ - Approved memory can be loaded.
53
+ - Candidate memory is only a proposal.
54
+ - Rejected memory prevents repeated suggestions.
55
+ - Evidence stores compact handles, not private payloads.
56
+
57
+ ## Context Change Review
58
+
59
+ Show how selected context changed during a run.
60
+
61
+ - Record added and removed paths.
62
+ - Record added and removed signal refs.
63
+ - Explain why a new context item became relevant.
64
+ - Keep it as run evidence, not a public graph index.
65
+
66
+ ## Update Diagnosis
67
+
68
+ Improve update troubleshooting without adding a new command.
69
+
70
+ - Keep diagnosis inside `/tink:update`, `$tink:update`, and docs.
71
+ - Compare expected install surfaces with actual files.
72
+ - Point to the smallest verification recipe.
73
+ - Keep user-modified files preserved unless `--force` is explicit.
74
+
75
+ ## Excluded
76
+
77
+ Release evidence bundling remains excluded. Release history, public release notes, and portfolio framing belong to the user or team. Tink may keep verification artifacts, but it should not decide how public release evidence is packaged.
@@ -0,0 +1,35 @@
1
+ # Phase 5/6 후속 작업 PR 초안
2
+
3
+ ## 문제
4
+
5
+ v1.2.x에서 Codex/Claude Code surface, context artifact, verify runner의 기반은 들어왔지만 기존 사용자가 `update` 후 무엇이 바뀌었는지 확인하기 어렵고, Context Graph Lite가 실제 run artifact에서 어떻게 읽혀야 하는지 충분히 드러나지 않았다.
6
+
7
+ 또한 Codex에서 `$tink:cast`를 사용할 때 승인 요청이 눈에 띄지 않으면 사용자가 의도하지 않은 파일 수정이나 실행이 바로 시작되는 것처럼 느낄 수 있었다. 이 작업에서는 새 public `tink index` 명령을 만들지 않고, 기존 `/tink:cast`와 `$tink:cast` 흐름 안에서 context 선택 근거를 더 잘 남기는 방향을 택했다.
8
+
9
+ ## 해결
10
+
11
+ - `tink-harness update` 출력에 `Update Result Summary`를 추가해 갱신된 파일, 보존된 사용자 수정 파일, 제거된 legacy Codex skill, 설치 위치, 다음 명령을 한 번에 확인할 수 있게 했다.
12
+ - 기존 사용자의 `.tink/config.json`은 `--force` 없이는 보존되도록 update 흐름을 보강했다.
13
+ - Codex `$tink:cast`가 non-trivial run에서 먼저 승인 요청을 보여야 한다는 규칙과 예시를 Codex core rules와 cast skill에 추가했다.
14
+ - Context Graph Lite를 repo signal fixture에 추가하고, changed path가 관련 command copy, Codex skill surface, installer/update docs, schema artifact를 고르는 과정을 테스트로 고정했다.
15
+ - `context-pack.md`, `context-map.json`, `excluded-context.md` fixture가 `context_graph_rule` 신호와 public graph indexing 제외 이유를 보여주도록 보강했다.
16
+ - Work State Guide, Update Troubleshooting, Update Verification Recipe, Repo Signals companion docs를 영어와 한국어로 정리했다.
17
+ - Release Evidence Pack 아이디어는 사용자나 팀의 릴리즈 판단 영역을 침범할 수 있어 현재 계획에서 제외했다.
18
+
19
+ ## 검증
20
+
21
+ - `npm test`
22
+ - 33개 테스트 통과
23
+ - command 3-copy sync, Codex update smoke test, package contents, Context Graph Lite path cases, current-run artifact fixture 확인
24
+ - `git diff --check`
25
+ - 실패 없음
26
+ - Windows 줄끝 변환 경고만 출력됨
27
+ - `npm pack --dry-run --json`
28
+ - 새 문서와 docs/pr 산출물이 패키지에 포함되는 것을 확인
29
+
30
+ ## 참고
31
+
32
+ - npm publish와 버전 bump는 이번 PR 범위에서 제외했다.
33
+ - Sentry 연동은 사용자의 결정에 따라 포함하지 않았다.
34
+ - 새 `tink index` 명령, watcher, generated cache, hidden runtime index는 추가하지 않았다.
35
+ - 모든 변경은 Claude Code와 Codex, macOS와 Windows 동시 지원을 기준으로 검토했다.