@chrono-meta/fh-gate 3.0.0 โ†’ 3.1.0

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 (111) hide show
  1. package/.claude/regression/probes_live.yaml +137 -0
  2. package/.claude/rules/.residency-patterns.defaults +7 -0
  3. package/.claude/rules/fh_4axis_gate.md +50 -1
  4. package/.claude-plugin/marketplace.json +8 -2
  5. package/AGENTS.md +27 -0
  6. package/CATALOG.md +17 -0
  7. package/CLAUDE.md +12 -2
  8. package/README.ja.md +51 -7
  9. package/README.ko.md +48 -7
  10. package/README.md +37 -5
  11. package/README.zh.md +45 -8
  12. package/docs/STANDARDS_ALIGNMENT.md +61 -0
  13. package/docs/USER_GUIDE.md +3 -0
  14. package/docs/USE_CASES.md +50 -0
  15. package/docs/model_tier_expectations.md +60 -0
  16. package/knowledge/shared/harness-core/fh_three_layer_canon.md +30 -10
  17. package/knowledge/shared/harness-core/field_verdict_crossfamily_gate.md +8 -0
  18. package/knowledge/shared/harness-core/harness_incubator_doctrine.md +9 -0
  19. package/knowledge/shared/harness-core/iso_ai_standards_crosswalk.md +139 -0
  20. package/knowledge/shared/harness-core/measurement-integrity-checklist.md +20 -0
  21. package/knowledge/shared/learnings/subagent_invocations_log.yaml +441 -4
  22. package/package.json +40 -2
  23. package/plugins/fh-commons/.claude-plugin/plugin.json +1 -1
  24. package/plugins/fh-commons/skills/preprep/README.md +4 -1
  25. package/plugins/fh-commons/skills/preprep/SKILL.md +99 -3
  26. package/plugins/fh-commons/skills/preprep/diagram_from_json.py +154 -0
  27. package/plugins/fh-commons/skills/preprep/fixtures/fixture_R3_negative.pptx +0 -0
  28. package/plugins/fh-commons/skills/preprep/fixtures/fixture_R3_positive.pptx +0 -0
  29. package/plugins/fh-commons/skills/preprep/fixtures/mk_slide_fixtures.py +179 -0
  30. package/plugins/fh-commons/skills/preprep/interslide_deps.py +98 -9
  31. package/plugins/fh-commons/skills/preprep/lane_adjacent_dup.py +4 -1
  32. package/plugins/fh-commons/skills/preprep/lane_diagram.py +95 -0
  33. package/plugins/fh-commons/skills/preprep/lane_geometry.py +181 -0
  34. package/plugins/fh-commons/skills/preprep/lane_promise.py +4 -1
  35. package/plugins/fh-commons/skills/preprep/lane_slide_refs.py +134 -0
  36. package/plugins/fh-commons/skills/preprep/lane_slide_relations.py +300 -0
  37. package/plugins/fh-commons/skills/preprep/preprep.py +129 -8
  38. package/plugins/fh-commons/skills/preprep/preprep_wire.py +210 -0
  39. package/plugins/fh-commons/skills/preprep/presentation_checklist.md +4 -0
  40. package/plugins/fh-commons/skills/preprep/surfaces.example.yaml +18 -0
  41. package/plugins/fh-commons/skills/preprep/test_preprep_lanes_rp.py +184 -0
  42. package/plugins/fh-meta/.claude-plugin/plugin.json +1 -1
  43. package/plugins/fh-meta/CHANGELOG.md +43 -1
  44. package/plugins/fh-meta/skills/auto-decorrelation/SKILL.md +87 -2
  45. package/plugins/fh-meta/skills/frontier-digest/SKILL.md +2 -2
  46. package/plugins/fh-meta/skills/frontier-digest/SKILL_detail.md +25 -5
  47. package/plugins/fh-meta/skills/hub-cc-pr-reviewer/SKILL.md +11 -0
  48. package/plugins/fh-meta/skills/hub-cc-pr-reviewer/SKILL_detail.md +3 -0
  49. package/plugins/fh-qp/.claude-plugin/plugin.json +22 -0
  50. package/plugins/fh-qp/README.md +71 -0
  51. package/plugins/fh-qp/fixtures/evidence_known_clean.txt +3 -0
  52. package/plugins/fh-qp/fixtures/evidence_known_dirty.txt +6 -0
  53. package/plugins/fh-qp/fixtures/reach_known_partial.tsv +4 -0
  54. package/plugins/fh-qp/fixtures/reach_known_reached.tsv +4 -0
  55. package/plugins/fh-qp/fixtures/reach_known_wall.tsv +3 -0
  56. package/plugins/fh-qp/fixtures/verdicts_known_bad_branch.tsv +2 -0
  57. package/plugins/fh-qp/fixtures/verdicts_known_bad_vacuous_machine.tsv +2 -0
  58. package/plugins/fh-qp/fixtures/verdicts_known_good.tsv +4 -0
  59. package/plugins/fh-qp/fixtures/verdicts_verify_only.tsv +3 -0
  60. package/plugins/fh-qp/qp_profile.example.yaml +29 -0
  61. package/plugins/fh-qp/scripts/qp_tools.sh +216 -0
  62. package/plugins/fh-qp/skills/qp/SKILL.md +65 -0
  63. package/plugins/fh-qp/skills/qp-plan/SKILL.md +42 -0
  64. package/plugins/fh-qp/skills/qp-regress/SKILL.md +45 -0
  65. package/plugins/fh-qp/skills/qp-run/SKILL.md +49 -0
  66. package/scripts/chamber_run.sh +14 -5
  67. package/scripts/com.forge-harness.live-eval.plist +84 -0
  68. package/scripts/compaction_probe.sh +9 -35
  69. package/scripts/directional_diff_gate.sh +14 -2
  70. package/scripts/frontier_digest_autopilot.sh +4 -1
  71. package/scripts/map_postprocess.py +90 -0
  72. package/scripts/outbound_query_guard.sh +131 -0
  73. package/scripts/outbound_query_hook.sh +373 -0
  74. package/scripts/package_coverage_check.sh +55 -16
  75. package/scripts/pipe_verdict_guard.sh +41 -1
  76. package/scripts/probe_live_eval.sh +240 -0
  77. package/scripts/probe_live_eval_lib.py +579 -0
  78. package/scripts/proposal_hook.sh +120 -17
  79. package/scripts/push_zone_check.sh +78 -0
  80. package/scripts/residency_closure_scan.py +252 -0
  81. package/scripts/selfcheck.sh +41 -1
  82. package/scripts/session_close_check.sh +100 -0
  83. package/scripts/sim_isolated_run.sh +98 -2
  84. package/scripts/test_action_yml_lanes.sh +97 -0
  85. package/scripts/test_fh_qp_lanes.sh +105 -0
  86. package/scripts/test_gate_two_verdicts_lanes.sh +139 -0
  87. package/scripts/test_map_postprocess_lanes.sh +143 -0
  88. package/scripts/test_marker_affected_lanes.sh +93 -0
  89. package/scripts/test_marker_crossfamily_lanes.sh +90 -6
  90. package/scripts/test_marker_oracle_lanes.sh +136 -0
  91. package/scripts/test_outbound_query_hook_lanes.sh +433 -0
  92. package/scripts/test_outbound_query_lanes.sh +87 -0
  93. package/scripts/test_pipe_verdict_guard_lanes.sh +26 -0
  94. package/scripts/test_preprep_diagram_lanes.sh +87 -0
  95. package/scripts/test_preprep_drift_anchor.sh +3 -3
  96. package/scripts/test_preprep_slide_refs_lanes.sh +169 -0
  97. package/scripts/test_probe_live_eval_lanes.sh +437 -0
  98. package/scripts/test_proposal_hook_lanes.sh +22 -1
  99. package/scripts/test_push_zone_lanes.sh +304 -0
  100. package/scripts/test_residency_closure_lanes.sh +70 -0
  101. package/scripts/test_sim_isolated_run_lanes.sh +119 -0
  102. package/scripts/test_utterance_intake_lanes.sh +414 -0
  103. package/scripts/test_worktree_reclaim_lanes.sh +70 -0
  104. package/scripts/transcript_utterances.py +222 -0
  105. package/scripts/utterance_intake.sh +424 -0
  106. package/scripts/validate_yaml.sh +27 -0
  107. package/scripts/worktree_reclaim.sh +95 -0
  108. package/templates/.git-hooks/pre-commit +353 -1
  109. package/templates/.git-hooks/pre-push +91 -0
  110. package/templates/RED_TEAM_REPORT.md +49 -0
  111. package/templates/settings.PreToolUse.snippet.json +65 -1
@@ -192,6 +192,15 @@ speculated standalone-first โ€” the only path every successfully-portable FH ass
192
192
  โš ๏ธ **ยง3-c ์˜ ํ•œ ๋ฌธ์žฅ์ด ์ด ์ •์ •์œผ๋กœ ๊ฐฑ์‹ ๋œ๋‹ค**: *"clear this one and fail the first
193
193
  (**alive, but a reinvention**)"* โ€” ๊ทธ ๋ถ„๊ธฐ๋Š” ์ด์ œ KILL ์ด ์•„๋‹ˆ๋ผ **CURATED ๋กœ ๋ผ์šฐํŒ…**๋œ๋‹ค.
194
194
 
195
+ ๐ŸŸฅ **๋ฉ€ํ‹ฐ์‚ฌ์ธ ์šฐ์„ ์ˆœ์œ„ (์šด์˜์ž ๊ฒฐ์ • 2026-09-04, `DECISIONS_2026-09-04_evening-four.md` โ‘ฉ)** โ€” ํ•œ ํ›„๋ณด์—
196
+ ์‚ฌ์œ ๊ฐ€ ๋‘˜ ์ด์ƒ ๊ฒน์น  ๋•Œ์˜ ์ตœ์ข… ๋ผ๋ฒจ: **KILL > NOT-APPLICABLE > CURATED > EMIT**. CURATED ์žฌ๋ฃŒ(์„ ํ–‰ ๋ชฉ๋ก ยท
197
+ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ์ž์‚ฐ ยท ์•ˆ ๋ฎ๋Š” ๋ธํƒ€)๋Š” **์–ด๋А ํŒ์ •์—๋“  ๋™๋ด‰**ํ•œ๋‹ค. ๊ทผ๊ฑฐ: CURATED ๋Š” ยซ๋ชฉ๋ก์„ ๊ฑด๋„ค๋ฉด ๋งŒ๋“ค ์ˆ˜
198
+ ์žˆ๋‹คใ€๋Š” ๋œป์ธ๋ฐ, (3) precision ์‹ค์ธก ๋ฏธ๋‹ฌ ยท (4) hub-state ์˜์กด ยท ๊ตฌ์„ฑ ๋ถˆ๊ฐ€ ยท ํŒ๋‹จํ˜•์ด๋ฉด ๋ชฉ๋ก์„ ๊ฑด๋„ค๋„ ๋ชป
199
+ ๋งŒ๋“ ๋‹ค โ€” ๊ทธ ์‚ฌ์œ ๊ฐ€ ๋ผ๋ฒจ์„ ์ •ํ•œ๋‹ค. ์‹ค์ธก ๊ณ„๊ธฐ: 2026-09-04 ์‚ฌ์ „๋“ฑ๋ก known-pair ์žฌํŒ์ •์—์„œ 5๋Ÿฐ ์ค‘ 2๋Ÿฐ
200
+ (#10 `qa-lens-codereview` ์žฌ๋ฐœ๋ช… + ยซ์žฌ๋ฐœ๋ช…์ด ์•„๋‹ˆ์—ˆ์–ด๋„ ์ง€์–ด์งˆ ์ˆ˜ ์—†๋‹คใ€ ยท #12 `prosody-lens` ์žฌ๋ฐœ๋ช… +
201
+ artifact-shaped ๋ฏธ๋‹ฌ)์ด ๋ฐ”๋กœ ์ด ๊ณต๋ฐฑ ๋•Œ๋ฌธ์— ๋ถˆ์ผ์น˜๋กœ ๋‚˜์™”๊ณ , ๋Ÿฐ #16 ์€ ์ด๋ฏธ ยซKILL + CURATED ๋™๋ด‰ใ€์œผ๋กœ
202
+ ๊ฐ™์€ ํ˜•ํƒœ๋ฅผ ๋ฐŸ์•˜๋‹ค. ์ด ์ค„์€ **ํŒ์ •์ด์ง€ ๊ณ„๊ธฐ๊ฐ€ ์•„๋‹ˆ๋‹ค** โ€” ๋Ÿฌ๋„ˆ๋Š” ์—ฌ์ „ํžˆ VERDICT ํ•œ ๊ฐ’๋งŒ ์ฝ๋Š”๋‹ค.
203
+
195
204
  **โš ๏ธ ๊ฒฝ๊ณ„๊ฐ€ ์‚ฌ๋ผ์ง€๋Š” ๊ฒƒ์€ ์•„๋‹ˆ๋‹ค.** ์žฌ๋ฐœ๋ช…์ด๋ผ๋Š” *์‚ฌ์‹ค*์€ ์—ฌ์ „ํžˆ ์ธก์ •ํ•˜๊ณ  ๊ธฐ๋กํ•œ๋‹ค. ๋ฐ”๋€ ๊ฒƒ์€
