# Kotlin CLI contracts: trusted selected-file outline, hierarchy, revision, read-only copy, and explicit unsupported scope/filter errors. env SEMEDIT_TEST_KOTLIN_OUTLINE=1 exec cp src/Widget.kt expected.kt exec semedit outline --language kotlin --trust-workspace --kotlin-bin $SEMEDIT_TEST_KOTLIN_LS --path src/Widget.kt --include-unexported stdout 'src/Widget\.kt' stdout 'Widget' stdout 'run' stdout 'method run' stdout 'symbol: Widget\.run' ! stderr .+ exec cmp src/Widget.kt expected.kt ! semedit outline --language kotlin --trust-workspace --kotlin-bin $SEMEDIT_TEST_KOTLIN_LS --path src --include-unexported stderr 'selected files only' ! semedit outline --language kotlin --trust-workspace --kotlin-bin $SEMEDIT_TEST_KOTLIN_LS --path src/Widget.kt --include-unexported=false stderr 'visibility filtering' -- src/Widget.kt -- class Widget { fun run() {} }