@voxgig/sdkgen 4.21.0 → 4.22.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.
- package/bin/voxgig-sdkgen +1 -1
- package/dist/action/action.js +0 -65
- package/dist/action/action.js.map +1 -1
- package/dist/action/check.js +0 -88
- package/dist/action/check.js.map +1 -1
- package/dist/action/dispatch.js +0 -27
- package/dist/action/dispatch.js.map +1 -1
- package/dist/action/doctor.d.ts +1 -0
- package/dist/action/doctor.js +55 -321
- package/dist/action/doctor.js.map +1 -1
- package/dist/action/edition.js +1 -87
- package/dist/action/edition.js.map +1 -1
- package/dist/action/feature.js +0 -48
- package/dist/action/feature.js.map +1 -1
- package/dist/action/kind.js +0 -132
- package/dist/action/kind.js.map +1 -1
- package/dist/action/package.js +0 -221
- package/dist/action/package.js.map +1 -1
- package/dist/action/resolve.js +0 -145
- package/dist/action/resolve.js.map +1 -1
- package/dist/action/target.js +0 -177
- package/dist/action/target.js.map +1 -1
- package/dist/cmp/AgentGuide.js +0 -7
- package/dist/cmp/AgentGuide.js.map +1 -1
- package/dist/cmp/AgentGuideContent.js +0 -24
- package/dist/cmp/AgentGuideContent.js.map +1 -1
- package/dist/cmp/AgentGuideTop.js +0 -7
- package/dist/cmp/AgentGuideTop.js.map +1 -1
- package/dist/cmp/Changelog.js +0 -14
- package/dist/cmp/Changelog.js.map +1 -1
- package/dist/cmp/Deploy.js +1 -31
- package/dist/cmp/Deploy.js.map +1 -1
- package/dist/cmp/Entity.js +0 -4
- package/dist/cmp/Entity.js.map +1 -1
- package/dist/cmp/ExternalTarget.js +0 -36
- package/dist/cmp/ExternalTarget.js.map +1 -1
- package/dist/cmp/Feature.js +0 -14
- package/dist/cmp/Feature.js.map +1 -1
- package/dist/cmp/FeatureDocs.js +0 -25
- package/dist/cmp/FeatureDocs.js.map +1 -1
- package/dist/cmp/PublishWorkflow.js +0 -60
- package/dist/cmp/PublishWorkflow.js.map +1 -1
- package/dist/cmp/ReadmeErrors.js +0 -2
- package/dist/cmp/ReadmeErrors.js.map +1 -1
- package/dist/cmp/ReadmeExplanation.js +0 -5
- package/dist/cmp/ReadmeExplanation.js.map +1 -1
- package/dist/cmp/ReadmeFeatures.js +0 -10
- package/dist/cmp/ReadmeFeatures.js.map +1 -1
- package/dist/cmp/ReadmeRefFeatures.js +0 -19
- package/dist/cmp/ReadmeRefFeatures.js.map +1 -1
- package/dist/cmp/ReadmeStation.js +0 -19
- package/dist/cmp/ReadmeStation.js.map +1 -1
- package/dist/cmp/ReadmeTop.js +0 -80
- package/dist/cmp/ReadmeTop.js.map +1 -1
- package/dist/cmp/ReadmeUnions.js +0 -15
- package/dist/cmp/ReadmeUnions.js.map +1 -1
- package/dist/cmp/Registered.js +0 -30
- package/dist/cmp/Registered.js.map +1 -1
- package/dist/cmp/Security.js +0 -2
- package/dist/cmp/Security.js.map +1 -1
- package/dist/cmp/Test.js +2 -1
- package/dist/cmp/Test.js.map +1 -1
- package/dist/cmp/TestControl.js +0 -25
- package/dist/cmp/TestControl.js.map +1 -1
- package/dist/helpers/applicability.js +0 -60
- package/dist/helpers/applicability.js.map +1 -1
- package/dist/helpers/buildIdNames.js +0 -12
- package/dist/helpers/buildIdNames.js.map +1 -1
- package/dist/helpers/canonSpec.js +0 -114
- package/dist/helpers/canonSpec.js.map +1 -1
- package/dist/helpers/canonType.js +0 -87
- package/dist/helpers/canonType.js.map +1 -1
- package/dist/helpers/collectDeps.js +0 -27
- package/dist/helpers/collectDeps.js.map +1 -1
- package/dist/helpers/definition.js +0 -29
- package/dist/helpers/definition.js.map +1 -1
- package/dist/helpers/dryrun.js +0 -8
- package/dist/helpers/dryrun.js.map +1 -1
- package/dist/helpers/featureSource.js +0 -145
- package/dist/helpers/featureSource.js.map +1 -1
- package/dist/helpers/getMatchEntries.js +0 -4
- package/dist/helpers/getMatchEntries.js.map +1 -1
- package/dist/helpers/junk.js +9 -85
- package/dist/helpers/junk.js.map +1 -1
- package/dist/helpers/manifest.js +0 -138
- package/dist/helpers/manifest.js.map +1 -1
- package/dist/helpers/modelNames.js +0 -78
- package/dist/helpers/modelNames.js.map +1 -1
- package/dist/helpers/modelcheck.js +0 -106
- package/dist/helpers/modelcheck.js.map +1 -1
- package/dist/helpers/naming.d.ts +0 -1
- package/dist/helpers/naming.js +0 -303
- package/dist/helpers/naming.js.map +1 -1
- package/dist/helpers/opExample.js +0 -51
- package/dist/helpers/opExample.js.map +1 -1
- package/dist/helpers/opShape.js +0 -198
- package/dist/helpers/opShape.js.map +1 -1
- package/dist/helpers/optspec.js +0 -77
- package/dist/helpers/optspec.js.map +1 -1
- package/dist/helpers/packageMeta.js +1 -200
- package/dist/helpers/packageMeta.js.map +1 -1
- package/dist/helpers/pointPath.js +0 -55
- package/dist/helpers/pointPath.js.map +1 -1
- package/dist/helpers/resolved.d.ts +6 -0
- package/dist/helpers/resolved.js +49 -0
- package/dist/helpers/resolved.js.map +1 -0
- package/dist/helpers/semver.js +0 -61
- package/dist/helpers/semver.js.map +1 -1
- package/dist/helpers/serverVars.js +0 -44
- package/dist/helpers/serverVars.js.map +1 -1
- package/dist/helpers/shipped.js +0 -14
- package/dist/helpers/shipped.js.map +1 -1
- package/dist/helpers/station.js +0 -32
- package/dist/helpers/station.js.map +1 -1
- package/dist/helpers/stdrep.js +0 -26
- package/dist/helpers/stdrep.js.map +1 -1
- package/dist/helpers/testPolicy.js +0 -4
- package/dist/helpers/testPolicy.js.map +1 -1
- package/dist/sdkgen.d.ts +2 -1
- package/dist/sdkgen.js +13 -242
- package/dist/sdkgen.js.map +1 -1
- package/dist/testkit.js +6 -266
- package/dist/testkit.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/utility.js +0 -243
- package/dist/utility.js.map +1 -1
- package/model/sdkgen.aon +12 -489
- package/package.json +4 -4
- package/project/.sdk/model/feature/audit.aon +0 -7
- package/project/.sdk/model/feature/cache.aon +0 -7
- package/project/.sdk/model/feature/clienttrack.aon +0 -7
- package/project/.sdk/model/feature/cost.aon +0 -13
- package/project/.sdk/model/feature/debug.aon +0 -7
- package/project/.sdk/model/feature/idempotency.aon +0 -7
- package/project/.sdk/model/feature/log.aon +0 -7
- package/project/.sdk/model/feature/metrics.aon +0 -7
- package/project/.sdk/model/feature/netsim.aon +0 -10
- package/project/.sdk/model/feature/paging.aon +0 -7
- package/project/.sdk/model/feature/proxy.aon +0 -7
- package/project/.sdk/model/feature/ratelimit.aon +0 -7
- package/project/.sdk/model/feature/retry.aon +0 -7
- package/project/.sdk/model/feature/secrets.aon +0 -482
- package/project/.sdk/model/feature/streaming.aon +0 -7
- package/project/.sdk/model/feature/telemetry.aon +0 -7
- package/project/.sdk/model/feature/test.aon +1 -8
- package/project/.sdk/model/feature/timeout.aon +0 -7
- package/project/.sdk/model/feature/validate.aon +0 -32
- package/project/.sdk/model/target/c.aon +0 -41
- package/project/.sdk/model/target/clojure.aon +0 -36
- package/project/.sdk/model/target/cpp.aon +0 -42
- package/project/.sdk/model/target/csharp.aon +0 -26
- package/project/.sdk/model/target/elixir.aon +0 -22
- package/project/.sdk/model/target/go-cli.aon +0 -30
- package/project/.sdk/model/target/go-mcp.aon +0 -21
- package/project/.sdk/model/target/go.aon +0 -9
- package/project/.sdk/model/target/java.aon +0 -29
- package/project/.sdk/model/target/js.aon +2 -21
- package/project/.sdk/model/target/kotlin.aon +0 -31
- package/project/.sdk/model/target/lua.aon +0 -32
- package/project/.sdk/model/target/ocaml.aon +0 -64
- package/project/.sdk/model/target/perl.aon +0 -20
- package/project/.sdk/model/target/php.aon +0 -17
- package/project/.sdk/model/target/py-data.aon +0 -33
- package/project/.sdk/model/target/py.aon +0 -17
- package/project/.sdk/model/target/rb.aon +0 -17
- package/project/.sdk/model/target/rust.aon +0 -25
- package/project/.sdk/model/target/scala.aon +0 -74
- package/project/.sdk/model/target/swift.aon +0 -41
- package/project/.sdk/model/target/ts.aon +3 -25
- package/project/.sdk/model/target/zig.aon +0 -50
- package/project/.sdk/src/cmp/c/Config_c.ts +0 -100
- package/project/.sdk/src/cmp/c/EntityTypes_c.ts +0 -36
- package/project/.sdk/src/cmp/c/Main_c.ts +0 -44
- package/project/.sdk/src/cmp/c/Package_c.ts +0 -14
- package/project/.sdk/src/cmp/c/PrepareAuth_c.ts +0 -85
- package/project/.sdk/src/cmp/c/ReadmeExamplesTest_c.ts +0 -20
- package/project/.sdk/src/cmp/c/ReadmeRef_c.ts +2 -5
- package/project/.sdk/src/cmp/c/ReadmeTopQuick_c.ts +0 -2
- package/project/.sdk/src/cmp/c/Schema_c.ts +0 -19
- package/project/.sdk/src/cmp/c/utility_c.ts +0 -47
- package/project/.sdk/src/cmp/clojure/Config_clojure.ts +0 -63
- package/project/.sdk/src/cmp/clojure/Entity_clojure.ts +0 -1
- package/project/.sdk/src/cmp/clojure/Main_clojure.ts +0 -41
- package/project/.sdk/src/cmp/clojure/Package_clojure.ts +0 -20
- package/project/.sdk/src/cmp/clojure/PrepareAuth_clojure.ts +0 -130
- package/project/.sdk/src/cmp/clojure/ReadmeExamplesTest_clojure.ts +0 -16
- package/project/.sdk/src/cmp/clojure/ReadmeRef_clojure.ts +2 -5
- package/project/.sdk/src/cmp/clojure/Schema_clojure.ts +0 -20
- package/project/.sdk/src/cmp/clojure/TestDirect_clojure.ts +0 -6
- package/project/.sdk/src/cmp/clojure/TestEntity_clojure.ts +0 -10
- package/project/.sdk/src/cmp/clojure/Test_clojure.ts +0 -8
- package/project/.sdk/src/cmp/clojure/featureextra_clojure.ts +0 -34
- package/project/.sdk/src/cmp/clojure/utility_clojure.ts +0 -47
- package/project/.sdk/src/cmp/cpp/Config_cpp.ts +0 -109
- package/project/.sdk/src/cmp/cpp/EntityTypes_cpp.ts +0 -36
- package/project/.sdk/src/cmp/cpp/Main_cpp.ts +0 -47
- package/project/.sdk/src/cmp/cpp/Package_cpp.ts +0 -14
- package/project/.sdk/src/cmp/cpp/PrepareAuth_cpp.ts +0 -125
- package/project/.sdk/src/cmp/cpp/ReadmeExamplesTest_cpp.ts +0 -19
- package/project/.sdk/src/cmp/cpp/ReadmeQuick_cpp.ts +0 -7
- package/project/.sdk/src/cmp/cpp/ReadmeRef_cpp.ts +2 -5
- package/project/.sdk/src/cmp/cpp/Schema_cpp.ts +0 -21
- package/project/.sdk/src/cmp/cpp/TestEntity_cpp.ts +0 -3
- package/project/.sdk/src/cmp/cpp/Test_cpp.ts +0 -3
- package/project/.sdk/src/cmp/cpp/utility_cpp.ts +0 -28
- package/project/.sdk/src/cmp/csharp/Config_csharp.ts +0 -79
- package/project/.sdk/src/cmp/csharp/EntityOperation_csharp.ts +0 -3
- package/project/.sdk/src/cmp/csharp/EntityTypes_csharp.ts +0 -50
- package/project/.sdk/src/cmp/csharp/Entity_csharp.ts +0 -1
- package/project/.sdk/src/cmp/csharp/Main_csharp.ts +0 -24
- package/project/.sdk/src/cmp/csharp/Package_csharp.ts +0 -20
- package/project/.sdk/src/cmp/csharp/PrepareAuth_csharp.ts +0 -81
- package/project/.sdk/src/cmp/csharp/ReadmeEntity_csharp.ts +0 -1
- package/project/.sdk/src/cmp/csharp/ReadmeExamplesTest_csharp.ts +0 -23
- package/project/.sdk/src/cmp/csharp/ReadmeRef_csharp.ts +2 -5
- package/project/.sdk/src/cmp/csharp/ReadmeTopQuick_csharp.ts +0 -2
- package/project/.sdk/src/cmp/csharp/Schema_csharp.ts +0 -18
- package/project/.sdk/src/cmp/csharp/TestEntity_csharp.ts +0 -4
- package/project/.sdk/src/cmp/csharp/utility_csharp.ts +0 -72
- package/project/.sdk/src/cmp/elixir/Config_elixir.ts +0 -78
- package/project/.sdk/src/cmp/elixir/EntityTypes_elixir.ts +0 -38
- package/project/.sdk/src/cmp/elixir/Main_elixir.ts +0 -40
- package/project/.sdk/src/cmp/elixir/Package_elixir.ts +0 -13
- package/project/.sdk/src/cmp/elixir/PrepareAuth_elixir.ts +0 -123
- package/project/.sdk/src/cmp/elixir/ReadmeExamplesTest_elixir.ts +0 -19
- package/project/.sdk/src/cmp/elixir/ReadmeRef_elixir.ts +2 -5
- package/project/.sdk/src/cmp/elixir/Schema_elixir.ts +0 -24
- package/project/.sdk/src/cmp/elixir/utility_elixir.ts +0 -34
- package/project/.sdk/src/cmp/go/Config_go.ts +0 -41
- package/project/.sdk/src/cmp/go/EntityTypes_go.ts +0 -71
- package/project/.sdk/src/cmp/go/Entity_go.ts +0 -5
- package/project/.sdk/src/cmp/go/Main_go.ts +0 -28
- package/project/.sdk/src/cmp/go/Package_go.ts +0 -7
- package/project/.sdk/src/cmp/go/PrepareAuth_go.ts +0 -64
- package/project/.sdk/src/cmp/go/ReadmeEntity_go.ts +0 -5
- package/project/.sdk/src/cmp/go/ReadmeExamplesTest_go.ts +0 -30
- package/project/.sdk/src/cmp/go/ReadmeHowto_go.ts +0 -3
- package/project/.sdk/src/cmp/go/ReadmeIntro_go.ts +0 -7
- package/project/.sdk/src/cmp/go/ReadmeModel_go.ts +0 -11
- package/project/.sdk/src/cmp/go/ReadmeQuick_go.ts +0 -21
- package/project/.sdk/src/cmp/go/ReadmeRef_go.ts +2 -14
- package/project/.sdk/src/cmp/go/ReadmeTopQuick_go.ts +0 -9
- package/project/.sdk/src/cmp/go/Schema_go.ts +0 -21
- package/project/.sdk/src/cmp/go/TestDirect_go.ts +0 -23
- package/project/.sdk/src/cmp/go/TestEntity_go.ts +0 -8
- package/project/.sdk/src/cmp/go/fragment/Entity.fragment.go +0 -21
- package/project/.sdk/src/cmp/go/fragment/Main.fragment.go +0 -12
- package/project/.sdk/src/cmp/go/utility_go.ts +0 -70
- package/project/.sdk/src/cmp/go-cli/Main_go-cli.ts +0 -49
- package/project/.sdk/src/cmp/go-cli/fragment/words.fragment.go +0 -12
- package/project/.sdk/src/cmp/go-mcp/Main_go-mcp.ts +0 -36
- package/project/.sdk/src/cmp/go-mcp/fragment/main.fragment.go +0 -20
- package/project/.sdk/src/cmp/go-mcp/fragment/tools.fragment.go +0 -3
- package/project/.sdk/src/cmp/java/Config_java.ts +0 -63
- package/project/.sdk/src/cmp/java/EntityTypes_java.ts +0 -50
- package/project/.sdk/src/cmp/java/Entity_java.ts +0 -6
- package/project/.sdk/src/cmp/java/Main_java.ts +0 -24
- package/project/.sdk/src/cmp/java/PrepareAuth_java.ts +0 -55
- package/project/.sdk/src/cmp/java/ReadmeEntity_java.ts +0 -1
- package/project/.sdk/src/cmp/java/ReadmeExamplesTest_java.ts +0 -20
- package/project/.sdk/src/cmp/java/ReadmeQuick_java.ts +0 -4
- package/project/.sdk/src/cmp/java/ReadmeRef_java.ts +2 -5
- package/project/.sdk/src/cmp/java/ReadmeTopQuick_java.ts +0 -7
- package/project/.sdk/src/cmp/java/Schema_java.ts +0 -19
- package/project/.sdk/src/cmp/java/TestDirect_java.ts +0 -7
- package/project/.sdk/src/cmp/java/TestEntity_java.ts +0 -4
- package/project/.sdk/src/cmp/java/Test_java.ts +0 -6
- package/project/.sdk/src/cmp/java/utility_java.ts +0 -33
- package/project/.sdk/src/cmp/js/Config_js.ts +0 -46
- package/project/.sdk/src/cmp/js/EntityTypes_js.ts +0 -33
- package/project/.sdk/src/cmp/js/Main_js.ts +0 -33
- package/project/.sdk/src/cmp/js/Package_js.ts +2 -7
- package/project/.sdk/src/cmp/js/PrepareAuth_js.ts +0 -57
- package/project/.sdk/src/cmp/js/ReadmeEntity_js.ts +0 -9
- package/project/.sdk/src/cmp/js/ReadmeHowto_js.ts +0 -2
- package/project/.sdk/src/cmp/js/ReadmeQuick_js.ts +0 -15
- package/project/.sdk/src/cmp/js/ReadmeRef_js.ts +2 -7
- package/project/.sdk/src/cmp/js/ReadmeTopQuick_js.ts +0 -7
- package/project/.sdk/src/cmp/js/Schema_js.ts +0 -21
- package/project/.sdk/src/cmp/js/TestDirect_js.ts +2 -16
- package/project/.sdk/src/cmp/js/TestEntity_js.ts +3 -13
- package/project/.sdk/src/cmp/js/TestLive_js.ts +10 -3
- package/project/.sdk/src/cmp/js/utility_js.ts +0 -58
- package/project/.sdk/src/cmp/kotlin/Config_kotlin.ts +0 -46
- package/project/.sdk/src/cmp/kotlin/EntityOperation_kotlin.ts +0 -2
- package/project/.sdk/src/cmp/kotlin/EntityTypes_kotlin.ts +0 -53
- package/project/.sdk/src/cmp/kotlin/Entity_kotlin.ts +0 -4
- package/project/.sdk/src/cmp/kotlin/Main_kotlin.ts +0 -46
- package/project/.sdk/src/cmp/kotlin/PrepareAuth_kotlin.ts +0 -113
- package/project/.sdk/src/cmp/kotlin/ReadmeEntity_kotlin.ts +0 -1
- package/project/.sdk/src/cmp/kotlin/ReadmeExamplesTest_kotlin.ts +0 -20
- package/project/.sdk/src/cmp/kotlin/ReadmeRef_kotlin.ts +2 -5
- package/project/.sdk/src/cmp/kotlin/ReadmeTopQuick_kotlin.ts +0 -5
- package/project/.sdk/src/cmp/kotlin/Schema_kotlin.ts +0 -19
- package/project/.sdk/src/cmp/kotlin/TestEntity_kotlin.ts +0 -4
- package/project/.sdk/src/cmp/kotlin/Test_kotlin.ts +0 -6
- package/project/.sdk/src/cmp/kotlin/utility_kotlin.ts +0 -33
- package/project/.sdk/src/cmp/lua/Config_lua.ts +0 -56
- package/project/.sdk/src/cmp/lua/EntityTypes_lua.ts +0 -30
- package/project/.sdk/src/cmp/lua/Entity_lua.ts +0 -7
- package/project/.sdk/src/cmp/lua/Main_lua.ts +0 -58
- package/project/.sdk/src/cmp/lua/Package_lua.ts +0 -20
- package/project/.sdk/src/cmp/lua/PrepareAuth_lua.ts +0 -61
- package/project/.sdk/src/cmp/lua/ReadmeEntity_lua.ts +0 -8
- package/project/.sdk/src/cmp/lua/ReadmeExamplesTest_lua.ts +0 -24
- package/project/.sdk/src/cmp/lua/ReadmeModel_lua.ts +0 -10
- package/project/.sdk/src/cmp/lua/ReadmeQuick_lua.ts +0 -21
- package/project/.sdk/src/cmp/lua/ReadmeRef_lua.ts +2 -12
- package/project/.sdk/src/cmp/lua/ReadmeTopQuick_lua.ts +0 -3
- package/project/.sdk/src/cmp/lua/Schema_lua.ts +0 -16
- package/project/.sdk/src/cmp/lua/TestDirect_lua.ts +0 -2
- package/project/.sdk/src/cmp/lua/utility_lua.ts +0 -30
- package/project/.sdk/src/cmp/ocaml/Config_ocaml.ts +0 -98
- package/project/.sdk/src/cmp/ocaml/EntityOperation_ocaml.ts +0 -6
- package/project/.sdk/src/cmp/ocaml/Main_ocaml.ts +0 -78
- package/project/.sdk/src/cmp/ocaml/Package_ocaml.ts +0 -13
- package/project/.sdk/src/cmp/ocaml/PrepareAuth_ocaml.ts +0 -145
- package/project/.sdk/src/cmp/ocaml/ReadmeExamplesTest_ocaml.ts +0 -17
- package/project/.sdk/src/cmp/ocaml/ReadmeRef_ocaml.ts +2 -5
- package/project/.sdk/src/cmp/ocaml/Schema_ocaml.ts +0 -23
- package/project/.sdk/src/cmp/ocaml/SdkError_ocaml.ts +0 -4
- package/project/.sdk/src/cmp/ocaml/TestEntity_ocaml.ts +0 -5
- package/project/.sdk/src/cmp/ocaml/utility_ocaml.ts +0 -27
- package/project/.sdk/src/cmp/perl/Config_perl.ts +0 -52
- package/project/.sdk/src/cmp/perl/Entity_perl.ts +0 -3
- package/project/.sdk/src/cmp/perl/Main_perl.ts +0 -33
- package/project/.sdk/src/cmp/perl/Package_perl.ts +0 -8
- package/project/.sdk/src/cmp/perl/PrepareAuth_perl.ts +0 -84
- package/project/.sdk/src/cmp/perl/ReadmeEntity_perl.ts +0 -3
- package/project/.sdk/src/cmp/perl/ReadmeExamplesTest_perl.ts +0 -27
- package/project/.sdk/src/cmp/perl/ReadmeRef_perl.ts +2 -5
- package/project/.sdk/src/cmp/perl/ReadmeTopQuick_perl.ts +0 -2
- package/project/.sdk/src/cmp/perl/Schema_perl.ts +0 -18
- package/project/.sdk/src/cmp/perl/TestDirect_perl.ts +0 -2
- package/project/.sdk/src/cmp/perl/utility_perl.ts +0 -26
- package/project/.sdk/src/cmp/php/Config_php.ts +0 -76
- package/project/.sdk/src/cmp/php/EntityTypes_php.ts +0 -51
- package/project/.sdk/src/cmp/php/MainEntity_php.ts +0 -6
- package/project/.sdk/src/cmp/php/Main_php.ts +0 -15
- package/project/.sdk/src/cmp/php/PrepareAuth_php.ts +0 -73
- package/project/.sdk/src/cmp/php/ReadmeEntity_php.ts +0 -4
- package/project/.sdk/src/cmp/php/ReadmeExamplesTest_php.ts +0 -33
- package/project/.sdk/src/cmp/php/ReadmeHowto_php.ts +0 -1
- package/project/.sdk/src/cmp/php/ReadmeQuick_php.ts +0 -19
- package/project/.sdk/src/cmp/php/ReadmeRef_php.ts +2 -7
- package/project/.sdk/src/cmp/php/Schema_php.ts +0 -15
- package/project/.sdk/src/cmp/php/TestEntity_php.ts +0 -9
- package/project/.sdk/src/cmp/php/utility_php.ts +0 -22
- package/project/.sdk/src/cmp/py/Config_py.ts +0 -53
- package/project/.sdk/src/cmp/py/EntityTypes_py.ts +0 -55
- package/project/.sdk/src/cmp/py/Entity_py.ts +0 -16
- package/project/.sdk/src/cmp/py/Main_py.ts +1 -61
- package/project/.sdk/src/cmp/py/Package_py.ts +0 -3
- package/project/.sdk/src/cmp/py/PrepareAuth_py.ts +0 -69
- package/project/.sdk/src/cmp/py/ReadmeEntity_py.ts +0 -13
- package/project/.sdk/src/cmp/py/ReadmeExamplesTest_py.ts +0 -31
- package/project/.sdk/src/cmp/py/ReadmeHowto_py.ts +0 -3
- package/project/.sdk/src/cmp/py/ReadmeQuick_py.ts +0 -28
- package/project/.sdk/src/cmp/py/ReadmeRef_py.ts +2 -16
- package/project/.sdk/src/cmp/py/ReadmeTopQuick_py.ts +0 -14
- package/project/.sdk/src/cmp/py/Schema_py.ts +0 -19
- package/project/.sdk/src/cmp/py/TestDirect_py.ts +0 -2
- package/project/.sdk/src/cmp/py/utility_py.ts +0 -22
- package/project/.sdk/src/cmp/py-data/Main_py-data.ts +9 -43
- package/project/.sdk/src/cmp/rb/Config_rb.ts +0 -56
- package/project/.sdk/src/cmp/rb/EntityTypes_rb.ts +0 -58
- package/project/.sdk/src/cmp/rb/Entity_rb.ts +0 -3
- package/project/.sdk/src/cmp/rb/Main_rb.ts +0 -10
- package/project/.sdk/src/cmp/rb/Package_rb.ts +0 -5
- package/project/.sdk/src/cmp/rb/PrepareAuth_rb.ts +0 -81
- package/project/.sdk/src/cmp/rb/ReadmeEntity_rb.ts +0 -7
- package/project/.sdk/src/cmp/rb/ReadmeExamplesTest_rb.ts +0 -32
- package/project/.sdk/src/cmp/rb/ReadmeHowto_rb.ts +0 -9
- package/project/.sdk/src/cmp/rb/ReadmeQuick_rb.ts +0 -23
- package/project/.sdk/src/cmp/rb/ReadmeRef_rb.ts +2 -10
- package/project/.sdk/src/cmp/rb/ReadmeTopQuick_rb.ts +0 -5
- package/project/.sdk/src/cmp/rb/ReadmeTopTest_rb.ts +0 -3
- package/project/.sdk/src/cmp/rb/Schema_rb.ts +0 -15
- package/project/.sdk/src/cmp/rb/TestDirect_rb.ts +0 -2
- package/project/.sdk/src/cmp/rb/utility_rb.ts +0 -22
- package/project/.sdk/src/cmp/rust/Config_rust.ts +0 -35
- package/project/.sdk/src/cmp/rust/EntityTypes_rust.ts +0 -34
- package/project/.sdk/src/cmp/rust/Entity_rust.ts +0 -9
- package/project/.sdk/src/cmp/rust/Main_rust.ts +0 -58
- package/project/.sdk/src/cmp/rust/Package_rust.ts +0 -30
- package/project/.sdk/src/cmp/rust/PrepareAuth_rust.ts +0 -84
- package/project/.sdk/src/cmp/rust/ReadmeExamplesTest_rust.ts +0 -16
- package/project/.sdk/src/cmp/rust/ReadmeRef_rust.ts +2 -5
- package/project/.sdk/src/cmp/rust/Schema_rust.ts +0 -18
- package/project/.sdk/src/cmp/rust/TestDirect_rust.ts +0 -7
- package/project/.sdk/src/cmp/rust/TestEntity_rust.ts +0 -9
- package/project/.sdk/src/cmp/rust/fragment/Entity.fragment.rs +0 -14
- package/project/.sdk/src/cmp/rust/fragment/EntityRemoveOp.fragment.rs +0 -4
- package/project/.sdk/src/cmp/rust/fragment/Main.fragment.rs +0 -20
- package/project/.sdk/src/cmp/rust/fragment/SdkError.fragment.rs +0 -6
- package/project/.sdk/src/cmp/rust/utility_rust.ts +0 -47
- package/project/.sdk/src/cmp/scala/Config_scala.ts +0 -31
- package/project/.sdk/src/cmp/scala/EntityTypes_scala.ts +0 -51
- package/project/.sdk/src/cmp/scala/Main_scala.ts +0 -78
- package/project/.sdk/src/cmp/scala/PrepareAuth_scala.ts +0 -102
- package/project/.sdk/src/cmp/scala/ReadmeEntity_scala.ts +0 -1
- package/project/.sdk/src/cmp/scala/ReadmeExamplesTest_scala.ts +0 -23
- package/project/.sdk/src/cmp/scala/ReadmeRef_scala.ts +2 -5
- package/project/.sdk/src/cmp/scala/ReadmeTopQuick_scala.ts +0 -5
- package/project/.sdk/src/cmp/scala/Schema_scala.ts +0 -19
- package/project/.sdk/src/cmp/scala/TestEntity_scala.ts +0 -8
- package/project/.sdk/src/cmp/scala/Test_scala.ts +0 -3
- package/project/.sdk/src/cmp/scala/utility_scala.ts +0 -31
- package/project/.sdk/src/cmp/swift/Config_swift.ts +0 -62
- package/project/.sdk/src/cmp/swift/EntityOperation_swift.ts +0 -3
- package/project/.sdk/src/cmp/swift/EntityTypes_swift.ts +0 -39
- package/project/.sdk/src/cmp/swift/Main_swift.ts +0 -42
- package/project/.sdk/src/cmp/swift/Package_swift.ts +0 -69
- package/project/.sdk/src/cmp/swift/PrepareAuth_swift.ts +0 -134
- package/project/.sdk/src/cmp/swift/ReadmeEntity_swift.ts +0 -2
- package/project/.sdk/src/cmp/swift/ReadmeExamplesTest_swift.ts +0 -22
- package/project/.sdk/src/cmp/swift/ReadmeRef_swift.ts +2 -5
- package/project/.sdk/src/cmp/swift/Schema_swift.ts +0 -18
- package/project/.sdk/src/cmp/swift/TestEntity_swift.ts +0 -4
- package/project/.sdk/src/cmp/swift/utility_swift.ts +0 -51
- package/project/.sdk/src/cmp/ts/Config_ts.ts +0 -46
- package/project/.sdk/src/cmp/ts/EntityTypes_ts.ts +0 -34
- package/project/.sdk/src/cmp/ts/Entity_ts.ts +0 -6
- package/project/.sdk/src/cmp/ts/Main_ts.ts +0 -28
- package/project/.sdk/src/cmp/ts/Package_ts.ts +2 -26
- package/project/.sdk/src/cmp/ts/PrepareAuth_ts.ts +0 -55
- package/project/.sdk/src/cmp/ts/ReadmeEntity_ts.ts +0 -9
- package/project/.sdk/src/cmp/ts/ReadmeExampleTest_ts.ts +0 -6
- package/project/.sdk/src/cmp/ts/ReadmeExamplesTest_ts.ts +0 -25
- package/project/.sdk/src/cmp/ts/ReadmeHowto_ts.ts +4 -9
- package/project/.sdk/src/cmp/ts/ReadmeIntro_ts.ts +0 -7
- package/project/.sdk/src/cmp/ts/ReadmeModel_ts.ts +0 -3
- package/project/.sdk/src/cmp/ts/ReadmeQuick_ts.ts +0 -43
- package/project/.sdk/src/cmp/ts/ReadmeRef_ts.ts +2 -20
- package/project/.sdk/src/cmp/ts/ReadmeTopQuick_ts.ts +0 -11
- package/project/.sdk/src/cmp/ts/ReadmeTopTest_ts.ts +6 -9
- package/project/.sdk/src/cmp/ts/Schema_ts.ts +0 -21
- package/project/.sdk/src/cmp/ts/TestDirect_ts.ts +2 -53
- package/project/.sdk/src/cmp/ts/TestEntity_ts.ts +3 -31
- package/project/.sdk/src/cmp/ts/TestLive_ts.ts +10 -4
- package/project/.sdk/src/cmp/ts/Test_ts.ts +0 -4
- package/project/.sdk/src/cmp/ts/fragment/Config.data.fragment.ts +0 -27
- package/project/.sdk/src/cmp/ts/fragment/Config.fragment.ts +0 -7
- package/project/.sdk/src/cmp/ts/fragment/Direct.test.fragment.ts +0 -7
- package/project/.sdk/src/cmp/ts/fragment/Entity.fragment.ts +0 -1
- package/project/.sdk/src/cmp/ts/fragment/Entity.test.fragment.ts +0 -4
- package/project/.sdk/src/cmp/ts/fragment/EntityBase.fragment.ts +0 -20
- package/project/.sdk/src/cmp/ts/fragment/EntityCreateOp.fragment.ts +0 -6
- package/project/.sdk/src/cmp/ts/fragment/EntityLoadOp.fragment.ts +0 -6
- package/project/.sdk/src/cmp/ts/fragment/EntityRemoveOp.fragment.ts +0 -15
- package/project/.sdk/src/cmp/ts/fragment/EntityUpdateOp.fragment.ts +0 -6
- package/project/.sdk/src/cmp/ts/fragment/Main.fragment.ts +0 -15
- package/project/.sdk/src/cmp/ts/fragment/MainStation.fragment.ts +0 -12
- package/project/.sdk/src/cmp/ts/fragment/SdkError.fragment.ts +0 -9
- package/project/.sdk/src/cmp/ts/utility_ts.ts +0 -59
- package/project/.sdk/src/cmp/zig/Config_zig.ts +0 -70
- package/project/.sdk/src/cmp/zig/Entity_zig.ts +0 -3
- package/project/.sdk/src/cmp/zig/Main_zig.ts +0 -83
- package/project/.sdk/src/cmp/zig/Package_zig.ts +0 -22
- package/project/.sdk/src/cmp/zig/PrepareAuth_zig.ts +0 -136
- package/project/.sdk/src/cmp/zig/ReadmeExamplesTest_zig.ts +0 -18
- package/project/.sdk/src/cmp/zig/ReadmeQuick_zig.ts +0 -3
- package/project/.sdk/src/cmp/zig/ReadmeRef_zig.ts +2 -5
- package/project/.sdk/src/cmp/zig/Schema_zig.ts +0 -23
- package/project/.sdk/src/cmp/zig/TestDirect_zig.ts +0 -11
- package/project/.sdk/src/cmp/zig/TestEntity_zig.ts +0 -8
- package/project/.sdk/src/cmp/zig/Test_zig.ts +0 -11
- package/project/.sdk/src/cmp/zig/utility_zig.ts +0 -47
- package/project/.sdk/tm/csharp/feature/FeatureOptions.cs +18 -5
- package/project/.sdk/tm/go/core/context.go +0 -9
- package/project/.sdk/tm/go/core/types.go +0 -3
- package/project/.sdk/tm/go/feature/audit_feature.go +0 -9
- package/project/.sdk/tm/go/feature/cache_feature.go +0 -8
- package/project/.sdk/tm/go/feature/clienttrack_feature.go +0 -7
- package/project/.sdk/tm/go/feature/cost_feature.go +0 -51
- package/project/.sdk/tm/go/feature/debug_feature.go +0 -6
- package/project/.sdk/tm/go/feature/feature_options.go +108 -21
- package/project/.sdk/tm/go/feature/idempotency_feature.go +0 -6
- package/project/.sdk/tm/go/feature/metrics_feature.go +0 -6
- package/project/.sdk/tm/go/feature/netsim_feature.go +0 -8
- package/project/.sdk/tm/go/feature/paging_feature.go +0 -9
- package/project/.sdk/tm/go/feature/proxy_feature.go +0 -7
- package/project/.sdk/tm/go/feature/ratelimit_feature.go +0 -6
- package/project/.sdk/tm/go/feature/rbac_feature.go +0 -10
- package/project/.sdk/tm/go/feature/retry_feature.go +0 -6
- package/project/.sdk/tm/go/feature/secrets_feature.go +0 -173
- package/project/.sdk/tm/go/feature/streaming_feature.go +0 -7
- package/project/.sdk/tm/go/feature/telemetry_feature.go +0 -8
- package/project/.sdk/tm/go/feature/test_feature.go +0 -23
- package/project/.sdk/tm/go/feature/validate_feature.go +0 -66
- package/project/.sdk/tm/go/test/custom_utility_test.go +0 -29
- package/project/.sdk/tm/go/test/feature/secrets/secrets_feature_test.go +0 -100
- package/project/.sdk/tm/go/test/feature_corpus_test.go +1 -60
- package/project/.sdk/tm/go/test/feature_harness_test.go +0 -10
- package/project/.sdk/tm/go/test/feature_test.go +107 -9
- package/project/.sdk/tm/go/test/omniresolver_test.go +0 -74
- package/project/.sdk/tm/go/test/omnismoke_test.go +0 -4
- package/project/.sdk/tm/go/test/pipeline_test.go +0 -10
- package/project/.sdk/tm/go/test/primary_utility_test.go +0 -32
- package/project/.sdk/tm/go/test/struct_utility_test.go +0 -38
- package/project/.sdk/tm/go/test/testsupport_test.go +0 -25
- package/project/.sdk/tm/go/utility/feature_add.go +0 -6
- package/project/.sdk/tm/go/utility/fetcher.go +0 -6
- package/project/.sdk/tm/go/utility/graphql.go +1 -31
- package/project/.sdk/tm/go/utility/make_options.go +38 -49
- package/project/.sdk/tm/go/utility/make_point.go +0 -11
- package/project/.sdk/tm/go/utility/make_spec.go +0 -15
- package/project/.sdk/tm/go/utility/register.go +0 -28
- package/project/.sdk/tm/go/utility/transform_request.go +0 -20
- package/project/.sdk/tm/go/utility/transform_response.go +0 -8
- package/project/.sdk/tm/js/src/feature/test/TestFeature.js +12 -4
- package/project/.sdk/tm/rust/core/context.rs +0 -5
- package/project/.sdk/tm/rust/core/control.rs +0 -1
- package/project/.sdk/tm/rust/core/helpers.rs +0 -15
- package/project/.sdk/tm/rust/core/operation.rs +0 -1
- package/project/.sdk/tm/rust/core/point.rs +0 -3
- package/project/.sdk/tm/rust/core/response.rs +0 -2
- package/project/.sdk/tm/rust/core/result.rs +0 -1
- package/project/.sdk/tm/rust/core/spec.rs +0 -1
- package/project/.sdk/tm/rust/core/types.rs +0 -20
- package/project/.sdk/tm/rust/core/utility_type.rs +0 -5
- package/project/.sdk/tm/rust/feature/audit.rs +0 -9
- package/project/.sdk/tm/rust/feature/base.rs +0 -3
- package/project/.sdk/tm/rust/feature/cache.rs +0 -9
- package/project/.sdk/tm/rust/feature/clienttrack.rs +0 -7
- package/project/.sdk/tm/rust/feature/cost.rs +0 -48
- package/project/.sdk/tm/rust/feature/debug.rs +0 -7
- package/project/.sdk/tm/rust/feature/idempotency.rs +0 -7
- package/project/.sdk/tm/rust/feature/log.rs +0 -3
- package/project/.sdk/tm/rust/feature/metrics.rs +0 -7
- package/project/.sdk/tm/rust/feature/netsim.rs +0 -9
- package/project/.sdk/tm/rust/feature/paging.rs +0 -10
- package/project/.sdk/tm/rust/feature/proxy.rs +0 -8
- package/project/.sdk/tm/rust/feature/ratelimit.rs +0 -6
- package/project/.sdk/tm/rust/feature/rbac.rs +0 -10
- package/project/.sdk/tm/rust/feature/retry.rs +0 -6
- package/project/.sdk/tm/rust/feature/secrets.rs +1 -187
- package/project/.sdk/tm/rust/feature/streaming.rs +0 -7
- package/project/.sdk/tm/rust/feature/support.rs +0 -6
- package/project/.sdk/tm/rust/feature/telemetry.rs +0 -9
- package/project/.sdk/tm/rust/feature/test.rs +0 -19
- package/project/.sdk/tm/rust/feature/timeout.rs +0 -7
- package/project/.sdk/tm/rust/feature/validate.rs +0 -81
- package/project/.sdk/tm/rust/tests/common/mod.rs +0 -35
- package/project/.sdk/tm/rust/tests/custom_utility_test.rs +0 -2
- package/project/.sdk/tm/rust/tests/feature/secrets/main.rs +0 -95
- package/project/.sdk/tm/rust/tests/feature_test.rs +0 -16
- package/project/.sdk/tm/rust/tests/netsim_test.rs +0 -6
- package/project/.sdk/tm/rust/tests/omni_resolver/mod.rs +0 -135
- package/project/.sdk/tm/rust/tests/omni_smoke_test.rs +0 -15
- package/project/.sdk/tm/rust/tests/pipeline_test.rs +0 -6
- package/project/.sdk/tm/rust/tests/primary_utility_test.rs +0 -22
- package/project/.sdk/tm/rust/tests/struct_utility_test.rs +0 -25
- package/project/.sdk/tm/rust/utility/fetcher.rs +0 -5
- package/project/.sdk/tm/rust/utility/graphql.rs +1 -30
- package/project/.sdk/tm/rust/utility/make_error.rs +0 -2
- package/project/.sdk/tm/rust/utility/make_options.rs +0 -46
- package/project/.sdk/tm/rust/utility/make_point.rs +0 -12
- package/project/.sdk/tm/rust/utility/make_spec.rs +0 -4
- package/project/.sdk/tm/rust/utility/voxgigstruct/consts.rs +14 -20
- package/project/.sdk/tm/rust/utility/voxgigstruct/major.rs +0 -13
- package/project/.sdk/tm/rust/utility/voxgigstruct/mini.rs +0 -14
- package/project/.sdk/tm/rust/utility/voxgigstruct/mod.rs +0 -2
- package/project/.sdk/tm/rust/utility/voxgigstruct/ordered_map.rs +0 -18
- package/project/.sdk/tm/rust/utility/voxgigstruct/re.rs +0 -11
- package/project/.sdk/tm/rust/utility/voxgigstruct/value.rs +0 -3
- package/project/.sdk/tm/ts/src/Context.ts +0 -5
- package/project/.sdk/tm/ts/src/feature/audit/AuditFeature.ts +0 -7
- package/project/.sdk/tm/ts/src/feature/cache/CacheFeature.ts +0 -8
- package/project/.sdk/tm/ts/src/feature/clienttrack/ClienttrackFeature.ts +0 -7
- package/project/.sdk/tm/ts/src/feature/cost/CostFeature.ts +0 -52
- package/project/.sdk/tm/ts/src/feature/debug/DebugFeature.ts +0 -6
- package/project/.sdk/tm/ts/src/feature/metrics/MetricsFeature.ts +0 -6
- package/project/.sdk/tm/ts/src/feature/netsim/NetsimFeature.ts +0 -8
- package/project/.sdk/tm/ts/src/feature/paging/PagingFeature.ts +0 -13
- package/project/.sdk/tm/ts/src/feature/proxy/ProxyFeature.ts +0 -8
- package/project/.sdk/tm/ts/src/feature/ratelimit/RatelimitFeature.ts +0 -6
- package/project/.sdk/tm/ts/src/feature/rbac/RbacFeature.ts +0 -9
- package/project/.sdk/tm/ts/src/feature/retry/RetryFeature.ts +0 -6
- package/project/.sdk/tm/ts/src/feature/secrets/SecretsFeature.ts +0 -136
- package/project/.sdk/tm/ts/src/feature/streaming/StreamingFeature.ts +0 -7
- package/project/.sdk/tm/ts/src/feature/telemetry/TelemetryFeature.ts +0 -7
- package/project/.sdk/tm/ts/src/feature/test/TestFeature.ts +13 -88
- package/project/.sdk/tm/ts/src/feature/validate/ValidateFeature.ts +0 -87
- package/project/.sdk/tm/ts/src/utility/CleanUtility.ts +0 -12
- package/project/.sdk/tm/ts/src/utility/FeatureAddUtility.ts +0 -1
- package/project/.sdk/tm/ts/src/utility/GraphqlUtility.ts +2 -30
- package/project/.sdk/tm/ts/src/utility/MakeErrorUtility.ts +0 -4
- package/project/.sdk/tm/ts/src/utility/MakeOptionsUtility.ts +0 -46
- package/project/.sdk/tm/ts/src/utility/MakePointUtility.ts +0 -34
- package/project/.sdk/tm/ts/src/utility/MakeRequestUtility.ts +0 -1
- package/project/.sdk/tm/ts/src/utility/MakeSpecUtility.ts +0 -5
- package/project/.sdk/tm/ts/src/utility/MakeUrlUtility.ts +0 -1
- package/project/.sdk/tm/ts/src/utility/ParamUtility.ts +0 -8
- package/project/.sdk/tm/ts/src/utility/PrepareBodyUtility.ts +0 -3
- package/project/.sdk/tm/ts/src/utility/PrepareParamsUtility.ts +0 -6
- package/project/.sdk/tm/ts/src/utility/ResultBasicUtility.ts +0 -1
- package/project/.sdk/tm/ts/src/utility/TransformRequestUtility.ts +0 -20
- package/project/.sdk/tm/ts/src/utility/TransformResponseUtility.ts +0 -4
- package/project/.sdk/tm/ts/test/exists.test.ts +0 -10
- package/project/.sdk/tm/ts/test/feature/Corpus.test.ts +0 -56
- package/project/.sdk/tm/ts/test/feature/harness.ts +0 -9
- package/project/.sdk/tm/ts/test/feature/secrets/Secrets.test.ts +0 -106
- package/project/.sdk/tm/ts/test/live-contract.ts +0 -2
- package/project/.sdk/tm/ts/test/omni.ts +0 -32
- package/project/.sdk/tm/ts/test/pipeline.test.ts +45 -28
- package/project/.sdk/tm/ts/test/utility/Corpus.test.ts +0 -13
- package/project/.sdk/tm/ts/test/utility/PrimaryUtility.test.ts +56 -29
- package/project/.sdk/tm/ts/test/utility/StructUtility.test.ts +0 -7
- package/project/.sdk/tm/ts/test/utility.ts +0 -55
- package/project/sdkgen-package.json +1 -1
- package/src/action/action.ts +0 -65
- package/src/action/check.ts +0 -88
- package/src/action/dispatch.ts +0 -27
- package/src/action/doctor.ts +69 -329
- package/src/action/edition.ts +1 -87
- package/src/action/feature.ts +1 -49
- package/src/action/kind.ts +0 -149
- package/src/action/package.ts +0 -228
- package/src/action/resolve.ts +0 -148
- package/src/action/target.ts +0 -177
- package/src/cmp/AgentGuide.ts +0 -7
- package/src/cmp/AgentGuideContent.ts +0 -24
- package/src/cmp/AgentGuideTop.ts +0 -7
- package/src/cmp/Changelog.ts +0 -14
- package/src/cmp/Deploy.ts +1 -31
- package/src/cmp/Entity.ts +0 -4
- package/src/cmp/ExternalTarget.ts +0 -36
- package/src/cmp/Feature.ts +0 -14
- package/src/cmp/FeatureDocs.ts +0 -37
- package/src/cmp/PublishWorkflow.ts +0 -60
- package/src/cmp/ReadmeErrors.ts +0 -17
- package/src/cmp/ReadmeExplanation.ts +2 -11
- package/src/cmp/ReadmeFeatures.ts +0 -10
- package/src/cmp/ReadmeRefFeatures.ts +0 -19
- package/src/cmp/ReadmeStation.ts +0 -19
- package/src/cmp/ReadmeTop.ts +0 -80
- package/src/cmp/ReadmeUnions.ts +0 -15
- package/src/cmp/Registered.ts +0 -30
- package/src/cmp/Security.ts +0 -2
- package/src/cmp/Test.ts +3 -1
- package/src/cmp/TestControl.ts +0 -25
- package/src/helpers/applicability.ts +0 -60
- package/src/helpers/buildIdNames.ts +0 -12
- package/src/helpers/canonSpec.ts +0 -114
- package/src/helpers/canonType.ts +0 -87
- package/src/helpers/collectDeps.ts +0 -27
- package/src/helpers/definition.ts +0 -29
- package/src/helpers/dryrun.ts +0 -8
- package/src/helpers/featureSource.ts +0 -152
- package/src/helpers/getMatchEntries.ts +0 -4
- package/src/helpers/junk.ts +13 -89
- package/src/helpers/manifest.ts +0 -169
- package/src/helpers/modelNames.ts +0 -81
- package/src/helpers/modelcheck.ts +0 -106
- package/src/helpers/naming.ts +0 -303
- package/src/helpers/opExample.ts +0 -56
- package/src/helpers/opShape.ts +0 -200
- package/src/helpers/optspec.ts +0 -77
- package/src/helpers/packageMeta.ts +1 -200
- package/src/helpers/pointPath.ts +0 -55
- package/src/helpers/resolved.ts +50 -0
- package/src/helpers/semver.ts +0 -61
- package/src/helpers/serverVars.ts +0 -44
- package/src/helpers/shipped.ts +0 -14
- package/src/helpers/station.ts +0 -32
- package/src/helpers/stdrep.ts +0 -52
- package/src/helpers/testPolicy.ts +0 -4
- package/src/sdkgen.ts +15 -263
- package/src/testkit.ts +6 -312
- package/src/types.ts +1 -30
- package/src/utility.ts +0 -243
|
@@ -28,42 +28,11 @@ import { Package } from './Package_zig'
|
|
|
28
28
|
import { PrepareAuth } from './PrepareAuth_zig'
|
|
29
29
|
|
|
30
30
|
|
|
31
|
-
// Which features ship a zig test suite under test/feature/<name>/, and the
|
|
32
|
-
// file build.zig must NAME to run it. zig has no test auto-discovery: a
|
|
33
|
-
// suite the build file does not list exists and never runs. A map rather
|
|
34
|
-
// than a convention because the file has to EXIST - `zig build` fails the
|
|
35
|
-
// whole build on a test path it cannot find - so this may only name suites
|
|
36
|
-
// the templates actually carry.
|
|
37
|
-
//
|
|
38
|
-
// The suite sits under test/feature/<name>/ so that it belongs to the
|
|
39
|
-
// feature (helpers/featureSource), exactly as go's tm/go/test/feature/
|
|
40
|
-
// secrets/ and rust's tests/feature/secrets/ do; and it is wired only for
|
|
41
|
-
// a feature that is ACTIVE for this target, which is when its build modules
|
|
42
|
-
// (below) exist for the suite to reach.
|
|
43
|
-
//
|
|
44
|
-
// Each suite gets its OWN build step (`zig build test-<name>`) as well as a
|
|
45
|
-
// place in the all-tests `test` step: the corpus suites need a project's
|
|
46
|
-
// compiled `.sdk/test/test.json` beside the SDK, so a checker that has the
|
|
47
|
-
// feature but no corpus (sdkgen's own generatedcompile lane) can still run
|
|
48
|
-
// the feature suite alone and read its count.
|
|
49
31
|
const FEATURE_TESTS: Record<string, string> = {
|
|
50
32
|
secrets: 'test/feature/secrets/secrets_test.zig',
|
|
51
33
|
}
|
|
52
34
|
|
|
53
35
|
|
|
54
|
-
// The GATED features' build modules: what a feature's `@import("<name>")`
|
|
55
|
-
// lines resolve to, declared only when the feature is active. Each entry is
|
|
56
|
-
// the block of build.zig statements that wires one feature; `secrets` is
|
|
57
|
-
// the first and, today, the only one.
|
|
58
|
-
//
|
|
59
|
-
// Upstream's own three-module boundary (sekreto's zig Makefile builds
|
|
60
|
-
// exactly these): `plugin` (voxgig/plugin, rooted at its consumer root),
|
|
61
|
-
// `sekreto` (the core, which imports `plugin` by name and nothing under
|
|
62
|
-
// plugins/), and `sekretoplugins`, rooted at the GENERATED
|
|
63
|
-
// feature/secrets/plugins.zig (Config_zig FeaturePlugins) so that only the
|
|
64
|
-
// selected kinds are compiled. The sdk module gets `sekreto` and
|
|
65
|
-
// `sekretoplugins`; the feature file reaches `plugin` through
|
|
66
|
-
// `sekreto.plugin`, so it needs no import of its own.
|
|
67
36
|
const FEATURE_MODULES: Record<string, string> = {
|
|
68
37
|
secrets: `// The secrets feature's vendored libraries (@voxgig/sekreto and
|
|
69
38
|
// voxgig/plugin at the shared vendor tag), as the three named modules
|
|
@@ -107,23 +76,6 @@ const Main = cmp(async function Main(props: any) {
|
|
|
107
76
|
// helpers/applicability.
|
|
108
77
|
const feature = targetFeatures(model, target)
|
|
109
78
|
|
|
110
|
-
// THE PLUGIN TRIM FOR AN INACTIVE FEATURE (the scala shape, for the same
|
|
111
|
-
// reason). pluginExcludes(model) walks only the model's ACTIVE features,
|
|
112
|
-
// which is right for a target whose feature trim is on: an inactive
|
|
113
|
-
// feature's whole tree is already gone at `target add`. zig's feature trim
|
|
114
|
-
// is OFF (model/target/zig.aon `feature: { trim: false }` - root.zig's
|
|
115
|
-
// built-in exports are static), so an inactive feature's tree is all still
|
|
116
|
-
// here, and its provider plugins are the part that costs the most. EVERY
|
|
117
|
-
// declared group of an inactive feature goes, not just the groups marked
|
|
118
|
-
// inactive: a feature that is off has no active plugins whatever its
|
|
119
|
-
// `plugin` map says, because targetFeatures drops the feature before
|
|
120
|
-
// Config ever reads a group. What stays is the two vendored cores and the
|
|
121
|
-
// ungrouped httpjson/sigv4 helpers - dead files zig never analyses, since
|
|
122
|
-
// build.zig declares no module rooted in them (FEATURE_MODULES).
|
|
123
|
-
//
|
|
124
|
-
// Rooting matches pluginExcludes': zig's declared paths are
|
|
125
|
-
// target-root-relative, which is this Copy's root, and the other targets'
|
|
126
|
-
// paths in the same list cannot match anything in a zig tree.
|
|
127
79
|
const esc = (s: string) => s.replace(/[.*+?^${}()|[\]\\]/g, '\\$&')
|
|
128
80
|
const allfeature = getModelPath(model, `main.${KIT}.feature`,
|
|
129
81
|
{ required: false, only_active: false }) || {}
|
|
@@ -141,23 +93,10 @@ const Main = cmp(async function Main(props: any) {
|
|
|
141
93
|
}
|
|
142
94
|
}
|
|
143
95
|
|
|
144
|
-
// build.zig.zon — the package manifest, stamped with the model package name.
|
|
145
96
|
Package({ target })
|
|
146
97
|
|
|
147
98
|
Gitignore({})
|
|
148
99
|
|
|
149
|
-
// Copy tm/zig files with replacements. The tm src/ subtree only stages the
|
|
150
|
-
// per-feature custom-source dirs (target add), so it is excluded here
|
|
151
|
-
// exactly like the go/rust targets. build.zig.zon is generated by Package
|
|
152
|
-
// (above), so it is excluded from the verbatim copy. The SDK source lives at
|
|
153
|
-
// the tree root (core/, feature/, utility/, entity/, test/) — Zig's
|
|
154
|
-
// idiomatic src/ is not used, to keep the exclude rule identical to the
|
|
155
|
-
// reference targets.
|
|
156
|
-
//
|
|
157
|
-
// build.zig and root.zig are NOT in tm/zig any more: both carry
|
|
158
|
-
// model-driven slots (a gated feature's build modules, test step and root
|
|
159
|
-
// export) and are emitted below from src/cmp/zig/fragment/, the way
|
|
160
|
-
// core/sdk.zig always was.
|
|
161
100
|
Copy({
|
|
162
101
|
from: 'tm/' + target.name,
|
|
163
102
|
// pluginExcludes: the generate-time plugin trim for an ACTIVE feature's
|
|
@@ -186,11 +125,6 @@ const Main = cmp(async function Main(props: any) {
|
|
|
186
125
|
|
|
187
126
|
const fragdir = Path.normalize(__dirname + '/../../../src/cmp/zig/fragment/')
|
|
188
127
|
|
|
189
|
-
// build.zig: the template with its two slots filled - a gated feature's
|
|
190
|
-
// modules after the sdk module, and its test suite as a step of its own
|
|
191
|
-
// that the all-tests step also depends on. Both empty for a model that
|
|
192
|
-
// activates no gated feature, which leaves the file byte-identical to the
|
|
193
|
-
// fragment minus the marker lines.
|
|
194
128
|
File({ name: 'build.zig' }, () => {
|
|
195
129
|
Fragment({
|
|
196
130
|
from: fragdir + 'Build.fragment.zig',
|
|
@@ -233,8 +167,6 @@ const Main = cmp(async function Main(props: any) {
|
|
|
233
167
|
})
|
|
234
168
|
})
|
|
235
169
|
|
|
236
|
-
// root.zig: the module root, with the gated features' type exports
|
|
237
|
-
// appended to the static built-in ones.
|
|
238
170
|
File({ name: 'root.zig' }, () => {
|
|
239
171
|
Fragment({
|
|
240
172
|
from: fragdir + 'Root.fragment.zig',
|
|
@@ -243,7 +175,6 @@ const Main = cmp(async function Main(props: any) {
|
|
|
243
175
|
|
|
244
176
|
'#FeatureExports': ({ indent }: any) => {
|
|
245
177
|
for (const fname of extraFeatures) {
|
|
246
|
-
// MUST match Config_zig's make_feature spelling of the type.
|
|
247
178
|
const tname = fname.charAt(0).toUpperCase() + fname.slice(1)
|
|
248
179
|
Content({ indent },
|
|
249
180
|
`pub const ${tname}Feature = @import("feature/${fname}.zig").${tname}Feature;\n`)
|
|
@@ -261,19 +192,6 @@ const Main = cmp(async function Main(props: any) {
|
|
|
261
192
|
// branded error type (error.zig) is a plain template (copied above).
|
|
262
193
|
Folder({ name: 'core' }, () => {
|
|
263
194
|
|
|
264
|
-
// core/prepare_auth.zig is GENERATED, not copied from tm/zig: where the
|
|
265
|
-
// credential goes (header / query / cookie, and under what name) is a
|
|
266
|
-
// fact about the API, and the template it was extracted from -
|
|
267
|
-
// tm/zig/core/utility.zig - could only hold one answer. See
|
|
268
|
-
// PrepareAuth_zig.
|
|
269
|
-
//
|
|
270
|
-
// INSIDE THIS `core` FOLDER, and the component opens none of its own -
|
|
271
|
-
// the Config_zig arrangement, for the same reason. The extracted body
|
|
272
|
-
// lived in core/utility.zig, which `Copy({from: 'tm/zig'})` lands at
|
|
273
|
-
// `<root>/core/`, and core/utility.zig re-exports the function with a
|
|
274
|
-
// SIBLING-relative `@import("prepare_auth.zig")`. A second Folder here
|
|
275
|
-
// would write core/core/prepare_auth.zig, which that import cannot
|
|
276
|
-
// reach and `zig build` never analyses.
|
|
277
195
|
PrepareAuth({ target })
|
|
278
196
|
|
|
279
197
|
File({ name: 'sdk.' + target.ext }, () => {
|
|
@@ -286,7 +204,6 @@ const Main = cmp(async function Main(props: any) {
|
|
|
286
204
|
}
|
|
287
205
|
},
|
|
288
206
|
|
|
289
|
-
// Entity accessors - injected at SLOT
|
|
290
207
|
() => {
|
|
291
208
|
each(entity, (ent: ModelEntity) => {
|
|
292
209
|
MainEntity({ target, entity: ent })
|
|
@@ -15,28 +15,6 @@ import type {
|
|
|
15
15
|
import { zigModuleName, zigPackageFingerprint } from './utility_zig'
|
|
16
16
|
|
|
17
17
|
|
|
18
|
-
// build.zig.zon — the Zig package manifest. Zig has no central package
|
|
19
|
-
// registry, so there are no external registry dependencies to declare: the
|
|
20
|
-
// voxgig struct port is vendored in-tree (utility/voxgigstruct) and wired as a
|
|
21
|
-
// local module by build.zig. This generator only stamps the manifest with the
|
|
22
|
-
// model-derived package name (the go/rust Package generators emit go.mod /
|
|
23
|
-
// Cargo.toml the same way).
|
|
24
|
-
//
|
|
25
|
-
// The `.paths` allow-list mirrors the (registry-less) template: it only
|
|
26
|
-
// matters when packaging for a registry, which zig does not do, so it is kept
|
|
27
|
-
// stable.
|
|
28
|
-
//
|
|
29
|
-
// TOOLCHAIN: zig 0.16. `.name` is an ENUM LITERAL (`.solar_sdk`), and a
|
|
30
|
-
// `.fingerprint` is required beside it. That pairing is what a modern zig
|
|
31
|
-
// wants: 0.14 rejects the older plain-string form outright —
|
|
32
|
-
// `build.zig.zon:2:13: error: expected enum literal` — and 0.13 rejects the
|
|
33
|
-
// enum-literal form, so the two cannot both be supported from one generator.
|
|
34
|
-
// A move BACK to 0.13 would mean reverting both fields here and the CI pin in
|
|
35
|
-
// create-sdkgen project/standard/.github/workflows/ci.yml together.
|
|
36
|
-
//
|
|
37
|
-
// The fingerprint is derived from the package name, not random, so
|
|
38
|
-
// regenerating the same model does not rewrite this file — see
|
|
39
|
-
// zigPackageFingerprint for why, and for what zig checks.
|
|
40
18
|
const Package = cmp(async function Package(props: any) {
|
|
41
19
|
const ctx$ = props.ctx$
|
|
42
20
|
const target = props.target
|
|
@@ -16,48 +16,6 @@ import {
|
|
|
16
16
|
} from '@voxgig/apidef'
|
|
17
17
|
|
|
18
18
|
|
|
19
|
-
// WHERE THE CREDENTIAL GOES IS A FACT ABOUT THE API, so it is generated
|
|
20
|
-
// rather than templated. The zig peer of PrepareAuth_ts; read that one
|
|
21
|
-
// first, it carries the full account of the defect.
|
|
22
|
-
//
|
|
23
|
-
// zig differs from the other twelve ports in ONE way: it had no
|
|
24
|
-
// prepare_auth template to delete. The logic was EMBEDDED in
|
|
25
|
-
// `tm/zig/core/utility.zig` — three file-scope constants and a
|
|
26
|
-
// `pub fn prepare_auth_util` in the middle of a 1500-line module that also
|
|
27
|
-
// holds make_spec, make_url, the result builders and the Utility bundle
|
|
28
|
-
// itself. So this is an EXTRACTION, not a replacement:
|
|
29
|
-
//
|
|
30
|
-
// core/prepare_auth.zig GENERATED here, one function.
|
|
31
|
-
// core/utility.zig keeps
|
|
32
|
-
// pub const prepare_auth_util =
|
|
33
|
-
// @import("prepare_auth.zig").prepare_auth_util;
|
|
34
|
-
//
|
|
35
|
-
// THE OWN-FILE SHAPE, not the whole-module-as-a-component fallback. A zig
|
|
36
|
-
// file IS a struct, so a function in its own file is a first-class
|
|
37
|
-
// compilation unit reached by a relative `@import` — no build.zig entry, no
|
|
38
|
-
// module declaration, nothing to register. Generating the whole of
|
|
39
|
-
// utility.zig instead would turn 1500 lines of hand-maintained template
|
|
40
|
-
// into a TypeScript string for the sake of 40, which is the opposite of the
|
|
41
|
-
// trade the other targets made.
|
|
42
|
-
//
|
|
43
|
-
// THE BINDING DOES NOT MOVE. Three call sites name this symbol and all three
|
|
44
|
-
// keep resolving to it through the re-export:
|
|
45
|
-
// - `Utility.prepare_auth` (core/utility.zig) — the method the pipeline
|
|
46
|
-
// dispatches through, called by core/sdk.zig (Main.fragment.zig line
|
|
47
|
-
// `self.sdkUtility.prepare_auth(ctx)`) and asserted on by
|
|
48
|
-
// test/pipeline_test.zig.
|
|
49
|
-
// - `make_spec_util` (core/utility.zig) — `try prepare_auth_util(ctx)`,
|
|
50
|
-
// unqualified, so the file-scope const is what it finds.
|
|
51
|
-
// - `sdk.utilmod.prepare_auth_util` — root.zig exports core/utility.zig as
|
|
52
|
-
// `utilmod`, and test/primary_utility_test.zig drives the shared
|
|
53
|
-
// corpus's `prepareAuth` section through it.
|
|
54
|
-
//
|
|
55
|
-
// A template cannot fix the defect, because the three placements need three
|
|
56
|
-
// different bodies and a template has to pick one. A component emits the
|
|
57
|
-
// branch this API actually uses and nothing else — and zig makes that
|
|
58
|
-
// stricter than most: an unused LOCAL is a compile error, so a file that
|
|
59
|
-
// bound `auth_prefix` and then dropped it for a query placement would not
|
|
60
|
-
// build at all.
|
|
61
19
|
const PrepareAuth = cmp(async function PrepareAuth(props: any) {
|
|
62
20
|
const { target } = props
|
|
63
21
|
const { model } = props.ctx$
|
|
@@ -65,35 +23,9 @@ const PrepareAuth = cmp(async function PrepareAuth(props: any) {
|
|
|
65
23
|
const active = isAuthActive_zig(model)
|
|
66
24
|
const where = resolveAuthIn(model)
|
|
67
25
|
const name = resolveAuthName(model)
|
|
68
|
-
// Read so the resolution is visible at generation time even though the
|
|
69
|
-
// emitted code takes the prefix from `options.auth.prefix` at RUNTIME -
|
|
70
|
-
// it has to, because the secrets feature rewrites it there.
|
|
71
26
|
const prefix = resolveAuthPrefix(model)
|
|
72
27
|
const basic = isHttpBasicAuth(model)
|
|
73
28
|
|
|
74
|
-
// FOLDER NESTING — NO Folder IS OPENED HERE, and that is worked out from
|
|
75
|
-
// two facts, not assumed.
|
|
76
|
-
//
|
|
77
|
-
// 1. The template this extracts from is `tm/zig/core/utility.zig`, and
|
|
78
|
-
// Main_zig's `Copy({from: 'tm/zig'})` runs at the TARGET ROOT with no
|
|
79
|
-
// folder open (zig's layout is flat there: core/, feature/, utility/,
|
|
80
|
-
// entity/, test/ — Main_zig's own comment says the idiomatic src/ is
|
|
81
|
-
// deliberately not used). So that template lands at `<root>/core/`,
|
|
82
|
-
// and the extracted function must land in the same directory for
|
|
83
|
-
// `@import("prepare_auth.zig")` — a SIBLING-relative path — to resolve.
|
|
84
|
-
//
|
|
85
|
-
// 2. Main_zig ALREADY opens `Folder({name: 'core'})` for core/sdk.zig and
|
|
86
|
-
// for Config, and that is where this component is called. Config_zig
|
|
87
|
-
// writes `File({name: 'config.zig'})` with no Folder of its own for
|
|
88
|
-
// exactly this reason.
|
|
89
|
-
//
|
|
90
|
-
// Opening a second `core` here would write `core/core/prepare_auth.zig`:
|
|
91
|
-
// a file no `@import` names, invisible to `zig build` (which analyses only
|
|
92
|
-
// what a module root reaches), while core/utility.zig's re-export fails to
|
|
93
|
-
// resolve — or, worse in the ts port's version of this trap, silently
|
|
94
|
-
// keeps using a stale sibling. Verified by generating the target and
|
|
95
|
-
// running `zig build test` against the result, not by eye: a file zig
|
|
96
|
-
// never reaches produces no error at all.
|
|
97
29
|
File({ name: 'prepare_auth.' + target.ext }, () => {
|
|
98
30
|
Content(render({ active, where, name, prefix, basic }))
|
|
99
31
|
})
|
|
@@ -124,9 +56,6 @@ const HEAD = `// prepare_auth — GENERATED from the model (src/cmp/zig/PrepareA
|
|
|
124
56
|
|
|
125
57
|
|
|
126
58
|
function render(spec: AuthSpec): string {
|
|
127
|
-
// NO GENERATION-TIME GATE ON WHETHER TO PLACE A CREDENTIAL AT ALL, beyond
|
|
128
|
-
// the project's own explicit switch — see isAuthActive_zig below for why
|
|
129
|
-
// `isAuthActive` is the wrong predicate here.
|
|
130
59
|
if (!spec.active) return renderInactive()
|
|
131
60
|
|
|
132
61
|
if ('query' === spec.where) return renderQuery(spec)
|
|
@@ -136,11 +65,6 @@ function render(spec: AuthSpec): string {
|
|
|
136
65
|
}
|
|
137
66
|
|
|
138
67
|
|
|
139
|
-
// AUTH SWITCHED OFF BY THE PROJECT (`main.kit.config.auth.active: false`).
|
|
140
|
-
// The SDK gets a prepare_auth that is honest about it rather than one that
|
|
141
|
-
// deletes a header nobody set. Nothing but the Context and Spec types is
|
|
142
|
-
// imported: zig tolerates an unused file-scope const, but a reader should
|
|
143
|
-
// not have to decide whether `vs` here means something.
|
|
144
68
|
function renderInactive(): string {
|
|
145
69
|
return HEAD + `//
|
|
146
70
|
// THIS SDK SENDS NO CREDENTIAL: the project set
|
|
@@ -164,10 +88,6 @@ pub fn prepare_auth_util(ctx: *Context) E!*Spec {
|
|
|
164
88
|
}
|
|
165
89
|
|
|
166
90
|
|
|
167
|
-
// HEADER — the default, and BYTE-FOR-BYTE the body that was in
|
|
168
|
-
// core/utility.zig when the scheme resolves to header/Authorization. Only
|
|
169
|
-
// the constant's VALUE moves with the model, plus the HTTP Basic block,
|
|
170
|
-
// which is emitted only for a basic scheme.
|
|
171
91
|
function renderHeader(spec: AuthSpec): string {
|
|
172
92
|
const withBasic = spec.basic
|
|
173
93
|
|
|
@@ -225,10 +145,6 @@ pub fn prepare_auth_util(ctx: *Context) E!*Spec {
|
|
|
225
145
|
}
|
|
226
146
|
|
|
227
147
|
|
|
228
|
-
// QUERY — the credential is a query parameter, so it goes in spec.query and
|
|
229
|
-
// the header bag is never touched. No `fmt`, because nothing is joined:
|
|
230
|
-
// zig would accept an unused file-scope helper, but emitting one invites the
|
|
231
|
-
// reader to look for the concatenation that is deliberately absent.
|
|
232
148
|
function renderQuery(spec: AuthSpec): string {
|
|
233
149
|
return HEAD + imports({ vs: true, fmt: false }) +
|
|
234
150
|
facts(spec.where, false, true) + `
|
|
@@ -367,10 +283,6 @@ pub fn prepare_auth_util(ctx: *Context) E!*Spec {
|
|
|
367
283
|
}
|
|
368
284
|
|
|
369
285
|
|
|
370
|
-
// The imports and type aliases, in core/utility.zig's own order and
|
|
371
|
-
// spelling. `E` comes from helpers rather than error.zig on purpose:
|
|
372
|
-
// error.zig's type is `ProjectNameError`, and the placeholder rewrite is
|
|
373
|
-
// applied by Copy, which this GENERATED file never travels through.
|
|
374
286
|
function imports(need: { vs: boolean, fmt: boolean }): string {
|
|
375
287
|
return `
|
|
376
288
|
const std = @import("std");
|
|
@@ -391,8 +303,6 @@ fn fmt(comptime f: []const u8, args: anytype) []const u8 {
|
|
|
391
303
|
}
|
|
392
304
|
|
|
393
305
|
|
|
394
|
-
// Emitted only for a basic scheme in a HEADER placement, so an ordinary
|
|
395
|
-
// bearer SDK carries neither the base64 encoder nor the boolean coercion.
|
|
396
306
|
function basicHelpers(): string {
|
|
397
307
|
return `
|
|
398
308
|
// Boolean-or-absent: an option that is unset, null or a non-boolean is false
|
|
@@ -461,40 +371,11 @@ function basicBlock(): string {
|
|
|
461
371
|
}
|
|
462
372
|
|
|
463
373
|
|
|
464
|
-
// The credential's key, as it goes into the bag.
|
|
465
|
-
//
|
|
466
|
-
// A HEADER name is LOWERCASED. HTTP header names are case-insensitive on the
|
|
467
|
-
// wire (RFC 9110 5.1), but this SDK's header bag is a plain Value map and
|
|
468
|
-
// object keys are case-SENSITIVE: the extracted template said
|
|
469
|
-
// `const HEADER_AUTH = "authorization";`, the shared corpus asserts
|
|
470
|
-
// `ctx:spec:headers:authorization`, tm/zig/test/pipeline_test.zig reads
|
|
471
|
-
// `h.getp(ctx.spec.?.headers, "authorization")`, and feature/secrets.zig
|
|
472
|
-
// rewrites the same lowercase key. apidef writes `name: "Authorization"`, so
|
|
473
|
-
// emitting it verbatim would put the credential where none of those look.
|
|
474
|
-
//
|
|
475
|
-
// A QUERY parameter and a COOKIE name are case-SENSITIVE to the API itself,
|
|
476
|
-
// so those go in exactly as the spec spells them: `?token=` is not `?Token=`.
|
|
477
374
|
function credLiteral(where: string, name: string): string {
|
|
478
375
|
return 'header' === where ? String(name).toLowerCase() : String(name)
|
|
479
376
|
}
|
|
480
377
|
|
|
481
378
|
|
|
482
|
-
// NOT `isAuthActive`, AND THE DIFFERENCE IS LOAD-BEARING. That helper is also
|
|
483
|
-
// false whenever the SPEC declares no security scheme
|
|
484
|
-
// (`main.kit.info.auth: false`) — a statement about the DEFINITION, not a ban
|
|
485
|
-
// on ever sending a credential. Such an SDK still carries one: `optspec`
|
|
486
|
-
// always declares `apikey`, and make_options_util fills `options.auth` from
|
|
487
|
-
// the optspec defaults (tm/zig/core/utility.zig), so the runtime
|
|
488
|
-
// `h.is_noval(auth)` guard never fired and every such SDK has always sent
|
|
489
|
-
// `options.apikey`. Gating the body on `isAuthActive` does not trim dead
|
|
490
|
-
// code, it silently removes working authentication — and takes the secrets
|
|
491
|
-
// feature with it, since that resolves a secret into `options.apikey` and
|
|
492
|
-
// prepare_auth then places nothing. zig's own gated suite
|
|
493
|
-
// (`zig build test-secrets`) pins exactly that.
|
|
494
|
-
//
|
|
495
|
-
// `main.kit.config.auth.active: false` is the project saying "this SDK sends
|
|
496
|
-
// no credential, ever". It is the only signal that can honestly be honoured
|
|
497
|
-
// before runtime, so it is the only one used here.
|
|
498
379
|
function isAuthActive_zig(model: any): boolean {
|
|
499
380
|
const auth = getModelPath(model, `main.${KIT}.config.auth`,
|
|
500
381
|
{ only_active: false, required: false })
|
|
@@ -502,23 +383,6 @@ function isAuthActive_zig(model: any): boolean {
|
|
|
502
383
|
}
|
|
503
384
|
|
|
504
385
|
|
|
505
|
-
// THE PLACEMENT AS A COMPTIME FACT, exported beside the function.
|
|
506
|
-
//
|
|
507
|
-
// The generated body has exactly ONE branch, chosen here at generation time,
|
|
508
|
-
// and nothing downstream can tell which by looking at the options: a query
|
|
509
|
-
// SDK's `options.auth.in` says "query", but an auth-OFF SDK is
|
|
510
|
-
// indistinguishable from a header one there (Config omits `options.auth`
|
|
511
|
-
// entirely when auth is inactive, and make_options' optspec then supplies the
|
|
512
|
-
// same empty defaults either way).
|
|
513
|
-
//
|
|
514
|
-
// tm/zig/test/pipeline_test.zig needs to tell them apart. Its prepare_auth
|
|
515
|
-
// cases assert the HEADER shape - `spec.headers["authorization"]` - which is
|
|
516
|
-
// the right assertion for the default and the wrong one for the other three,
|
|
517
|
-
// where the SDK correctly places nothing there. Rather than let a query SDK
|
|
518
|
-
// ship four red tests (or delete the coverage that every header SDK does
|
|
519
|
-
// want), the suite reads these two constants and skips what does not apply.
|
|
520
|
-
//
|
|
521
|
-
// core/utility.zig re-exports both, so the path is `sdk.utilmod.<name>`.
|
|
522
386
|
function facts(where: string, basic: boolean, active: boolean): string {
|
|
523
387
|
const placement = active ? where : 'none'
|
|
524
388
|
|
|
@@ -2,24 +2,6 @@
|
|
|
2
2
|
import { cmp, Content } from '@voxgig/sdkgen'
|
|
3
3
|
|
|
4
4
|
|
|
5
|
-
// Validates the documented README/REFERENCE quick-start examples for the Zig
|
|
6
|
-
// SDK.
|
|
7
|
-
//
|
|
8
|
-
// DESIGN NOTE vs the go/rust gates (ReadmeExamplesTest_go.ts /
|
|
9
|
-
// ReadmeExamplesTest_rust.ts): the go version shells out to `go build`/`go run`
|
|
10
|
-
// to compile and run every fenced block; the rust version reads the doc files
|
|
11
|
-
// and checks that each block is structurally well-formed. Zig's test harness
|
|
12
|
-
// uses an EXPLICIT test-file list in build.zig (no auto-discovery of test/*.zig
|
|
13
|
-
// and no per-block temp compilation), and the doc files are not on the package
|
|
14
|
-
// path at test time — so neither a filesystem scan nor a per-snippet compile can
|
|
15
|
-
// be authored safely without a build to validate against.
|
|
16
|
-
//
|
|
17
|
-
// Instead this gate emits a real, always-compiling zig `test` block INTO the
|
|
18
|
-
// shared generated_test.zig (the only generated test file build.zig picks up).
|
|
19
|
-
// It exercises the exact top-level entry points the docs advertise — the
|
|
20
|
-
// test-mode constructor and the `direct()` escape hatch — so the documented
|
|
21
|
-
// quick-start surface is guaranteed to exist and run. Upgrading it to a true
|
|
22
|
-
// per-block compile gate is left as a follow-up.
|
|
23
5
|
const ReadmeExamplesTest = cmp(function ReadmeExamplesTest(props: any) {
|
|
24
6
|
const { ctx$: { model } } = props
|
|
25
7
|
|
|
@@ -154,9 +154,6 @@ switch (client.${method}(h.vnull()).load(${loadArg}, h.vnull())) {
|
|
|
154
154
|
const it = opRequestShape(exampleEntity, opname).items.find((x: any) => x.name === idF)
|
|
155
155
|
return it && it.type
|
|
156
156
|
}
|
|
157
|
-
// The id VALUE for an update/remove match: a type-correct literal (zig
|
|
158
|
-
// ops return an OpResult, so threading the created record's id through a
|
|
159
|
-
// switch scope would obscure the example).
|
|
160
157
|
const idValueFor = (opname: string): string => zigLit(idParamType(opname), 'example_id')
|
|
161
158
|
|
|
162
159
|
if (opnames.includes('create') || opnames.includes('update') || opnames.includes('remove')) {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
|
|
2
|
-
import { cmp, each, Content, canonKey, canonScalarKey, File, isAuthActive, entityIdField, opRequestShape } from '@voxgig/sdkgen'
|
|
2
|
+
import { cmp, each, Content, canonKey, canonScalarKey, File, isAuthActive, entityIdField, opRequestShape , targetFeatures } from '@voxgig/sdkgen'
|
|
3
3
|
import { ReadmeRefFeatures } from '@voxgig/sdkgen'
|
|
4
4
|
|
|
5
5
|
import {
|
|
@@ -39,7 +39,7 @@ const ReadmeRef = cmp(function ReadmeRef(props: any) {
|
|
|
39
39
|
const { model } = props.ctx$
|
|
40
40
|
|
|
41
41
|
const entity = getModelPath(model, `main.${KIT}.entity`)
|
|
42
|
-
const feature =
|
|
42
|
+
const feature = targetFeatures(model, target)
|
|
43
43
|
|
|
44
44
|
const publishedEntities = each(entity).filter((e: any) => e.active !== false)
|
|
45
45
|
|
|
@@ -390,9 +390,6 @@ const client = sdk.${model.const.Name}SDK.new(h.jo(&.{
|
|
|
390
390
|
\`\`\`
|
|
391
391
|
|
|
392
392
|
`)
|
|
393
|
-
// The shared feature reference: options, defaults, usage and the
|
|
394
|
-
// considerations. Model facts, identical in every target, so they are
|
|
395
|
-
// written once in cmp/ReadmeRefFeatures.ts rather than here.
|
|
396
393
|
ReadmeRefFeatures({ target })
|
|
397
394
|
}
|
|
398
395
|
|
|
@@ -12,29 +12,6 @@ import {
|
|
|
12
12
|
} from '@voxgig/apidef'
|
|
13
13
|
|
|
14
14
|
|
|
15
|
-
// THE GENERATED SCHEMA MODULE: the model's schemas, as data the SDK can run.
|
|
16
|
-
//
|
|
17
|
-
// The zig peer of src/cmp/ts/Schema_ts.ts. Same two members, same source:
|
|
18
|
-
// optspec from `main.kit.optspec` plus each feature's own `config.options`,
|
|
19
|
-
// entityspec from the entity field sentinels — both built by the shared
|
|
20
|
-
// helpers, so what zig validates against and what ts validates against cannot
|
|
21
|
-
// drift.
|
|
22
|
-
//
|
|
23
|
-
// EMBEDDED AS JSON, PARSED AT LOAD, where ts emits an object literal: JSON is
|
|
24
|
-
// a subset of TypeScript's own literal syntax and is not a subset of zig's.
|
|
25
|
-
// A string constant, exactly as config.zig carries its data rep above the
|
|
26
|
-
// size threshold, and for the same reason — a nested `h.jo(...)` literal is
|
|
27
|
-
// one expression zig's comptime evaluator walks in full at every build. The
|
|
28
|
-
// spec has no threshold of its own because it is bounded by the option list
|
|
29
|
-
// and the feature set rather than by the API.
|
|
30
|
-
//
|
|
31
|
-
// The escaping is JSON.stringify's, which is valid Zig: it escapes every
|
|
32
|
-
// backslash, so the JSON's own `\uXXXX` reaches the file as `\\uXXXX` and no
|
|
33
|
-
// Zig escape sequence is ever formed from it.
|
|
34
|
-
//
|
|
35
|
-
// The round-trip is exact because the spec holds only strings and booleans:
|
|
36
|
-
// pinned by "strings and booleans only, so the JSON round-trip is lossless"
|
|
37
|
-
// in ts/test/optspec.test.ts.
|
|
38
15
|
const Schema = cmp(async function Schema(props: any) {
|
|
39
16
|
const ctx$ = props.ctx$
|
|
40
17
|
const target = props.target
|
|
@@ -4,17 +4,6 @@ import { cmp, Content } from '@voxgig/sdkgen'
|
|
|
4
4
|
import { zigVarName } from './utility_zig'
|
|
5
5
|
|
|
6
6
|
|
|
7
|
-
// Per-entity direct-call smoke tests. Emits `test "..."` blocks INTO the
|
|
8
|
-
// shared generated_test.zig file (opened by Test_zig) — see TestEntity_zig for
|
|
9
|
-
// why zig keeps every generated test in one file.
|
|
10
|
-
//
|
|
11
|
-
// The go/rust TestDirect generators build a per-entity mock-fetch harness and
|
|
12
|
-
// assert the exact URL/params the entity's op point resolves. Reproducing that
|
|
13
|
-
// path-extraction + mock-transport harness in zig safely requires a build to
|
|
14
|
-
// validate against, so this generator instead exercises the documented
|
|
15
|
-
// `direct()` / `prepare()` escape hatches through the offline test transport
|
|
16
|
-
// and asserts the result shape. `std`, `sdk`, `h`, `Value` and `vnull()` are
|
|
17
|
-
// in scope from the Test_zig header.
|
|
18
7
|
const TestDirect = cmp(function TestDirect(props: any) {
|
|
19
8
|
const { entity } = props
|
|
20
9
|
|
|
@@ -4,14 +4,6 @@ import { cmp, Content } from '@voxgig/sdkgen'
|
|
|
4
4
|
import { zigVarName } from './utility_zig'
|
|
5
5
|
|
|
6
6
|
|
|
7
|
-
// Per-entity model-driven smoke tests. Emits `test "..."` blocks INTO the
|
|
8
|
-
// shared generated_test.zig file (opened by Test_zig) — zig's build.zig uses
|
|
9
|
-
// an explicit test-file list, so every generated test must live in that one
|
|
10
|
-
// file rather than a per-entity file (the go/rust one-file-per-entity layout
|
|
11
|
-
// relies on cargo/go auto-discovery, which zig lacks). Each test drives the
|
|
12
|
-
// entity through the full pipeline via the offline `test` transport and
|
|
13
|
-
// asserts a non-error result. `std`, `sdk`, `h`, `Value` and `vnull()` are in
|
|
14
|
-
// scope from the Test_zig header.
|
|
15
7
|
const TestEntity = cmp(function TestEntity(props: any) {
|
|
16
8
|
const { target, entity } = props
|
|
17
9
|
|
|
@@ -10,17 +10,6 @@ import { TestDirect } from './TestDirect_zig'
|
|
|
10
10
|
import { ReadmeExamplesTest } from './ReadmeExamplesTest_zig'
|
|
11
11
|
|
|
12
12
|
|
|
13
|
-
// Generated tests. The bulk of behavioural coverage lives in the hand-written
|
|
14
|
-
// template suite (test/*.zig, copied verbatim): the struct corpus, the
|
|
15
|
-
// pipeline, every feature, and the cross-language gotchas. Here we emit the
|
|
16
|
-
// model-driven smoke tests.
|
|
17
|
-
//
|
|
18
|
-
// zig's build.zig picks up an EXPLICIT test-file list, so every generated test
|
|
19
|
-
// must land in the single `test/generated_test.zig` file it already lists —
|
|
20
|
-
// the per-entity generators (TestEntity, TestDirect) and the readme-examples
|
|
21
|
-
// gate all emit their `test` blocks INTO this one open File rather than opening
|
|
22
|
-
// their own (the go/rust one-file-per-entity split relies on auto-discovery
|
|
23
|
-
// zig does not have).
|
|
24
13
|
const Test = cmp(function Test(props: any) {
|
|
25
14
|
const { model } = props.ctx$
|
|
26
15
|
const { target } = props
|
|
@@ -24,36 +24,12 @@ function zigVarName(name: string): string {
|
|
|
24
24
|
}
|
|
25
25
|
|
|
26
26
|
|
|
27
|
-
// The zig module identifier, e.g. solar_sdk (informational; the build module
|
|
28
|
-
// is named "sdk").
|
|
29
|
-
//
|
|
30
|
-
// It is also the `.name` of build.zig.zon, which zig 0.16 reads as an enum
|
|
31
|
-
// literal and requires to be a BARE identifier — `.@"2fa_sdk"` is rejected as
|
|
32
|
-
// firmly as `.2fa_sdk` is — so a model name starting with a digit is given a
|
|
33
|
-
// leading underscore. Nothing else in the target derives an identifier from
|
|
34
|
-
// this, and the alternative for such a model is a package that does not build.
|
|
35
27
|
function zigModuleName(model: any): string {
|
|
36
28
|
const name = `${model.name}_sdk`.toLowerCase().replace(/[^a-z0-9_]/g, '_')
|
|
37
29
|
return /^[0-9]/.test(name) ? '_' + name : name
|
|
38
30
|
}
|
|
39
31
|
|
|
40
32
|
|
|
41
|
-
// The `.fingerprint` zig 0.14+ requires in build.zig.zon, as a 0x-prefixed
|
|
42
|
-
// 16-digit hex literal.
|
|
43
|
-
//
|
|
44
|
-
// Zig reads the field as a packed struct of two u32s: the LOW half is a free
|
|
45
|
-
// `id`, and the HIGH half is a `checksum` that must equal the CRC-32 (IEEE, as
|
|
46
|
-
// zlib computes it) of the package name. Get the checksum wrong and zig
|
|
47
|
-
// refuses to build, printing the value it wanted; get it right and any id in
|
|
48
|
-
// [1, 0xfffffffe] is accepted.
|
|
49
|
-
//
|
|
50
|
-
// The id exists so a fork can be told apart from what it forked. A generated
|
|
51
|
-
// SDK gets a DERIVED one — FNV-1a over the same name — rather than a random
|
|
52
|
-
// one, because this file is regenerated on every run: a random id would
|
|
53
|
-
// rewrite build.zig.zon each time and churn the consumer's diff, and a package
|
|
54
|
-
// that changes identity between two generations of the same model is worse
|
|
55
|
-
// than one that shares an id with a fork of itself. Distinct names still get
|
|
56
|
-
// distinct ids.
|
|
57
33
|
function zigPackageFingerprint(name: string): string {
|
|
58
34
|
// CRC-32 (IEEE 802.3, reflected, poly 0xEDB88320) — the one zig's
|
|
59
35
|
// std.hash.Crc32 and zlib both compute.
|
|
@@ -124,29 +100,6 @@ function formatZigValue(val: any, indent: number = 0): string {
|
|
|
124
100
|
}
|
|
125
101
|
|
|
126
102
|
|
|
127
|
-
// Deep-remove meta keys (`foo$`) from a model subtree (twin of go's clean).
|
|
128
|
-
// Emission-time normalisation of a model subtree (L0).
|
|
129
|
-
//
|
|
130
|
-
// Always drops jostraca's iteration metadata (`$`-suffixed keys: index$,
|
|
131
|
-
// key$, val$). With `dropDefaults`, also drops keys whose value IS the
|
|
132
|
-
// default the runtime already assumes when the key is absent, which is pure
|
|
133
|
-
// payload — see CONFIG_DEFAULT.
|
|
134
|
-
//
|
|
135
|
-
// Rebuilds the tree rather than mutating during a walk. The previous
|
|
136
|
-
// implementation walked a clone calling `delete p[k]`, but walk() assigns its
|
|
137
|
-
// callback's result back over the child (`setprop(out, ckey, walk(...))`), so
|
|
138
|
-
// the delete was undone on the way out and the helper silently did nothing.
|
|
139
|
-
// Returning `undefined` from the callback does not fix it either: setprop
|
|
140
|
-
// stores undefined rather than removing the key, which then emits as a null.
|
|
141
|
-
//
|
|
142
|
-
// `dropDefaults` is opt-in and must be passed ONLY for the entity subtree.
|
|
143
|
-
// `active` means something different in feature config, where absent reads as
|
|
144
|
-
// INACTIVE (see feature_init) — dropping `active: true` there would silently
|
|
145
|
-
// disable the feature.
|
|
146
|
-
// jostraca's iteration metadata, injected by each()/names() while it walks the
|
|
147
|
-
// model. Listed explicitly rather than matched by trailing-dollar suffix: a
|
|
148
|
-
// trailing dollar is not exclusive to jostraca -- Seneca uses entity$ as real
|
|
149
|
-
// data -- so a blanket suffix match can silently drop a legitimate API field.
|
|
150
103
|
const MODEL_META = ['index$', 'key$', 'val$']
|
|
151
104
|
|
|
152
105
|
// Keys whose value IS the default the runtime already assumes when the key is
|
|
@@ -1,9 +1,6 @@
|
|
|
1
1
|
// ProjectName SDK - shared option readers for the feature implementations.
|
|
2
|
-
//
|
|
3
|
-
//
|
|
4
|
-
// callbacks arrive as typed delegates. These helpers normalise access and
|
|
5
|
-
// supply defaults, mirroring the `null == opts.x ? def : opts.x` pattern of
|
|
6
|
-
// the ts features.
|
|
2
|
+
// Options arrive as Dictionary<string, object?>, so a numeric value may be any
|
|
3
|
+
// numeric type; `decimal` is what System.Text.Json yields through JsonElement.
|
|
7
4
|
|
|
8
5
|
namespace ProjectNameSdk.Feature;
|
|
9
6
|
|
|
@@ -29,8 +26,17 @@ internal static class FeatureOptions
|
|
|
29
26
|
{
|
|
30
27
|
int n => n,
|
|
31
28
|
long n => (int)n,
|
|
29
|
+
short n => n,
|
|
30
|
+
sbyte n => n,
|
|
31
|
+
uint n => (int)n,
|
|
32
|
+
ulong n => (int)n,
|
|
33
|
+
ushort n => n,
|
|
34
|
+
byte n => n,
|
|
32
35
|
double n => (int)n,
|
|
33
36
|
float n => (int)n,
|
|
37
|
+
// Via double: decimal->int is the one conversion C# range-checks
|
|
38
|
+
// even unchecked, and no other target throws on an oversized option.
|
|
39
|
+
decimal n => (int)(double)n,
|
|
34
40
|
_ => def,
|
|
35
41
|
};
|
|
36
42
|
}
|
|
@@ -41,8 +47,15 @@ internal static class FeatureOptions
|
|
|
41
47
|
{
|
|
42
48
|
int n => n,
|
|
43
49
|
long n => n,
|
|
50
|
+
short n => n,
|
|
51
|
+
sbyte n => n,
|
|
52
|
+
uint n => n,
|
|
53
|
+
ulong n => n,
|
|
54
|
+
ushort n => n,
|
|
55
|
+
byte n => n,
|
|
44
56
|
double n => n,
|
|
45
57
|
float n => n,
|
|
58
|
+
decimal n => (double)n,
|
|
46
59
|
_ => def,
|
|
47
60
|
};
|
|
48
61
|
}
|