196
205
  ๊ทธ ์‚ฌ์‹ค์„ **๋ˆ„๊ตฌ์—๊ฒŒ ๋ฌด์—‡์œผ๋กœ ์ฃผ๋А๋ƒ**๋‹ค: ๊ฒŒ์ดํŠธ์˜ ํŒ์ • ๊ทผ๊ฑฐ โ†’ ์ œ์ž‘์ž์˜ ์ถœ๋ฐœ์ .
197
206
 
@@ -0,0 +1,139 @@
1
+ # ISO/IEC AI ํ‘œ์ค€ โ†” ํ•˜๋„ค์Šค ๊ฒŒ์ดํŠธ crosswalk โ€” ยซ๋ชจ๋ธ์ด ๋„๋Š” ํ•˜๋„ค์Šคใ€ ๋‹จ์œ„์˜ ์ •๋ ฌ ๊ตฌ์กฐ (2026-09-05)
2
+
3
+ > **ํ•œ ์ค„**: ISO/IEC 42119(AI ํ…Œ์ŠคํŠธ) ยท 29119-11(AI ๊ธฐ๋ฐ˜ ์‹œ์Šคํ…œ ํ…Œ์ŠคํŠธ ๊ฐ€์ด๋“œ) ยท 25059(AI ํ’ˆ์งˆ ๋ชจ๋ธ) ยท 42001(AI ๊ฒฝ์˜์‹œ์Šคํ…œ) ยท
4
+ > 5338(AI ์ˆ˜๋ช…์ฃผ๊ธฐ) ยท 23894(AI ์œ„ํ—˜) ยท TS 8200(์ œ์–ด๊ฐ€๋Šฅ์„ฑ)์ด ์š”๊ตฌํ•˜๋Š” ๊ฒƒ์„ **FH ์˜ ๊ฒŒ์ดํŠธยท๋งˆ์ปคยท๋ ˆ์ธยท๋กœ๊ทธ**์™€ **qasp ์˜ 1~3๋ง‰**์—
5
+ > ์กฐํ•ญ ๋‹จ์œ„๋กœ ๋Œ€์‘์‹œ์ผฐ๋‹ค. ๋ชฉ์ ์€ ยซ์ธ์ฆใ€์ด ์•„๋‹ˆ๋ผ **๋ณด์—ฌ์ค„ ์ˆ˜ ์žˆ๋Š” ์ •๋ ฌ** โ€” ์–ด๋А ์กฐํ•ญ์— ์–ด๋А ๊ธฐ์ œ๊ฐ€ ์žˆ๊ณ  ๊ทธ ์ฆ๊ฑฐ๊ฐ€ ์–ด๋А ํŒŒ์ผ์—
6
+ > ์žˆ๋Š”์ง€๋ฅผ ์‚ฌ๋žŒ์ด ๋”ฐ๋ผ๊ฐˆ ์ˆ˜ ์žˆ๊ฒŒ. ๐ŸŸฅ 42119 ์‹œ๋ฆฌ์ฆˆ์˜ ์ ˆ๋ฐ˜์€ ์•„์ง TS ์ดˆ์•ˆ(DTS/AWI)์ด๋ผ ยซ์ค€์ˆ˜ใ€๋ผ๋Š” ๋‚ฑ๋ง์€ ์“ฐ์ง€ ์•Š๋Š”๋‹ค.
7
+ >
8
+ > **์šด์˜์ž ๋…ผ์ง€(2026-09-05, ์ถ•์ž)**: *ยซ๊ตญ์ œํ‘œ์ค€์„ ์ค€์ˆ˜ํ•œ ๊ตฌ์กฐ๋‚˜ ๋Šฅ๋ ฅ์„ ๋ณด์—ฌ์ค„ ์ˆ˜ ์žˆ๋‹ค๋ฉด ๋” ๊ฐ€์น˜ ์žˆ๋Š” ํ™œ๋™์ด ๊ฐ€๋Šฅํ•˜๋‹ค โ€” FH ๋„ qasp ๋„.ยป*
9
+ > ๊ทธ๋ฆฌ๊ณ  *ยซ๋ชจ๋ธ์ด ๋Œ์•„๊ฐ€๋Š” ํ•˜๋„ค์Šค ๋‹จ์œ„๋กœ ์“ธ ๋งŒํ•˜์ง€ ์•Š์„๊นŒ.ยป* โ€” ์ด ๋ฌธ์„œ๋Š” ๊ทธ ๋‘ ๋ฌธ์žฅ์˜ ์‹คํ–‰์ด๋‹ค. ๐ŸŸฅ ์ธ์šฉ ์•ˆ์˜ ยซ์ค€์ˆ˜ใ€๋Š” ์šด์˜์ž ๋‚ฑ๋ง์ด๊ณ ,
10
+ > ์ด ๋ฌธ์„œ ์ž์‹ ์˜ ๋‚ฑ๋ง์€ **์ •๋ ฌ(alignment)**์ด๋‹ค โ€” ์ ํ•ฉ์„ฑ ํ‰๊ฐ€๋ฅผ ํ•œ ์ ์ด ์—†์œผ๋ฏ€๋กœ ยซ์ค€์ˆ˜ใ€๋ฅผ ์ž๊ธฐ ๋ชฉ์†Œ๋ฆฌ๋กœ ์“ฐ์ง€ ์•Š๋Š”๋‹ค.
11
+
12
+ ## 0. ์™œ ยซํ•˜๋„ค์Šค ๋‹จ์œ„ใ€์ธ๊ฐ€
13
+
14
+ ํ‘œ์ค€์ด ๋งํ•˜๋Š” ยซAI ์‹œ์Šคํ…œใ€์€ ๋ชจ๋ธ ๊ฐ€์ค‘์น˜๊ฐ€ ์•„๋‹ˆ๋ผ **๋ชจ๋ธ + ๊ทธ๊ฒƒ์„ ๋Œ๋ฆฌ๋Š” ๊ฒƒ**(ํ”„๋กฌํ”„ํŠธยท๊ฒŒ์ดํŠธยท๋กœ๊ทธยท๊ฐœ์ž… ์ง€์ ยท์œ„ํ—˜ ๊ธฐ๋ก)์ด๋‹ค.
15
+ ๋ชจ๋ธ ๋ฒค๋”๊ฐ€ ๋ณด์—ฌ์ค„ ์ˆ˜ ์—†๋Š” ๊ฒƒ โ€” ์šด์˜ ์กฐ์ง์˜ V&V(42001 A.6.2.4), ์ด๋ฒคํŠธ ๋กœ๊ทธ(A.6.2.8), ๊ฐœ์ž… ๊ฐ€๋Šฅ์„ฑ(25059 intervenability ยท
16
+ TS 8200), ์œ„ํ—˜ ์‹๋ณ„(42119-2 ยง6) โ€” ์ด ์ •ํ™•ํžˆ **ํ•˜๋„ค์Šค ์ธต**์— ์‚ฐ๋‹ค. 25059 ๊ฐœ์ •ํŒ(DIS)์ด ์‹ ์„คํ•œ ยซAI ์„œ๋น„์Šค ํ’ˆ์งˆ ๋ชจ๋ธใ€์˜
17
+ **traceability** ํŠน์„ฑ์ด ์ด ์ธต์„ ์ด๋ฆ„์œผ๋กœ ๋ถ€๋ฅธ๋‹ค โ€” ๐ŸŸฅ ์ •์˜๋Š” 2์ฐจ ์ž๋ฃŒ๊ฐ€ ๊ฐˆ๋ฆฐ๋‹ค(ํ•œ ํ•ด์„ค์€ *modelsยทdatasetsยทrequestsยทoutcomes ์˜
18
+ ๋กœ๊น…*์œผ๋กœ, cross-family ๋ฆฌ๋ทฐ๊ฐ€ ์ธ์šฉํ•œ OBP ๋Š” *์„œ๋น„์Šค ๊ฒฐ๊ณผ โ†” ์‚ฌ์šฉ์ž ์š”๊ตฌ์˜ ์ถ”์ *์œผ๋กœ). ์‹ค๋ฌผ ๋ฏธ์—ด๋žŒ์ด๋ผ ๋‘˜์„ ๋ณ‘๊ธฐํ•˜๊ณ , ยซ๋กœ๊น…ใ€ ์ฆ๊ฑฐ๋Š”
19
+ 42001 A.6.2.8 ํ–‰์— ๋‘”๋‹ค. ์–ด๋А ๋…๋ฒ•์ด๋“  ๊ทธ ํŠน์„ฑ์ด ์‚ฌ๋Š” ์ž๋ฆฌ๋Š” ๋ชจ๋ธ์ด ์•„๋‹ˆ๋ผ ํ•˜๋„ค์Šค ์ธต์ด๋‹ค.
20
+ โ‡’ ์ •๋ ฌ ยซ๊ตฌ์กฐใ€๋ฅผ ๋ณด์—ฌ์ค„ ๋‹จ์œ„๋กœ ํ•˜๋„ค์Šค๊ฐ€ ๋งž๋‹ค. FH ๋Š” ๋ฉ”ํƒ€ํ•˜๋„ค์Šค์ด๋‹ˆ ์ž๊ธฐ ์ž์‹ ์—๋„, ๋‚ณ์€ ํ•„๋“œ ํ•˜๋„ค์Šค(qasp)์—๋„ ๊ฐ™์€ ํ‘œ๊ฐ€ ๊ฑธ๋ฆฐ๋‹ค.
21
+
22
+ ## 1. ํ‘œ์ค€ ์ง€ํ˜• โ€” ๋ฌด์—‡์ด ๋ฌด์—‡์„ ์š”๊ตฌํ•˜๋‚˜ (์ƒํƒœ 2026-09)
23
+
24
+ | ํ‘œ์ค€ | ์ƒํƒœ | ์š”๊ตฌํ•˜๋Š” ๊ฒƒ(์š”์ง€) | ์ด ํ‘œ์—์„œ์˜ ์—ญํ•  |
25
+ |---|---|---|---|
26
+ | ISO/IEC/IEEE 29119-1~4 | IS | ํ…Œ์ŠคํŠธ ๊ฐœ๋… ยท ํ”„๋กœ์„ธ์Šค(์กฐ์ง/๊ด€๋ฆฌ/๋™์ ) ยท ๋ฌธ์„œ ํ…œํ”Œ๋ฆฟ ยท ์„ค๊ณ„ ๊ธฐ๋ฒ• | ๋ผˆ๋Œ€. 42119-2 ๊ฐ€ ์ด๊ฒƒ์„ AI ์— ยซ์ ์šฉใ€ํ•œ๋‹ค |
27
+ | ISO/IEC TR 29119-11:2020 | TR | AI ๊ธฐ๋ฐ˜ ์‹œ์Šคํ…œ ํ…Œ์ŠคํŠธ ๊ฐ€์ด๋“œ โ€” ๋ณต์žกยท๋ฐ์ดํ„ฐ ์˜์กดยท๋ฏธ๋ช…์„ธยท**๋น„๊ฒฐ์ •์„ฑ**, **ํ…Œ์ŠคํŠธ ์˜ค๋ผํด ๋ฌธ์ œ**, ๋ธ”๋ž™๋ฐ•์Šค(AI ์ „๋ฐ˜)ยทํ™”์ดํŠธ๋ฐ•์Šค(์‹ ๊ฒฝ๋ง) | AI ํŠน์„ฑ๊ณผ ์˜ค๋ผํด ์–ดํœ˜์˜ ์ถœ์ฒ˜ |
28
+ | ISO/IEC TS 42119-2:2025 | TS ๋ฐœํ–‰ | AI ์‹œ์Šคํ…œ ํ…Œ์ŠคํŠธ ์ด๋ก : ์ˆ˜๋ช…์ฃผ๊ธฐยท๊ธฐ๋Šฅ ๋ทฐยท**์œ„ํ—˜ ๊ธฐ๋ฐ˜ ํ…Œ์ŠคํŠธ**ยทํ…Œ์ŠคํŠธ ํ”„๋กœ์„ธ์Šค/๋ฌธ์„œ/์ดํ•ด๊ด€๊ณ„์ž ยท ์œ„ํ—˜ ์‹๋ณ„(ยง6) ยท ํ…Œ์ŠคํŠธ ๋ ˆ๋ฒจ/์œ ํ˜•(๊ณตํ†ตยท**๋ฐ์ดํ„ฐ ํ’ˆ์งˆ**ยท**AI ๋ชจ๋ธ**ยท์ง€์‹๊ณตํ•™ ์ •์ )ยท์„ค๊ณ„ ๊ธฐ๋ฒ•/์ปค๋ฒ„๋ฆฌ์ง€(๊ณตํ†ตยท์ „๋ฌธ) ยท Annex B AI ํŠน์„ฑ ยท Annex C ์œ„ํ—˜ํ‰๊ฐ€ ์˜ˆ | ์กฐํ•ญ ๋ฒˆํ˜ธ์˜ ์ถœ์ฒ˜(๊ณต๊ฐœ ์ƒ˜ํ”Œ ToC ๊ธฐ์ค€) |
29
+ | ISO/IEC DTS 42119-3.2 | DTS(2์ฐจ ์ดˆ์•ˆ, stage 50.20) | V&V ยซ๋ถ„์„ใ€ โ€” ํ˜•์‹์  ๋ฐฉ๋ฒ•ยท์‹œ๋ฎฌ๋ ˆ์ด์…˜ยทํ‰๊ฐ€, ์ˆ˜๋ช…์ฃผ๊ธฐ ๋‹จ๊ณ„๋ณ„ | ์‹œ๋ฎฌ๋ ˆ์ด์…˜ยทํ‰๊ฐ€ = FH sim ์˜ ์ž๋ฆฌ |
30
+ | ISO/IEC AWI TS 42119-7 | AWI(์Šน์ธ๋œ ์ž‘์—… ํ•ญ๋ชฉ โ€” ๊ณต๊ฐœ๋œ ๊ฒƒ์€ **์Šค์ฝ”ํ”„ ๋ฌธ์žฅ๋ฟ**, ๊ทœ๋ฒ” ์š”๊ตฌ์‚ฌํ•ญ ์•„๋‹˜) | **๋ ˆ๋“œํ‹ฐ๋ฐ** โ€” ๊ณต๊ฐœ ์Šค์ฝ”ํ”„๊ฐ€ ยซ๋‹ค๋ฃจ๋Š”ใ€ ์ฃผ์ œ: ์šฉ์–ดยท์œ„ํ—˜ ์‹๋ณ„ยท์ ์šฉ ๋ฒ”์œ„ยท๋ชฉํ‘œ/๊ณต๊ฒฉ ๋ฒกํ„ฐยท๊ณ„ํš/์‹คํ–‰ ๋ฐฉ๋ฒ•(29119 ํ”„๋กœ์„ธ์Šค ์ •๋ ฌ)ยท๋ฌธ์„œ/๋ณด๊ณ ยท์ˆ˜๋ช…์ฃผ๊ธฐ ํ†ตํ•ฉ | ์ ๋Œ€๊ฒ€์ฆ(cross-familyยทchallengerยทsteel-quench)์˜ ์ž๋ฆฌ |
31
+ | ISO/IEC AWI TS 42119-8 | AWI(stage 20.00) | **ํ”„๋กฌํ”„ํŠธ ๊ธฐ๋ฐ˜ ํ…์ŠคํŠธโ†’ํ…์ŠคํŠธ ์ƒ์„ฑ AI ํ’ˆ์งˆ ํ‰๊ฐ€**(์•ˆ์ „ ํฌํ•จ, ๋ ˆ๋“œํ‹ฐ๋ฐ ๊ฒฐํ•ฉ) | live-eval ยท probes ยท ๋“ฑ๊ธ‰ร—์ดํดํŠธ์˜ ์ž๋ฆฌ |
32
+ | ISO/IEC 25059:2023 (+DIS ๊ฐœ์ •) | IS / DIS | AI ํ’ˆ์งˆ ๋ชจ๋ธ โ€” **์ œํ’ˆ ํ’ˆ์งˆ**: functional adaptability ยท functional correctness ยท **robustness** ยท **user controllability** ยท **intervenability** ยท **transparency** โ€” **์‚ฌ์šฉ ํ’ˆ์งˆ**: ์‚ฌํšŒยท์œค๋ฆฌ ์œ„ํ—˜ ์™„ํ™”(transparency ์žฌ๋“ฑ์žฅ) โ€” **(DIS) ์„œ๋น„์Šค ํ’ˆ์งˆ ๋ชจ๋ธ**: traceability ยท service adaptability. (์•ˆ์ „ยทfail-safe ๋Š” 25059 ์˜ ์ถ”๊ฐ€๊ฐ€ ์•„๋‹ˆ๋ผ ๊ฐœ์ •ํŒ์ด **25010:2023 ์—์„œ ์ƒ์†**ํ•˜๋Š” ํŠน์„ฑ) | ํ’ˆ์งˆ ํŠน์„ฑ ์–ดํœ˜ |
33
+ | ISO/IEC 42001:2023 | IS | AIMS. Annex A 38 ์ปจํŠธ๋กค โ€” A.5 ์˜ํ–ฅํ‰๊ฐ€ ยท **A.6 ์ˆ˜๋ช…์ฃผ๊ธฐ(A.6.2.4 V&V ยท A.6.2.6 ์šด์˜ ๋ชจ๋‹ˆํ„ฐ๋ง ยท A.6.2.7 ๊ธฐ์ˆ ๋ฌธ์„œ ยท A.6.2.8 ์ด๋ฒคํŠธ ๋กœ๊ทธ)** ยท A.7 ๋ฐ์ดํ„ฐ ยท A.8 ์ดํ•ด๊ด€๊ณ„์ž ์ •๋ณด ยท A.9 ์‚ฌ์šฉ ยท A.10 3์ž | ๊ฒฝ์˜์‹œ์Šคํ…œ ์ปจํŠธ๋กค โ€” ยซ์žˆ๋‹ค/์—†๋‹คใ€๋ฅผ ๋ณด์—ฌ์ฃผ๊ธฐ ๊ฐ€์žฅ ์ข‹์€ ํ‘œ |
34
+ | ISO/IEC 5338:2023 | IS | AI ์ˆ˜๋ช…์ฃผ๊ธฐ ํ”„๋กœ์„ธ์Šค(๋ฐ์ดํ„ฐ ์ค€๋น„ยท์šด์˜ ์ค‘ ๋ชจ๋ธ ํ–‰๋™ยท์—ญํ• ยท์ง€์† ๋ชจ๋‹ˆํ„ฐ๋ง) | ์ธํ๋ฒ ์ดํ„ฐโ†’EMITโ†’๊ฒ€์ฆ ๋ฃจํ”„์˜ ์ž๋ฆฌ |
35
+ | ISO/IEC 23894:2023 | IS | AI ์œ„ํ—˜๊ด€๋ฆฌ(31000 ์„ AI ์—) | ๋“ฑ๊ธ‰ํ‘œยท๋น„๊ฐ€์—ญ ํ‘œ๋ฉด ๋ถˆ๋ณ€์‹์˜ ์ž๋ฆฌ |
36
+ | ISO/IEC TS 8200:2024 | TS | AI ์‹œ์Šคํ…œ ์ œ์–ด๊ฐ€๋Šฅ์„ฑ(์›์น™ยทํŠน์„ฑยท์ ‘๊ทผ) | HITLยท๋™์˜ leaseยท์ž์œจ์„ฑ floor ์˜ ์ž๋ฆฌ |
37
+ | ISO/IEC 20246 | IS | ์ž‘์—…์‚ฐ์ถœ๋ฌผ ๋ฆฌ๋ทฐ(์ธ์ŠคํŽ™์…˜ยท์›Œํฌ์Šค๋ฃจยท๊ธฐ์ˆ ๋ฆฌ๋ทฐ) | ์ •์  ๋ฆฌ๋ทฐ(qasp 1.5๋ง‰ ยท FH ๋ฆฌ๋ทฐ ์Šคํ‚ฌ)์˜ ์ž๋ฆฌ |
38
+ | (์ฐธ์กฐ) ISO/IEC 5259-1~5 | IS(part 5 ๋Š” 2025) | ML/๋ถ„์„์šฉ ๋ฐ์ดํ„ฐ ํ’ˆ์งˆ | ์–ดํœ˜ ์ •๋ ฌ๋งŒ |
39
+ | (์ฐธ์กฐ) ISO/IEC 24029 | TR 24029-1:2021 ยท IS 24029-2:2023 ยท FDIS 24029-3 | ์‹ ๊ฒฝ๋ง ๊ฐ•๊ฑด์„ฑ ํ‰๊ฐ€ | ์–ดํœ˜ ์ •๋ ฌ๋งŒ |
40
+ | (์ฐธ์กฐ) ISO/IEC 22989:2022 | IS(๊ฐœ์ •์•ˆ ์ง„ํ–‰ ์ค‘) | AI ๊ฐœ๋…ยท์šฉ์–ด | ์–ดํœ˜ ์ •๋ ฌ๋งŒ |
41
+
42
+ ## 2. FH crosswalk โ€” ์กฐํ•ญ โ†’ ๊ธฐ์ œ โ†’ ์ฆ๊ฑฐ โ†’ ์ƒํƒœ
43
+
44
+ ์ƒํƒœ: โœ… ๊ธฐ์ œ์™€ ์ฆ๊ฑฐ๊ฐ€ ์žˆ๋‹ค ยท ๐ŸŸก ์žˆ์œผ๋‚˜ ํ‘œ์ค€ ์–ดํœ˜ยท๋ฌธ์„œ ํ˜•ํƒœ๊ฐ€ ์•„๋‹ˆ๊ฑฐ๋‚˜ ๋ถ€๋ถ„ ยท โŒ ์—†์Œ(๊ฐ•ํ™” ํ›„๋ณด ยง4)
45
+
46
+ | ํ‘œ์ค€ ์กฐํ•ญ | ์š”๊ตฌ | FH ๊ธฐ์ œ | ์ฆ๊ฑฐ(ํŒŒ์ผ) | ์ƒํƒœ |
47
+ |---|---|---|---|---|
48
+ | 42119-2 ยง5.4 ยท ยง6 ยท Annex C | ์œ„ํ—˜ ๊ธฐ๋ฐ˜ ํ…Œ์ŠคํŠธ โ€” AI ํŠน์„ฑ๋ณ„ ์œ„ํ—˜์„ ์‹๋ณ„ํ•˜๊ณ  ํ…Œ์ŠคํŠธ ๊นŠ์ด๋ฅผ ๊ฑฐ๊ธฐ ๋งž์ถ˜๋‹ค | 6์ถ• ๊ฒ€์ฆ์€ ยซ์‹คํŒจ ๋ชจ๋“œ์— ๋งž์ถฐ ์ถ•์„ **๊ณ ๋ฅธ๋‹ค**ใ€(๊ณฑํ•˜์ง€ ๋ง๊ณ ) ยท ๋งˆ์ปค `defeater:`(ํ‹€๋ ธ๋‹ค๋ฉด ๊ด€์ธก๋  ๊ฒƒ) ยท `affected:` | `CLAUDE.md ยง์ž๊ธฐ ๋Œ€์กฐ` ยท `fh_three_layer_canon.md ยง1-a-2` ยท `tracks/_meta/.axes_23_passed_*.marker` | ๐ŸŸก ์œ„ํ—˜ ๋“ฑ๋ก๋ถ€๊ฐ€ ์•„๋‹ˆ๋ผ ์ปค๋ฐ‹ ๋‹จ์œ„ ํ•„๋“œ์— ๋ถ„์‚ฐ. AI ํŠน์„ฑ ์–ดํœ˜(๋น„๊ฒฐ์ •์„ฑยท๋ฐ์ดํ„ฐ ์˜์กดยท์ ์‘์„ฑยท๋ถˆํˆฌ๋ช…์„ฑ) ๋ฏธ์ฑ„ํƒ โ†’ ยง4 S1 |
49
+ | 42119-2 ยง5.5 (29119-2 **๋™์ ** ํ…Œ์ŠคํŠธ ํ”„๋กœ์„ธ์Šค) | ์„ค๊ณ„โ†’๊ตฌํ˜„โ†’์‹คํ–‰โ†’๊ฒฐ๊ณผ ๋ณด๊ณ  | ๋ ˆ์ธ ์Šค์œ„ํŠธ โ†’ `selfcheck.sh` ์ „์ˆ˜ โ†’ CI `validate` ยท 4์ถ• pre-commit ๊ฒŒ์ดํŠธ | `templates/.git-hooks/pre-commit` ยท `scripts/selfcheck.sh`(99 ์Šค์œ„ํŠธ ๋ฐฐ์„ ) ยท `.github/workflows/validate.yml` | โœ… |
50
+ | 42119-2 ยง5.5 (29119-2 **์กฐ์งยท๊ด€๋ฆฌ** ํ”„๋กœ์„ธ์Šค) | ํ…Œ์ŠคํŠธ ์ •์ฑ…ยท์ „๋žต ยท ๊ณ„ํšยท๊ฐ์‹œ/ํ†ต์ œยท์™„๋ฃŒ | ์ •์ฑ… = `CLAUDE.md` ๊ฒŒ์ดํŠธ ์ ˆ ยท ๊ณ„ํš = ์‚ฌ์ „๋“ฑ๋ก ยท ์™„๋ฃŒ = ๋งˆ์ปค โ€” **๊ฐ์‹œ/ํ†ต์ œยท์™„๋ฃŒ ๊ธฐ์ค€์˜ ํ”„๋กœ์„ธ์Šค ๋ฌธ์„œ๋Š” ์—†๋‹ค** | `CLAUDE.md` ยท `PREREG_*.md` | ๐ŸŸก ํ™œ๋™์€ ์žˆ๊ณ  ํ”„๋กœ์„ธ์Šค ๋ฌธ์„œ๊ฐ€ ์—†๋‹ค |
51
+ | 42119-2 ยง5.6 (29119-3 ํ…Œ์ŠคํŠธ ๋ฌธ์„œ) | ๊ณ„ํš ยท ์„ค๊ณ„/์ผ€์ด์Šค/์ ˆ์ฐจ ๋ช…์„ธ ยท ์™„๋ฃŒ ๋ณด๊ณ  ยท ์‚ฌ๊ณ  ๋ณด๊ณ  | ๊ณ„ํš = **์‚ฌ์ „๋“ฑ๋ก ๋ด‰์ธ**(`PREREG_sealed.md`, ํ•ด์‹œ) ยท ์ผ€์ด์Šค/์ ˆ์ฐจ = ๋ ˆ์ธ ํŒŒ์ผ(known-pair) ยท ์™„๋ฃŒ ๋ณด๊ณ  = **๋งˆ์ปค**(axes-runยทcontrols) + PR ๋ณธ๋ฌธ ยท ์‚ฌ๊ณ  = `fh_signal_*.md` | `scripts/test_*_lanes.sh` ยท ๋งˆ์ปค ยท `tracks/_meta/fh_signal_*` | ๐ŸŸก ๋Œ€์‘์€ 1:1 ์ธ๋ฐ 29119-3 ํ…œํ”Œ๋ฆฟ ๋ช…์นญ์œผ๋กœ ์•ˆ ๋ถˆ๋ฆฐ๋‹ค โ†’ `docs/STANDARDS_ALIGNMENT.md` ๊ฐ€ ๊ทธ ์ด๋ฆ„ํ‘œ๋ฅผ ๋ถ™์ธ๋‹ค |
52
+ | 42119-2 ยง5.7 | ์ดํ•ด๊ด€๊ณ„์ž | ๊ฑฐ๋ฒ„๋„ˆ / ์‚ฌ์ด๋“œ์นด(๋‹ค๋ฅธ ๊ณ„์—ด) / ์šด์˜์ž(HITL) / ์†Œ๋น„์ž install โ€” ์—ญํ• ์ด ๊ธฐ๋ก๋ฉด์— ์žˆ๋‹ค | `multi_model_sidecar_strategy.md ยงRuntime Authority` ยท ๋งˆ์ปค `standpoint:` | โœ… |
53
+ | 42119-2 ยง7.2 ํ…Œ์ŠคํŠธ ๋ ˆ๋ฒจ | ๋‹จ์œ„โ†’ํ†ตํ•ฉโ†’์‹œ์Šคํ…œโ†’์ธ์ˆ˜ | ๋‹จ์œ„ = ๋ ˆ์ธ ยท ํ†ตํ•ฉ = selfcheck ์ „์ˆ˜ ยท ์‹œ์Šคํ…œ = `sim_isolated_run.sh`(๊ฒฉ๋ฆฌ ํด๋ก  ์‹ค์„ธ์…˜) ยท **์ฒซ ์‹ค์‚ฌ์šฉ โ“”**๋Š” ์ธ์ˆ˜ ํ…Œ์ŠคํŠธ๊ฐ€ ์•„๋‹ˆ๋ผ ยซ์‹ค์‚ฌ์šฉ ์‹œ์šด์ „(field trial)ใ€โ€” ์ธ์ˆ˜ ๊ธฐ์ค€ยท์„œ๋ช… ์ฆ๊ฑฐ๊ฐ€ ์—†๋‹ค | `scripts/sim_isolated_run.sh` ยท `feedback_adversarial_review_not_substitute_for_first_use` | ๐ŸŸก ๋‹จ์œ„~์‹œ์Šคํ…œ โœ… ยท ์ธ์ˆ˜ โŒ(๊ธฐ์ค€ ์—†์Œ) |
54
+ | 42119-2 ยง7.3.3 ๋ฐ์ดํ„ฐ ํ’ˆ์งˆ ํ…Œ์ŠคํŠธ | ๋Œ€ํ‘œ์„ฑยท์ถœ์ฒ˜ยท๋ผ๋ฒจ ์ •ํ™•์„ฑ | FH ์ž์ฒด๋Š” ํ•™์Šต ๋ฐ์ดํ„ฐ๊ฐ€ ์—†๋‹ค. ์žˆ๋Š” ๊ฒƒ์€ **์ฝ”ํผ์Šค ๊ทธ๋ผ์šด๋”ฉ fail-closed**(์ƒ์„ฑ๊ธฐ ์—†์Œ) ยท residency ์Šค์บ”(์กฐ์ง ์‹๋ณ„์ž) | `corpus-grounding-expander` ยท `scripts/residency_closure_scan.py` | ๐ŸŸก ํ•ด๋‹น ๋ฒ”์œ„๊ฐ€ ์ข๋‹ค(qasp ํ‘œ ์ฐธ์กฐ) |
55
+ | 42119-2 ยง7.3.4 AI ๋ชจ๋ธ ํ…Œ์ŠคํŠธ (TR 29119-11 ยง8 ๋ธ”๋ž™๋ฐ•์Šค ๊ธฐ๋ฒ•: ์ ๋Œ€ ยท ๋ฉ”ํƒ€๋ชจํ”ฝ ยท back-to-back ยท A/B โ€” ๋“œ๋ฆฌํ”„ํŠธ๋Š” 29119-11 ์—์„  ยซ๋ชจ๋‹ˆํ„ฐ๋ง/๋ชจ๋ธ ๊ฐฑ์‹ ใ€ ๊ด€์‹ฌ์‚ฌ, ยซ๋“œ๋ฆฌํ”„ํŠธ ํ…Œ์ŠคํŠธใ€ ๋ช…์นญ์€ ISTQB CT-AI v2 ์ชฝ) | ๋ชจ๋ธ ํ–‰๋™์„ ์—ฌ๋Ÿฌ ๊ธฐ๋ฒ•์œผ๋กœ | A/B = sim **ARM/CTRL ํ•œ ๋ณ€์ˆ˜**(repsโ‰ฅ3) ยท back-to-back = **cross-family**(๋‹ค๋ฅธ ๊ณ„์—ด์ด ๊ฐ™์€ diff ๋ฅผ ์ฝ๋Š”๋‹ค) ยท ์ ๋Œ€ = challenger/steel-quench Wave-1 ยท ๋“œ๋ฆฌํ”„ํŠธ ๊ฐ์‹œ = **live-eval ์•ผ๊ฐ„**(๋ชจ๋ธ ํ•€ยทcutoff ํ—ค๋”) ยท ๋ฎคํ…Œ์ด์…˜ = ๋˜๋Œ๋ฆผ ํ”„๋กœ๋ธŒ โ“• | `.claude/regression/probes_live.yaml` ยท `scripts/probe_live_eval.sh` ยท `scripts/revert_probe.sh` | ๐ŸŸก **๋ฉ”ํƒ€๋ชจํ”ฝ ๊ด€๊ณ„**(์ž…๋ ฅ ๋ณ€ํ™˜โ†’๊ธฐ๋Œ€ ์ถœ๋ ฅ ๋ณ€ํ™”)๋ฅผ ์ด๋ฆ„์œผ๋กœ ์ ๋Š” ์ž๋ฆฌ๊ฐ€ ์—†๋‹ค โ†’ ยง4 S2 |
56
+ | 29119-11 ํ…Œ์ŠคํŠธ ์˜ค๋ผํด ๋ฌธ์ œ | ๊ธฐ๋Œ€๊ฐ’์„ ์ •ํ•  ์ˆ˜ ์—†์„ ๋•Œ์˜ ์˜ค๋ผํด | **known-pair**(์–‘์„ฑ/์Œ์„ฑ ์ปจํŠธ๋กค์ด ๊ฐ™์€ ์‹คํ–‰์—) ยท ๊ฒฐ๊ณผ ์ „ ์ฑ„์ ๊ธฐ ๊ณ ์ • ยท ยซ๋ฏธ์ธก์ • โ‰  0ใ€ ยท UNCALIBRATED ๋ผ๋ฒจ | `measurement-integrity-checklist.md ยงInstrument-Calibration` ยท `CLAUDE.md ยงInstrument Calibration` | โœ… ๊ธฐ์ œ ยท โœ… **์˜ค๋ผํด ์œ ํ˜• ์ฑ„๋„** โ€” ๋งˆ์ปค ์˜ต์…”๋„ `oracle:`(๋‹ซํžŒ enum 6: known-pair ยท metamorphic ยท back-to-back ยท a-b ยท human ยท none, ํ›…์€ ํ˜•์‹๋งŒ โ€” ยง4 M1 **๊ตฌํ˜„๋จ 2026-09-05**, `validate_oracle_leg` ยท `scripts/test_marker_oracle_lanes.sh`) |
57
+ | 29119-11 ๋น„๊ฒฐ์ •์„ฑ | ํ™•๋ฅ ์  ์ถœ๋ ฅ์˜ ํ†ต๊ณ„์  ์ฒ˜๋ฆฌ | repsโ‰ฅ3 ๋ฐ” ยท 3/3 ๋˜๋Š” 0/3 ์•„๋‹ˆ๋ฉด ๋ถ„๋ฆฌ ์•ˆ ๋จ ยท ์ปจํŠธ๋กค ๋™๋ฐ˜ | `probe_scope_check.sh` ํ—ค๋” ยท ์‚ฌ์ „๋“ฑ๋ก ยซ๋ช…๋ช…๋œ ํ•œ๊ณ„ใ€ | โœ… |
58
+ | 42119-3 V&V ๋ถ„์„(์‹œ๋ฎฌ๋ ˆ์ด์…˜ยทํ‰๊ฐ€ยทํ˜•์‹์  ๋ฐฉ๋ฒ•) | ์‹คํ–‰ ์™ธ ๋ถ„์„ ์ˆ˜๋‹จ | ์‹œ๋ฎฌ๋ ˆ์ด์…˜ = ๊ฒฉ๋ฆฌ ํด๋ก  sim ยท ํ‰๊ฐ€ = live-eval ๋ฌธํ„ฑ ยท **ํ˜•์‹์  ๋ฐฉ๋ฒ• ์—†์Œ** | `scripts/sim_isolated_run.sh` ยท `tracks/_meta/live_eval_*.md` | ๐ŸŸก |
59
+ | **42119-7 ๋ ˆ๋“œํ‹ฐ๋ฐ**(๊ณต๊ฐœ ์Šค์ฝ”ํ”„๊ฐ€ ๋‹ค๋ฃจ๋Š” ์ฃผ์ œ: ์šฉ์–ด ยท ์œ„ํ—˜ ์‹๋ณ„ ยท ์ ์šฉ ๋ฒ”์œ„ ยท ๋ชฉํ‘œ/๊ณต๊ฒฉ ๋ฒกํ„ฐ ยท ๊ณ„ํš/์‹คํ–‰ ยท ๋ฌธ์„œ/๋ณด๊ณ  ยท ์ˆ˜๋ช…์ฃผ๊ธฐ ํ†ตํ•ฉ โ€” ๊ทœ๋ฒ” ์š”๊ตฌ์‚ฌํ•ญ์€ ๋ฏธ๊ณต๊ฐœ) | ๊ตฌ์กฐํ™”๋œ ์ ๋Œ€ ํ‰๊ฐ€ | ์œ„ํ—˜ = 4์ถ• ํŠธ๋ฆฌ๊ฑฐ ยท ๊ณต๊ฒฉ ๋ฒกํ„ฐ = steel-quench **Wave-1 ๊ณต๊ฒฉ๊ฐ ๋ ˆ์ง€์ŠคํŠธ๋ฆฌ** + codex ํ”„๋กฌํ”„ํŠธ์˜ ยซattack specifically (1)โ€ฆ(n)ใ€ ยท ์‹คํ–‰ = cross-family ํŒจ๋„(๋‹ค๋ฅธ ๊ณ„์—ด, ๋‚ด ์ถ”๋ก ์„ ๋ชป ๋ณธ ๋ฆฌ๋ทฐ์–ด) ยท ๋ณด๊ณ  = ๋งˆ์ปค `crossfamily:` + PR ๋ณธ๋ฌธ ยท ํ†ตํ•ฉ = **์ปค๋ฐ‹ ์ „ ์˜๋ฌด**(Field-Harness Load-Bearing Change Gate) | `plugins/fh-meta/skills/auto-decorrelation/SKILL.md` ยท `field_verdict_crossfamily_gate.md` ยท `plugins/fh-meta/agents/challenger.md` | ๐ŸŸก **๋ณด๊ณ  ํ˜•์‹์ด ์Šค์ฝ”ํ”„์˜ ์ฃผ์ œ ์ˆœ์„œ๋กœ ์ •๋ ฌ๋ผ ์žˆ์ง€ ์•Š๋‹ค** โ†’ ยง4 M2 `templates/RED_TEAM_REPORT.md` |
60
+ | 42119-8 ํ”„๋กฌํ”„ํŠธ ๊ธฐ๋ฐ˜ ์ƒ์„ฑ AI ํ’ˆ์งˆ ํ‰๊ฐ€ | ํ…์ŠคํŠธโ†’ํ…์ŠคํŠธ ์‹œ์Šคํ…œ์˜ ํ’ˆ์งˆยท์•ˆ์ „ ํ‰๊ฐ€ | probes(๊ธฐ๋Œ€/์ปจํŠธ๋กค ์ •๊ทœ์‹ ยท polarity) ยท live-eval(๊ฒฉ๋ฆฌ ํด๋ก  ยท ๋ฌธํ„ฑ) ยท ๋“ฑ๊ธ‰ร—์ดํดํŠธ ๊ธฐ๋Œ€ ์—ญ๋Ÿ‰ ๋ฌธ์„œ | `.claude/regression/probes_live.yaml` ยท `docs/model_tier_expectations.md` | ๐ŸŸก 25059 ํŠน์„ฑ ์–ดํœ˜๋กœ ํ‘œํ˜„ ์•ˆ ๋จ |
61
+ | 25059 robustness | ๋ฏธ์ง€ยท์ ๋Œ€ยท๋น„์ •์ƒ ์ž…๋ ฅ์—์„œ ๊ธฐ๋Šฅ ์œ ์ง€ | ์˜ˆ: ํ›…์˜ **ํŒจ๋”ฉ ์šฐํšŒ ์ˆ˜๋ฆฌ**(10KB 47sโ†’0.23s, H23) ยท ์ ˆ๋‹จ/๋ฌธ์ž์—ด/ํ‚ค fail-closed | `scripts/test_outbound_query_hook_lanes.sh` H23~H30 | โœ… ์‚ฌ๋ก€ / ๐ŸŸก ํŠน์„ฑ ์ด๋ฆ„ ๋ฏธ๋ถ€์ฐฉ |
62
+ | 25059 user controllability ยท intervenability ยท TS 8200 | ์ ์‹œ ๊ฐœ์ž… ยท ์ œ์–ด ์ง€์  | HITL ๊ฒŒ์ดํŠธ ยท ๋™์˜ **lease**(3์š”์†Œ ๊ธฐ๋ก) ยท ์ž์œจ์„ฑ floor ยท ๋ช…์‹œ override ์ฑ„๋„(`PUSH_ZONE_OK`ยท`DESTRUCTIVE_OP_OK`ยท`PUBLIC_SURFACE_OK`, ์ „๋ถ€ ๋กœ๊ทธ) ยท `# noqa:` ๋„ ๋กœ๊ทธ ํ–‰ | `CLAUDE.md ยงAgent Dispatch` ยท `templates/.git-hooks/pre-push` ยท `tracks/_meta/consent_classes.yaml` | โœ… ๊ฐ•ํ•จ โ€” ์ œ์–ด ์ง€์ ์ด ์ „๋ถ€ **๊ธฐ๋ก๋˜๋Š” ์ฑ„๋„**์ด๋‹ค |
63
+ | 25059 transparency | ์ดํ•ด๊ด€๊ณ„์ž์—๊ฒŒ ์ ์ ˆํ•œ ์ •๋ณด | ๋งˆ์ปค ยซ์ถ•๊ณผ ์ปจํŠธ๋กค์˜ ์ƒ์‚ฌใ€ ยท PR ๋ณธ๋ฌธ ยซ์ž”์—ฌ๋ฅผ ์ด๋ฆ„์œผ๋กœใ€ ยท ์œ„ํ‚ค ํ˜„ํ™ฉํŒ ยซ๋ฌด์—‡์ด ์ฆ๋ช…ํ–ˆ๋‚˜ใ€ | `docs/OUTPUT_EVIDENCE.md` ยท wiki Status-Board | โœ… |
64
+ | 25059(DIS) ์„œ๋น„์Šค traceability | (์ •์˜ ๋ถˆ์ผ์น˜ โ€” ยง0) ๋กœ๊น… ๋…๋ฒ•: modelsยทdatasetsยทrequestsยทoutcomes ๊ธฐ๋ก / OBP ๋…๋ฒ•: ์„œ๋น„์Šค ๊ฒฐ๊ณผ โ†” ์‚ฌ์šฉ์ž ์š”๊ตฌ ์ถ”์  | ๋กœ๊น… ๋…๋ฒ• = governance_log ยท ํ›… ์ด๋ฒคํŠธ tsv(๊ฐ’ ์—†์ด ๊ฐœ์ˆ˜ยท๋ผ๋ฒจ) ยท ์„œ๋ธŒ์—์ด์ „ํŠธ ์›์žฅ ยท sim ํ—ค๋”(corpus_head_date ยท sim_model ยท cutoff) / ์š”๊ตฌ ์ถ”์  ๋…๋ฒ• = ๋งˆ์ปค `soul:`(์„ฑ๊ณต ์ •์˜) โ†” `defeater:` โ†” ๋ ˆ์ธ | `tracks/_meta/governance_log_*.yaml` ยท `knowledge/shared/learnings/subagent_invocations_log.yaml` ยท ๋งˆ์ปค | ๐ŸŸก ๋กœ๊น… ๋…๋ฒ•์œผ๋กœ๋Š” ๊ฐ•ํ•˜๊ณ , ์š”๊ตฌ ์ถ”์  ๋…๋ฒ•์œผ๋กœ๋Š” ๋งˆ์ปค ํ•„๋“œ ๋Œ€์‘๊นŒ์ง€ |
65
+ | 42001 A.6.2.4 V&V | ์ •์˜๋œ ๊ธฐ์ค€์œผ๋กœ ๊ฒ€์ฆยทํ™•์ธ | 4์ถ• ๊ฒŒ์ดํŠธ(ํ•„์ˆ˜ ํ•„๋“œยท๋‹ซํžŒ enumยท๋น„๊ณตํ—ˆ ๊ทผ๊ฑฐ) | `pre-commit` `validate_*_leg()` | โœ… |
66
+ | 42001 A.6.2.6 ์šด์˜ ๋ชจ๋‹ˆํ„ฐ๋ง | ์šด์˜ ์ค‘ ๊ฐ์‹œ โ€” ๊ธฐ์ค€ยท๊ฒ€ํ† ยท๋Œ€์‘ยท์†Œ์œ ์ž | **๊ธฐ์ œ**: live-eval 02:30 ยท digest 09:00 ยท daily-report(launchd) ยท ยซ๊ฒ€์ฆ ํ™˜๊ฒฝโ‰ ์‹คํ–‰ ํ™˜๊ฒฝใ€ ๊ทœ์œจ ยท ๋ฌธํ„ฑ์€ ๋ณด์ • ์ฃผ๊ฐ„ ๋’ค ๊ฒฐ์ • | `scripts/com.forge-harness.*.plist` ยท ์นด๋“œ ยซlive-eval ๋ณด์ • ์ฃผ๊ฐ„ใ€ | ๐ŸŸก ๊ธฐ์ œ๋Š” ์žˆ๊ณ  ยซ๊ธฐ์ค€ยท๊ฒ€ํ† ยท๋Œ€์‘ยท์†Œ์œ ์žใ€ ๋ฅผ ์ ์€ ์ ˆ์ฐจ ๋ฌธ์„œ๋Š” ์—†๋‹ค |
67
+ | 42001 A.6.2.7 ๊ธฐ์ˆ ๋ฌธ์„œ ยท A.8 ์ดํ•ด๊ด€๊ณ„์ž ์ •๋ณด | ๋ฌธ์„œยท์ •๋ณด | `knowledge/` ยท `docs/USER_GUIDE.md` ยท `docs/USE_CASES.md` ยท `docs/model_tier_expectations.md` ยท `docs/STANDARDS_ALIGNMENT.md` | โ€” | โœ… |
68
+ | 42001 A.9 ์‚ฌ์šฉ(A.9.2 ์ฑ…์ž„ ์žˆ๋Š” ์‚ฌ์šฉ ํ”„๋กœ์„ธ์Šค ยท A.9.3 ๋ชฉํ‘œ ยท A.9.4 ์˜๋„๋œ ์‚ฌ์šฉ) | ์ฑ…์ž„ ์žˆ๋Š” ์‚ฌ์šฉ์˜ ํ”„๋กœ์„ธ์Šค์™€ ๋ชฉํ‘œ | ์˜๋„๋œ ์‚ฌ์šฉ์˜ **์ „๋‹ฌ**์€ ๋ฌธ์„œ(USER_GUIDEยทUSE_CASES) ยท ์‚ฌ์šฉ ํ”„๋กœ์„ธ์Šค = ๋™์˜ leaseยท์ž์œจ์„ฑ floorยท๋น„๊ฐ€์—ญ ๊ฒŒ์ดํŠธ โ€” **ยซ์ฑ…์ž„ ์žˆ๋Š” ์‚ฌ์šฉ ๋ชฉํ‘œใ€ ๋ฌธ์„œ๋Š” ์—†๋‹ค** | `CLAUDE.md ยงAgent Dispatch` | ๐ŸŸก |
69
+ | 42001 A.6.2.8 ์ด๋ฒคํŠธ ๋กœ๊ทธ | ๋กœ๊ทธ ๊ธฐ๋ก | ์œ„ traceability ํ–‰ + ํ›… ์ด๋ฒคํŠธ | โ€” | โœ… |
70
+ | 42001 A.5 ์˜ํ–ฅํ‰๊ฐ€ | AI ์‹œ์Šคํ…œ ์˜ํ–ฅ ํ‰๊ฐ€ | ์ฑ”๋ฒ„ ยง3-SCREEN(KILLยทNOT-APPLICABLEยทCURATEDยทEMIT) โ€” ยซ๋ˆ„๊ตฌ์—๊ฒŒ ์–ด๋–ค ์˜ํ–ฅใ€ ์€ ์•ˆ ๋ฌป๋Š”๋‹ค | `harness_incubator_doctrine.md ยง3-SCREEN` | ๐ŸŸก โ†’ ยง4 S3 |
71
+ | 42001 A.7 ๋ฐ์ดํ„ฐ(A.7.2 ๊ฐœ๋ฐœยท๊ฐœ์„  ๋ฐ์ดํ„ฐ ยท A.7.3 ํš๋“ ยท A.7.4 ํ’ˆ์งˆ ยท A.7.5 ์ถœ์ฒ˜ ยท A.7.6 ์ค€๋น„) | ๋ฐ์ดํ„ฐ ํš๋“ยทํ’ˆ์งˆยท์ถœ์ฒ˜ยท์ค€๋น„ | FH ๋Š” ํ•™์Šต ๋ฐ์ดํ„ฐ๊ฐ€ ์—†์ง€๋งŒ **ํ‰๊ฐ€ ๋ฐ์ดํ„ฐ๋Š” ์žˆ๋‹ค**(probes ยท ์ฝ”ํผ์Šค ยท ์ „์‚ฌ๋ณธ ยท ๋กœ๊ทธ): ์ถœ์ฒ˜ = sim ํ—ค๋” `corpus_head_date` ยท ํ’ˆ์งˆ = known-pair ์บ˜๋ฆฌ๋ธŒ๋ ˆ์ด์…˜ ยท ์ค€๋น„ = residency ์ŠคํŠธ๋ฆฝ ยท ๋ฐ˜์ถœ = **residency ์ ˆ๋Œ€ ๊ทœ์น™** | `probes_live.yaml` ยท `scripts/residency_closure_scan.py` ยท sim ํ—ค๋” | ๐ŸŸก A.7.5/A.7.6 ๋Š” ์žˆ๊ณ  A.7.3/A.7.4 ์˜ ยซํ‰๊ฐ€ ๋ฐ์ดํ„ฐ ํš๋“ยทํ’ˆ์งˆ ๊ธฐ์ค€ใ€ ๋ฌธ์„œ๋Š” ์—†๋‹ค |
72
+ | 42001 A.10 3์ž | 3์žยท๊ณ ๊ฐ ๊ด€๊ณ„ | capability composition contract(strictest-wins) ยท ํด๋Ÿฌ์Šคํ„ฐ ๋…ธ๋“œ ๋“ฑ๋ก | `capability_composition_contract.md` | ๐ŸŸก |
73
+ | 5338 ์ˆ˜๋ช…์ฃผ๊ธฐ | ์ •์˜ยทํ†ต์ œยท์‹คํ–‰ยท๊ฐœ์„  ํ”„๋กœ์„ธ์Šค | ์ธํ๋ฒ ์ดํ„ฐ(์ฑ”๋ฒ„ run) โ†’ EMIT โ†’ ํ•„๋“œ โ†’ harvest-loop ๋ณต๋ฆฌ | `harness_incubator_doctrine.md` ยท `hub_compounding_loop.md` | โœ… |
74
+ | 23894 ์œ„ํ—˜๊ด€๋ฆฌ | ์‹๋ณ„ยท๋ถ„์„ยทํ‰๊ฐ€ยท์ฒ˜๋ฆฌ | ๋“ฑ๊ธ‰ํ‘œ(๐Ÿ”ด๐ŸŸก๐Ÿ”ต๐ŸŸข) ยท Surface-Class Degrade Invariant(๋น„๊ฐ€์—ญ = fail-closed) ยท ยซ๋ฏธ์ธก์ •โ‰ 0ใ€ | `ship_readiness_gate.md` ยท `CLAUDE.md ยงIrreversibility Gates` | โœ… ๋ถ€๋ถ„ |
75
+ | 20246 ๋ฆฌ๋ทฐ | ์ž‘์—…์‚ฐ์ถœ๋ฌผ ๋ฆฌ๋ทฐ ํ”„๋กœ์„ธ์Šค | cross-family ๋ฆฌ๋ทฐ ยท `/apex-review` ยท `hub-cc-pr-reviewer` ยท ์ฝœ๋“œ๋ฆฌ๋“œ(`beginner`) | `plugins/fh-meta/agents/*` | โœ… |
76
+
77
+ ## 3. qasp crosswalk โ€” QA ํ•˜๋„ค์Šค์—๊ฒŒ 29119 ๋Š” ยซ์„ ํƒ๋œ ํ™œ๋™ใ€ ๋‹จ์œ„๋กœ ๊ฑธ๋ฆฐ๋‹ค
78
+
79
+ qasp ๋Š” ยซAI ๋กœ QA ๋ฅผ ํ•˜๋Š” ์‹œ์Šคํ…œใ€์ด๋ผ **๋‘ ๋ฐฉํ–ฅ**์ด ๊ฑธ๋ฆฐ๋‹ค: โ“ qasp ๊ฐ€ ์ˆ˜ํ–‰ํ•˜๋Š” ํ…Œ์ŠคํŠธ **ํ™œ๋™**์ด 29119 ์˜ ์–ด๋А ํ™œ๋™์— ๋Œ€์‘ํ•˜๋Š”๊ฐ€
80
+ (ํ”„๋กœ์„ธ์Šค ยซ์ปค๋ฒ„๋ฆฌ์ง€ใ€๊ฐ€ ์•„๋‹ˆ๋‹ค โ€” ์กฐ์ง ์ •์ฑ…ยทํ…Œ์ŠคํŠธ ๊ด€๋ฆฌยท๊ฐ์‹œ/ํ†ต์ œยท์™„๋ฃŒ ๊ธฐ์ค€ยท์‚ฌ๊ณ  ํ”„๋กœ์„ธ์Šคยทํ˜•์ƒ๊ด€๋ฆฌ๋Š” ํŒŒ์ดํ”„๋ผ์ธ ๋ฐ”๊นฅ์ด๋‹ค)
81
+ โ“‘ qasp ์ž์‹ ์ด AI ์‹œ์Šคํ…œ์œผ๋กœ์„œ 42119/25059 ๋กœ ํ‰๊ฐ€๋˜๋Š”๊ฐ€.
82
+
83
+ | ํ‘œ์ค€ ์กฐํ•ญ | ์š”๊ตฌ | qasp ๊ธฐ์ œ | ์ƒํƒœ |
84
+ |---|---|---|---|
85
+ | 29119-2 ํ…Œ์ŠคํŠธ ์„ค๊ณ„ยท๊ตฌํ˜„ **ํ™œ๋™** | ๊ธฐ๋Šฅ/์š”๊ตฌ์—์„œ ํ…Œ์ŠคํŠธ ์กฐ๊ฑดโ†’์ผ€์ด์Šคโ†’์ ˆ์ฐจ | **1๋ง‰ spec-first TC ์ƒ์„ฑ** โ€” P4 MECE ๊ฒ€์‚ฌ ยท P6 ๋ฉ”๋‰ด ํŠธ๋ฆฌ ยท P7 TC ์„ค๊ณ„ ยท surface inventory ยท clarification ํ”„๋กœํ† ์ฝœ(ยซ๋ฌผ์–ด๋ด์•ผ ํ•œ๋‹คใ€) | โœ… ํ™œ๋™ / ๐ŸŸก ํ”„๋กœ์„ธ์Šค(๊ณ„ํšยท๊ฐ์‹œ/ํ†ต์ œยท์™„๋ฃŒ ๊ธฐ์ค€ ๋ฌธ์„œ ์—†์Œ) |
86
+ | 29119-4 ์„ค๊ณ„ ๊ธฐ๋ฒ• | ๋™๋“ฑ๋ถ„ํ• ยท๊ฒฝ๊ณ„๊ฐ’ยท์ƒํƒœ์ „์ดยท์กฐํ•ฉ ๋“ฑ | P7 ์˜ ์ขŒํ‘œ(surface coordinates)๋Š” ์ƒํƒœ์ „์ด ํ…Œ์ŠคํŠธ์˜ **์žฌ๋ฃŒ**(์ƒํƒœยท์ด๋ฒคํŠธยท์ „์ดยท๊ธฐ๋Œ€ ํ–‰๋™ ๋ชจ๋ธ๊นŒ์ง€๋Š” ์•„๋‹˜) ยท MECE ๋Š” ๋™๋“ฑ๋ถ„ํ• ์˜ **์žฌ๋ฃŒ**(์ž…๋ ฅ ๋„๋ฉ”์ธ ๋™๋“ฑ๋ฅ˜ ํ‘œ๊นŒ์ง€๋Š” ์•„๋‹˜) | ๐ŸŸก ๊ธฐ๋ฒ•์ด๋ผ ๋ถ€๋ฅด๋ ค๋ฉด `technique:` ์ฆ๊ฑฐ(๋ถ„ํ• ํ‘œยท์ƒํƒœ ๋ชจ๋ธ)๊ฐ€ ํ•„์š”ํ•˜๋‹ค |
87
+ | 20246 ์ •์  ๋ฆฌ๋ทฐ | ์ธ์ŠคํŽ™์…˜ยท์›Œํฌ์Šค๋ฃจ | **1.5๋ง‰ ์ •์  ๋ฆฌ๋ทฐ 7 ๋ Œ์ฆˆ**(spec_drift ํฌํ•จ, ํ•œ๊ตญ์–ด ๊ธฐํš์„œ) | โœ… |
88
+ | 29119-2 ํ…Œ์ŠคํŠธ ์‹คํ–‰ยท์‚ฌ๊ณ  ๋ณด๊ณ  **ํ™œ๋™** | ์‹คํ–‰ยท๊ฒฐ๊ณผ ๊ธฐ๋กยท์‚ฌ๊ณ  | **2๋ง‰ runner/interpreter**(verb navigateยทclickยทinputยทverify) ยท **MTM**(๊ธฐํš์˜๋„/๊ธฐํš๊ณผ ๋‹ค๋ฆ„/์ฝ”๋“œ๊ฐ€ ๋‹ค๋ฆ„ 3๊ฐˆ๋ž˜) ยท triage 3๋ถ„๊ธฐ ยท defect_lifecycle ยท evidence.json | โœ… ํ™œ๋™ / ๐ŸŸก ์‚ฌ๊ณ  ยซํ”„๋กœ์„ธ์Šคใ€(์ ‘์ˆ˜ยท๋ถ„๋ฅ˜ยท์ข…๊ฒฐ ๊ธฐ์ค€)๋Š” ์šด์˜ ์กฐ์ง์˜ ๋„๊ตฌ ์ชฝ |
89
+ | 29119-11 ์˜ค๋ผํด ๋ฌธ์ œ | ๊ธฐ๋Œ€๊ฐ’ ๋ถ€์žฌ์˜ ์ฒ˜๋ฆฌ | MTM 3๊ฐˆ๋ž˜ = **3-way pseudo-oracle**(๊ธฐํš ยท ์ฝ”๋“œ ยท ์‹คํ–‰์„ ๋Œ€์กฐ) ยท Self-Check Gate 33 ยท `__RUNTIME__` ์ž๋ฆฌํ‘œ์‹œ์ž | โœ… ยท โœ… TC `oracle_type`(๋‹ซํžŒ enum 5: spec ยท mtm-3way ยท human ยท runtime-placeholder ยท none โ€” ๋‹จ์ผ ์†Œ์Šค `src/core/oracle_type.py`, ํŒŒ์„œ ํˆฌ์˜ ์ „ ๊ฒ€์‚ฌ + ์‹คํ–‰ ์ „ ๊ฒŒ์ดํŠธ `ORACLE_TYPE_INVALID`; qasp-dev #261 โ†’ 6c6f008, 2026-09-05, codex 3๋ผ์šด๋“œ CONVERGED) โ€” ยง4 M1 ์˜ qasp ์ชฝ๋„ ๊ตฌํ˜„๋จ |
90
+ | 29119-2 ์™„๋ฃŒยทํšŒ๊ท€ **ํ™œ๋™** | ์™„๋ฃŒ ๋ณด๊ณ ยทํšŒ๊ท€ | **3๋ง‰ ํšŒ๊ท€** ยท `surface_reach` ๋„๋‹ฌ ์ง€ํ‘œ(ยซ์™„์ฃผ 51/51 ์ด ๋กœ๊ทธ์ธ 51๋ฒˆใ€ ์‚ฌ๊ณ ์—์„œ ์‹ ์„ค) ยท new_code_anchor ยท caller_zero baseline | โœ… ํ™œ๋™ / ๐ŸŸก ์™„๋ฃŒ ยซ๊ธฐ์ค€ใ€ ๋ฌธ์„œ ์—†์Œ |
91
+ | 29119-3 ๋ฌธ์„œ | ๊ณ„ํšยท๋ช…์„ธยท๋ณด๊ณ  ํ…œํ”Œ๋ฆฟ | evidence.json ยท report ยท tc_update_suggestion ยท act2_runner_design ยง6-b | ๐ŸŸก ํ…œํ”Œ๋ฆฟ ๋ช…์นญ ๋ฏธ๋ถ€์ฐฉ |
92
+ | 42001 A.7 / 5259 ๋ฐ์ดํ„ฐ | ๋ฐ์ดํ„ฐ ํ’ˆ์งˆยท์ถœ์ฒ˜ยท๋น„๋ฐ€ | **evidence ํ‰๋ฌธ ์ž…๋ ฅ๊ฐ’ ๋งˆ์Šคํ‚น**(interpreted.value ยท action_attempted ยท tc_update_suggestion) ยท ํ•„๋“œ๋ช… ๊ธฐ์ค€ secret ํŒ์ • ยท XML ์Šค๋ƒ…์ƒท ํ‰๋ฌธ์€ ์ž”์—ฌ(#253) | ๐ŸŸก |
93
+ | 42119-8 / 25059 | ์ƒ์„ฑ AI ๊ธฐ๋ฐ˜ QA ์‹œ์Šคํ…œ ์ž์‹ ์˜ ํ’ˆ์งˆ | ยซAX-๋ ˆ๋”” ๋ธ”๋ผ์ธ๋“œ ์™„์ฃผใ€(๋น„์ €์ž๊ฐ€ ๊ฐ€์ด๋“œ๋งŒ์œผ๋กœ 1โ†’3๋ง‰) ยท surface_reach ยท ์ฑ”๋ฒ„ #16 K3 ์•ˆ์ „ ๋ ˆ์ธ | ๐ŸŸก 25059 ํŠน์„ฑ(robustnessยทcontrollabilityยทtransparency)์œผ๋กœ ํ‘œํ˜„ ์•ˆ ๋จ |
94
+ | 42119-7 ๋ ˆ๋“œํ‹ฐ๋ฐ | ์ ๋Œ€ ํ‰๊ฐ€ | cross-family ๋ฆฌ๋ทฐ(ํ™ˆ์—์„œ, residency ์ŠคํŠธ๋ฆฝ ํ›„) ยท ์šด์˜ ์กฐ์ง ๋‚ด๋ถ€ ํŒจ๋„(cross-family ๋Œ€์ฒด) | ๐ŸŸก ๋ณด๊ณ  ํ˜•์‹ |
95
+ | 42001 A.6.2.8 ๋กœ๊ทธ | ์ด๋ฒคํŠธ ๋กœ๊ทธ | evidence.json ยท collector ยท governance | โœ… |
96
+
97
+ ## 4. ๊ฐ•ํ™” ํ›„๋ณด โ€” ์ „๋ถ€ ยซ๊ธฐ๋ก์˜ ์†์„ฑใ€(์ฑ„๋„)์ด๊ณ  ยซ๊ฒฐ๋ก ใ€(ํŒ๋‹จ)์ด ์•„๋‹ˆ๋‹ค (ยงMechanization Boundary)
98
+
99
+ | ๋“ฑ๊ธ‰ | ํ›„๋ณด | ๋ฌด์—‡ | ์™œ ํ‘œ์ค€์ด ์ด๊ฑธ ์ด๋ฆ„ ๋ถ€๋ฅด๋‚˜ | ๋น„์šฉ/์œ„ํ—˜ |
100
+ |---|---|---|---|---|
101
+ | **M1** | **์˜ค๋ผํด ์œ ํ˜• ์ฑ„๋„** โ€” โœ… **๊ตฌํ˜„๋จ 2026-09-05** (FH ๋งˆ์ปค `oracle:` ยท `templates/.git-hooks/pre-commit validate_oracle_leg` ยท ๋ ˆ์ธ o1~o36(o21~o31 = cross-family codex ๊ฐ€ ์—ฐ ๊ตฌ๋ฉ) ยท ๋ฐฐ์„  W6 ยท ์ŠคํŽ™ `.claude/rules/fh_4axis_gate.md ยงMarker axis fields`). qasp TC `oracle_type` ์€ ๋ณ„๋„ PR(๋ฏธ์ฐฉ์ˆ˜) | ๋ ˆ์ธ/๋งˆ์ปค/TC ์— `oracle:` ๊ฐ’ โ€” `known-pair` ยท `metamorphic` ยท `back-to-back` ยท `a-b`(`A/B` ํ—ˆ์šฉ) ยท `human` ยท `none(์‚ฌ์œ  ํ•„์ˆ˜)` โ€” ๋‹ซํžŒ enum, ํ›…์€ ํ˜•์‹๋งŒ | 29119-11 ์˜ ํ•ต์‹ฌ์ด ยซ์˜ค๋ผํด ๋ฌธ์ œใ€๋‹ค. ์ง€๊ธˆ์€ ยซ์ปจํŠธ๋กค์ด ์‚ด์•„ ์žˆ๋‹คใ€๊นŒ์ง€๋งŒ ์ ๊ณ  **์–ด๋–ค ์ข…๋ฅ˜์˜ ์˜ค๋ผํด**์ธ์ง€๋Š” ์•ˆ ์ ๋Š”๋‹ค โ€” ์™ธ๋ถ€ ๋…์ž๊ฐ€ ์ฒซ ๋ฒˆ์งธ๋กœ ๋ฌป๋Š” ๊ฒƒ | ๋‚ฎ์Œ(์˜ต์…”๋„ ํ•„๋“œ + enum). ๊ฐ’์˜ ์ง„์œ„๋Š” ์•ˆ ๋ณธ๋‹ค(ํ˜•์‹๋งŒ) |
102
+ | **M2** | **42119-7 ํ˜• ๋ ˆ๋“œํŒ€ ๋ณด๊ณ  ํ…œํ”Œ๋ฆฟ** | `templates/RED_TEAM_REPORT.md` โ€” ๋ชฉํ‘œ ยท ๊ณต๊ฒฉ ๋ฒกํ„ฐ(๋ ˆ์ง€์ŠคํŠธ๋ฆฌ ์ธ์šฉ) ยท ๋ฐฉ๋ฒ•(๊ณ„์—ดยท์ž…์žฅยท๋ฐ›์€ ๊ฒƒ) ยท ๋ฐœ๊ฒฌ(S/A/B + ์žฌํ˜„ ์ž…๋ ฅ) ยท ์ฒ˜๋ถ„(์ˆ˜๋ฆฌ/๋ฐ˜๋ฐ•/์ž”์—ฌ) ยท ์ˆ˜๋ช…์ฃผ๊ธฐ ํ†ตํ•ฉ(์–ด๋А ๊ฒŒ์ดํŠธ์—์„œ ๋Œ์•˜๋‚˜). codex ํ”„๋กฌํ”„ํŠธ์˜ ยซattack specifically (1)โ€ฆ(n)ใ€์ด ์ด๋ฏธ ์ด ํ˜•ํƒœ | ๊ฐœ๋ฐœ ์ค‘์ธ ํ‘œ์ค€์ด ์š”๊ตฌํ•˜๋Š” 5 ์š”์†Œ๋ฅผ **์šฐ๋ฆฌ ์‚ฐ์ถœ์ด ์ด๋ฏธ ๊ฐ–๊ณ  ์žˆ๋Š”๋ฐ ํ˜•์‹๋งŒ ์•ˆ ๋งž๋Š”๋‹ค** โ€” ๊ฐ€์žฅ ์‹ธ๊ฒŒ ยซ๋ณด์—ฌ์ค„ ์ˆ˜ ์žˆ๋Š”ใ€ ์ž๋ฆฌ | ๋‚ฎ์Œ(ํ…œํ”Œ๋ฆฟ + SKILL ํฌ์ธํ„ฐ) |
103
+ | **M3** | **`docs/STANDARDS_ALIGNMENT.md`** | ์ด ๋ฌธ์„œ์˜ ์š”์•ฝ๋ณธ + ์ฆ๊ฑฐ ํฌ์ธํ„ฐ + ์ •์ง ๊ฒฝ๊ณ„(์ธ์ฆ ์•„๋‹˜ ยท TS ์ดˆ์•ˆ) โ€” ์™ธ๋ถ€์— ๋ณด์ด๋Š” ํ‘œ๋ฉด | 42001 A.8(์ดํ•ด๊ด€๊ณ„์ž ์ •๋ณด) ์ž์ฒด๊ฐ€ ยซ๋ณด์—ฌ์ค˜๋ผใ€๋‹ค | ๋‚ฎ์Œ |
104
+ | S1 | AI ํŠน์„ฑ ์œ„ํ—˜ ์–ดํœ˜ | ๋งˆ์ปค `affected:` ์˜† ์˜ต์…”๋„ `risk:` โ€” 42119-2/29119-11 ํŠน์„ฑ(๋น„๊ฒฐ์ •์„ฑยท๋ฐ์ดํ„ฐ ์˜์กดยท์ ์‘์„ฑยท๋ถˆํˆฌ๋ช…์„ฑยท์ž์œจ์„ฑ) ์ค‘ ์ด ๋ณ€๊ฒฝ์ด ๊ฑด๋“œ๋ฆฌ๋Š” ๊ฒƒ | ยง6 ์œ„ํ—˜ ์‹๋ณ„์˜ ์–ดํœ˜ ์ •๋ ฌ | ๋‚ฎ์Œ์ด๋‚˜ ยซ์žํ‰ใ€ ์ฑ„๋„์ด ํ•˜๋‚˜ ๋” ๋Š”๋‹ค |
105
+ | S2 | ๋ฉ”ํƒ€๋ชจํ”ฝ ๊ด€๊ณ„ ๋ช…์‹œ | ์‚ฌ์ „๋“ฑ๋ก์— ยซ์ž…๋ ฅ ๋ณ€ํ™˜ โ†’ ๊ธฐ๋Œ€ ์ถœ๋ ฅ ๋ณ€ํ™”ใ€ ๋ฅผ ๊ด€๊ณ„ ๋ฌธ์žฅ์œผ๋กœ(ARM/CTRL ํ•œ ๋ณ€์ˆ˜ ๊ทœ์œจ์˜ ์ผ๋ฐ˜ํ˜•) | 29119-11 ์˜ ๋Œ€ํ‘œ ๊ธฐ๋ฒ• | ์‚ฐ๋ฌธ ๊ทœ์œจ |
106
+ | S3 | ์ฑ”๋ฒ„ ์˜ํ–ฅํ‰๊ฐ€ ํ•œ ์ค„ | ยง3-SCREEN ์— ยซ๋ˆ„๊ฐ€ ์˜ํ–ฅ๋ฐ›๋‚˜ใ€ | 42001 A.5 | ์‚ฐ๋ฌธ |
107
+ | R1 | ํ˜•์‹์  ๋ฐฉ๋ฒ• | 42119-3 ์˜ ํ•œ ์ถ• โ€” ์ ์šฉ ์ž๋ฆฌ ์—†์Œ | โ€” | ๊ธฐ๋ก๋งŒ |
108
+ | qasp M | `oracle_type` + 29119-3 ๋ฌธ์„œ ์ด๋ฆ„ํ‘œ + 25059 ํŠน์„ฑ ํ‘œํ˜„ | TC ์Šคํ‚ค๋งˆ ํ•„๋“œ ยท ์‚ฐ์ถœ๋ฌผ ๋ฌธ์„œ ํ‘œ ยท AX-๋ ˆ๋”” ๊ธฐ์ค€์„ ํŠน์„ฑ์œผ๋กœ | 29119 ์ž์ฒด๊ฐ€ QA ์ œํ’ˆ์˜ ๊ณผ๋… | ์šด์˜ ์กฐ์ง ๋ฐ˜์ž… ์ˆœ์„œ์™€ ๋ฌด๊ด€ํ•œ ๋ฌธ์„œ/์Šคํ‚ค๋งˆ |
109
+
110
+ ## 4-b. ์ด ๋ฌธ์„œ๊ฐ€ ๋‹ค๋ฃจ์ง€ ์•Š์€ ์ธ์ ‘ ํ‘œ์ค€ (๋ช…์‹œ์  ๋น„ํฌํ•จ)
111
+
112
+ | ํ‘œ์ค€ | ๋ฌด์—‡ | ์™œ ์—ฌ๊ธฐ ์—†๋‚˜ |
113
+ |---|---|---|
114
+ | ISO/IEC TS 25058 | AI ์‹œ์Šคํ…œ ํ’ˆ์งˆ ํ‰๊ฐ€(25040 ์˜ AI ํ™•์žฅ) | ํ‰๊ฐ€ ยซ์ ˆ์ฐจใ€ ํ‘œ์ค€ โ€” 42119 ์™€ ๊ฒน์น˜๋Š” ์ธต์ด๋ผ ํ›„์† |
115
+ | ISO/IEC TS 6254 ยท ISO/IEC 12792 | ์„ค๋ช…๊ฐ€๋Šฅ์„ฑ ยท ํˆฌ๋ช…์„ฑ ๋ถ„๋ฅ˜์ฒด๊ณ„ | transparency ํ–‰์˜ ์–ดํœ˜๋งŒ ํ•„์š”ํ–ˆ๋‹ค |
116
+ | ISO/IEC 24029-2/3 | ์‹ ๊ฒฝ๋ง ๊ฐ•๊ฑด์„ฑ ํ˜•์‹์ /ํ†ต๊ณ„์  ๋ฐฉ๋ฒ• | FH ๋Š” ๊ฐ€์ค‘์น˜๋ฅผ ์•ˆ ๋งŒ์ง„๋‹ค |
117
+ | ISO/IEC TS 24970 | AI ์‹œ์Šคํ…œ ๋กœ๊น… | traceability/A.6.2.8 ํ–‰์˜ ํ›„์† ์ •๋ณธ ํ›„๋ณด โ€” **๋‹ค์Œ ๊ฐœ์ •์—์„œ 1์ˆœ์œ„** |
118
+ | NIST AI RMF 1.0 ยท IEEE 7001 ยท EU AI Act Art. 9/15 | ์œ„ํ—˜๊ด€๋ฆฌ ํ”„๋ ˆ์ž„ ยท ํˆฌ๋ช…์„ฑ ยท ์œ„ํ—˜/์ •ํ™•์„ฑยท๊ฐ•๊ฑด์„ฑ ์š”๊ตฌ | ๋ฒ•ยทํ”„๋ ˆ์ž„ ์ธต โ€” ์ด ๋ฌธ์„œ๋Š” ISO/IEC ๊ธฐ์ˆ  ํ‘œ์ค€์— ํ•œ์ • |
119
+
120
+ ## 5. ์ •์งํ•œ ํ•œ๊ณ„
121
+
122
+ - 42119-2 ๋Š” **๊ณต๊ฐœ ์ƒ˜ํ”Œ(ToCยท์„œ๋ฌธ)**๋งŒ ์ฝ์—ˆ๋‹ค. ์กฐํ•ญ ๋ฒˆํ˜ธยท์ œ๋ชฉ์€ ์‹ค๋ฌผ์ด๊ณ , ์กฐํ•ญ ยซ๋ณธ๋ฌธใ€์˜ ์š”๊ตฌ์‚ฌํ•ญ์€ 2์ฐจ ์ž๋ฃŒ(SGSยทResyncยทogunsecurity)์™€
123
+ **ISTQB CT-AI v2.0 ์‹ค๋ผ๋ฒ„์Šค**(AI ํ…Œ์ŠคํŠธ ์ฃผ์ œ๋ฅผ ๋‹ค๋ฃจ๋Š” ๊ณต๊ฐœ ๊ต์œก ์ž๋ฃŒ โ€” 29119-11 ์˜ ยซ๊ฑฐ์šธใ€์ด **์•„๋‹ˆ๋‹ค**: v2 ๋Š” ์ƒ์„ฑ AIยท๋ ˆ๋“œํ‹ฐ๋ฐ๊นŒ์ง€
124
+ ๋„“ํžŒ ์ธ์ฆ ์‹ค๋ผ๋ฒ„์Šค๋‹ค)๋กœ ๋ณด๊ฐ•ํ–ˆ๋‹ค. 42119-3.2/7/8 ์€ **์Šค์ฝ”ํ”„ ๋ฌธ์žฅ**๊นŒ์ง€๋งŒ ๊ณต๊ฐœ๋‹ค.
125
+ - 25059(DIS) traceability ์˜ ์ •์˜๋Š” 2์ฐจ ์ž๋ฃŒ ๊ฐ„ ๋ถˆ์ผ์น˜(ยง0) โ€” ์‹ค๋ฌผ ์—ด๋žŒ ์ „๊นŒ์ง€ ๋ณ‘๊ธฐ.
126
+ - ยซ์ค€์ˆ˜ใ€๊ฐ€ ์•„๋‹ˆ๋ผ **์ •๋ ฌ**์ด๋‹ค. ์ ํ•ฉ์„ฑ ํ‰๊ฐ€ยท์ธ์ฆ์€ ๋ณ„๊ฐœ์˜ ์ ˆ์ฐจ์ด๊ณ , ์ด ๋ฌธ์„œ๋Š” ์ž๊ธฐํ‰๊ฐ€๋‹ค(์žํ‰์ด๋ผ ๊ฒŒ์ž„ ๊ฐ€๋Šฅ โ€” `CLAUDE.md ยง์ž๊ธฐ ๋Œ€์กฐ` ์™€ ๊ฐ™์€ ๊ฒฝ๊ณ„).
127
+ - ํ•œ ์ €์žยทํ•œ ์ €์žฅ์†Œ์˜ ํ•ด์„์ด๋‹ค. ์กฐํ•ญโ†”๊ธฐ์ œ ๋Œ€์‘์˜ ยซ๋งž์Œใ€์€ cross-family ๋ฆฌ๋ทฐ๋กœ ํ•œ ๋ฒˆ ๋” ๋ดค๋‹ค(๋งˆ์ปค `crossfamily:`).
128
+
129
+ ## Sources
130
+ - ISO/IEC TS 42119-2:2025 ๊ณต๊ฐœ ์ƒ˜ํ”Œ(ToCยท์„œ๋ฌธ) โ€” https://cdn.standards.iteh.ai/samples/iso/iso-iec-ts-42119-2-2025/03241f088b1442bb8ee6866252c2bd98/iso-iec-ts-42119-2-2025.pdf
131
+ - ISO/IEC AWI TS 42119-7 Red teaming โ€” https://www.iso.org/standard/91240.html ยท https://isme.me/en/project/show/iso:proj:91240
132
+ - ISO/IEC AWI TS 42119-8 โ€” https://www.iso.org/standard/91609.html
133
+ - ISO/IEC DTS 42119-3 โ€” https://www.iso.org/standard/85072.html
134
+ - 42119 ์‹œ๋ฆฌ์ฆˆ ์†Œ๊ฐœ โ€” https://www.sgs.com/en-gb/news/2026/01/announcing-the-iso-iec-42119-series-a-new-era-for-ai-testing-and-assurance ยท https://bootcamp.resync.nz/ai-testing/iso42119/ ยท https://blog.nucida.com/blog/the-dawn-of-iso-42119
135
+ - ISO/IEC TR 29119-11:2020 โ€” https://www.iso.org/standard/79016.html ยท https://oecd.ai/en/catalogue/tools/isoiec-tr-29119-112020-software-and-systems-engineering-software-testing-part-11-guidelines-on-the-testing-of-ai-based-systems
136
+ - ISTQB CT-AI Syllabus v2.0 โ€” https://istqb.org/wp-content/uploads/2026/05/ISTQB-_CTAI_Syllabus_v2.0_Release.pdf
137
+ - ISO/IEC 25059:2023 ๋ฐ DIS ๊ฐœ์ • ํ•ด์„ค โ€” https://www.iso.org/standard/80655.html ยท https://adamleonsmith.substack.com/p/isoiec-25059-gets-a-rewrite-ai-quality
138
+ - ISO/IEC 42001 Annex A โ€” https://www.isms.online/iso-42001/annex-a-controls/
139
+ - ISO/IEC 5338:2023 ยท 23894:2023 ยท TS 8200:2024 โ€” https://www.iso.org/standard/81118.html ยท https://blog.stackaware.com/p/iso-5338-42001-ai-risk-management-lifecycle
@@ -198,6 +198,26 @@ Mechanization Boundary โ€” ์ด ์นธ๋„ **์กด์žฌ๋งŒ** ์š”๊ตฌํ•œ๋‹ค: ํŒŒ์ผ๋Ÿฟ ํšŸ
198
198
  2. **Hand-verify one sample before publishing.** Open the single case the instrument is *most* confident
199
199
  about and confirm by eye. Do this **before** the number enters a report.
200
200
 
201
+ ### ์™ธ๋ถ€ ๊ทผ๊ฑฐ โ€” ์ด ๊ทœ์œจ์€ ์šฐ๋ฆฌ ๋„๊ทธํ‘ธ๋“œ์—๋งŒ ์–นํ˜€ ์žˆ์ง€ ์•Š๋‹ค (2026-09-06 ์ถ”๊ฐ€)
202
+
203
+ ๐ŸŸข **published known-pair, ์™ธ๋ถ€ ๊ทธ๋ฃน, ์šฐ๋ฆฌ ์‚ฌ๊ฑด๊ณผ ๋ฌด๊ด€ํ•˜๊ฒŒ**: `arXiv:2609.03267` โ€”
204
+ *Refusing the Impossible: A Taxonomy and Benchmark for Code Hallucination in Large Language Models*
205
+ (Dasu, Kundu, Tan ยท 2026-09-03 ยท `cs.SE`). ๊ทธ๋“ค์€ ยซ๋ชจ๋ธ์ด ๋ถˆ๊ฐ€๋Šฅํ•œ ์š”๊ตฌ์— ์ฝ”๋“œ๋ฅผ ์ง€์–ด๋‚ธ๋‹คใ€๋Š”
206
+ ํ—ค๋“œ๋ผ์ธ(๋ถˆ๊ฐ€๋Šฅ ํ”„๋กฌํ”„ํŠธ์—์„œ **์•ฝ 60%** ๊ฐ€ ๊ทผ๊ฑฐ ์—†๋Š” ์ฝ”๋“œ, **27%** ๋งŒ ๊ฑฐ์ ˆ)์„ **๋‚ด๊ธฐ ์ „์—**
207
+ ๊ณ„๊ธฐ๊ฐ€ ์•„๋Š” ๋‹ต์„ ๊ฐ€๋ฅด๋Š”์ง€๋ถ€ํ„ฐ ๋ณด์˜€๋‹ค: **91 ๊ฐœ์˜ ์ง์ง€์€ ยซํ’€ ์ˆ˜ ์žˆ๋Š”ยป ์ปจํŠธ๋กค**์—์„œ ์˜ค๊ฑฐ๋ถ€
208
+ **0%**, ๊ทธ๋ฆฌ๊ณ  ๋‘ ๋‹จ๊ณ„ ํŒ์ • ํ”„๋กœํ† ์ฝœ์„ ์‚ฌ๋žŒ ๋ผ๋ฒจ๊ณผ ๋Œ€์กฐํ•ด **82% ์ผ์น˜, ฮบ=0.73**. (์ดˆ๋ก์—์„œ ์ง์ ‘
209
+ ํ™•์ธ โ€” ์ด ๋ฌธ๋‹จ์€ digest ์š”์•ฝ์ด ์•„๋‹ˆ๋ผ ์›๋ฌธ ์ธ์šฉ์ด๋‹ค.)
210
+
211
+ **์™œ ์—ฌ๊ธฐ ์ ๋‚˜**: ์œ„ ยงThe rule ์˜ 1๋ฒˆ(known-pair)ยท2๋ฒˆ(์‚ฌ๋žŒ์ด ํ•œ ๊ฑด ํ™•์ธ)์ด ์ด ์ €์žฅ์†Œ ์•ˆ์—์„œ๋Š”
212
+ **์ „๋ถ€ ์ž์ฒด ์‚ฌ๊ฑด**(77๊ฑดโ†’3๊ฑด ๋ถ•๊ดด ๋“ฑ)์œผ๋กœ๋งŒ ๊ทผ๊ฑฐ๋ฅผ ๊ฐ–๊ณ  ์žˆ์—ˆ๋‹ค โ€” ๊ทœ์œจ์ด ์˜ณ๋‹ค๋Š” ์ฃผ์žฅ์˜ ์œ ์ผํ•œ
213
+ ์ฆ์ธ์ด ๊ทธ ๊ทœ์œจ์„ ์“ด ์šฐ๋ฆฌ ์ž์‹ ์ด์—ˆ๋‹ค๋Š” ๋œป์ด๊ณ , ๊ทธ๊ฑด ์ด ๋ฌธ์„œ๊ฐ€ ๋‹ค๋ฅธ ์ž๋ฆฌ์—์„œ ๊ธˆ์ง€ํ•˜๋Š” ํ˜•ํƒœ๋‹ค.
214
+ ์ด ๋…ผ๋ฌธ์€ **๊ฐ™์€ ์ ˆ์ฐจ๋ฅผ ๋ฐŸ์€ ์™ธ๋ถ€์˜ ๊ณต๊ฐœ ์‚ฌ๋ก€**๋ผ ๊ทธ ์ž๊ธฐ์ฐธ์กฐ๋ฅผ ๋Š๋Š”๋‹ค.
215
+
216
+ โš ๏ธ **์ด์‹๋˜๋Š” ๊ฒƒ์€ ๊ณ„๊ธฐ ์„ค๊ณ„์ด์ง€ ์ˆซ์ž๊ฐ€ ์•„๋‹ˆ๋‹ค.** 60%/27%/ฮบ=0.73 ์€ 12๊ฐœ open-weight ๋ชจ๋ธ์˜
217
+ ์ฝ”๋“œ ํ™˜๊ฐ ๋ฒค์น˜๋งˆํฌ ์ˆ˜์น˜์ด์ง€ ํ•˜๋„ค์Šค์— ๋Œ€ํ•œ ์ธก์ •์ด ์•„๋‹ˆ๋‹ค. FH ๊ฐ€ ์ธ์šฉํ•˜๋Š” ๊ฒƒ์€ ยซํ—ค๋“œ๋ผ์ธ์„ ๋‚ด๊ธฐ
218
+ ์ „์— ์•„๋Š” ๋‹ต์œผ๋กœ ๊ณ„๊ธฐ๋ฅผ ๊ฐˆ๋ž๋‹คยป๋Š” **์ˆœ์„œ**๋ฟ์ด๋‹ค. ์šฐ๋ฆฌ ์ˆ˜์น˜์— ๋Œ€ํ•œ ๊ทผ๊ฑฐ๋กœ ์“ฐ๋ฉด ๊ทธ ์ž์ฒด๊ฐ€
219
+ ์ด ๋ฌธ์„œ ยง๊ณ„๊ธฐ ๋ณด์ •์ด ๊ธˆ์ง€ํ•˜๋Š” ยซ๋‚จ์˜ ์ˆซ์ž ์ˆ˜์ž…ยป์ด๋‹ค.
220
+
201
221
  **Publish-order asymmetry (why step 2 is not optional):** verification is cheap *before* publication and
202
222
  expensive *after*. A number written into a report, a session card, and a signal file must then be
203
223
  corrected in **all three**, and every downstream reader who already consumed it is not recalled.