@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
|
@@ -6,36 +6,6 @@ import {
|
|
|
6
6
|
} from '@voxgig/apidef'
|
|
7
7
|
|
|
8
8
|
|
|
9
|
-
// Emits go/test/readme_examples_test.go — a COMPLETENESS GATE over every
|
|
10
|
-
// ```go block in ALL THREE docs that ship go examples:
|
|
11
|
-
// - the root README.md (top-level, multi-language quick start)
|
|
12
|
-
// - the per-language go/README.md
|
|
13
|
-
// - the per-language go/REFERENCE.md
|
|
14
|
-
//
|
|
15
|
-
// For every ```go block, tagged by (source doc, index), it exercises the
|
|
16
|
-
// block against the real generated SDK:
|
|
17
|
-
//
|
|
18
|
-
// - Fragments (statement snippets) are wrapped in a function with a SEEDED
|
|
19
|
-
// test-mode `client` in scope and `go build`-checked. Any stray `import`
|
|
20
|
-
// line inside the fragment is stripped and constructor calls are rewritten
|
|
21
|
-
// to the seeded test client (so undefined-variable placeholders like
|
|
22
|
-
// sdk.TestSDK(testopts, sdkopts) still type-check). A call to a method
|
|
23
|
-
// that does not exist, a wrong argument count/type, or `.data`/`.ok` field
|
|
24
|
-
// access on a bare entity-op result fails to compile — and so fails.
|
|
25
|
-
// - Complete programs (a block with `func main`) are built as-is (the
|
|
26
|
-
// documented, possibly live, form must compile) AND a test-mode variant —
|
|
27
|
-
// its constructor rewritten to a seeded `sdk.TestSDK(...)` — is RUN with
|
|
28
|
-
// `go run`. A genuine runtime panic (nil pointer, nil map, index,
|
|
29
|
-
// interface conversion) FAILS the test; a tolerated not-found domain
|
|
30
|
-
// error does not.
|
|
31
|
-
// - Illustrative blocks are the ONLY blocks skipped, and the class is
|
|
32
|
-
// NARROW: a bare signature (a `func` line with no body) or a comment-only
|
|
33
|
-
// / `/* ... */` placeholder. Everything else must compile or run.
|
|
34
|
-
//
|
|
35
|
-
// Completeness: per doc, total == compiled + illustration is asserted. A block
|
|
36
|
-
// that is neither compiled nor a recognized illustration — e.g. real code
|
|
37
|
-
// hidden behind a `/* ... */` comment that the old logic silently skipped —
|
|
38
|
-
// FAILS the gate, so no compilable example can escape the check.
|
|
39
9
|
const ReadmeExamplesTest = cmp(function ReadmeExamplesTest(props: any) {
|
|
40
10
|
const { ctx$: { model } } = props
|
|
41
11
|
|
|
@@ -10,7 +10,6 @@ import {
|
|
|
10
10
|
import { goVarName } from './utility_go'
|
|
11
11
|
|
|
12
12
|
|
|
13
|
-
// A type-correct Go literal for a field's canonical type.
|
|
14
13
|
function goLit(type: any): string {
|
|
15
14
|
const k = canonScalarKey(type)
|
|
16
15
|
if ('INTEGER' === k || 'NUMBER' === k) return '1'
|
|
@@ -28,7 +27,6 @@ function cap(s: string): string {
|
|
|
28
27
|
const ReadmeHowto = cmp(function ReadmeHowto(props: any) {
|
|
29
28
|
const { target, ctx$: { model } } = props
|
|
30
29
|
|
|
31
|
-
// Go module path == repo path on GitHub (org from model.origin).
|
|
32
30
|
const gomodule = goModule(model, target.name)
|
|
33
31
|
|
|
34
32
|
const entity = getModelPath(model, `main.${KIT}.entity`)
|
|
@@ -40,7 +38,6 @@ const ReadmeHowto = cmp(function ReadmeHowto(props: any) {
|
|
|
40
38
|
// camelCase Go identifier (never snake_case or flattened lowercase,
|
|
41
39
|
// never a Go keyword).
|
|
42
40
|
const eLower = exampleEntity ? goVarName(exampleEntity.name) : 'entity'
|
|
43
|
-
// Model-driven id key: null when the entity has no id-like field.
|
|
44
41
|
const idF = exampleEntity ? entityIdField(exampleEntity) : null
|
|
45
42
|
const isMatchOp = 'load' === primaryOp || 'remove' === primaryOp
|
|
46
43
|
let testArg = 'nil'
|
|
@@ -37,13 +37,6 @@ const ReadmeIntro = cmp(function ReadmeIntro(props: any) {
|
|
|
37
37
|
const opList = (opNames.length ? opNames : ['list', 'load'])
|
|
38
38
|
.map((o) => '`' + cap(o) + '`').join(', ')
|
|
39
39
|
|
|
40
|
-
// Sibling surfaces, MODEL-DRIVEN. This line used to hardcode "the CLI, and
|
|
41
|
-
// MCP server" — those are the `go-cli` and `go-mcp` targets, and this project
|
|
42
|
-
// has neither. So both per-language READMEs advertised surfaces nothing here
|
|
43
|
-
// generates, while the top-level Surfaces table (which does gate on active
|
|
44
|
-
// targets) listed only ts/ and go/. Name what is actually active, and drop
|
|
45
|
-
// the sentence entirely when this is the only surface, so it cannot outrun
|
|
46
|
-
// the model again.
|
|
47
40
|
const targets = getModelPath(model, `main.${KIT}.target`) || {}
|
|
48
41
|
const siblings = Object.entries(targets)
|
|
49
42
|
.filter(([name, t]: any) => name !== target.name && false !== t.active)
|
|
@@ -33,9 +33,6 @@ const ReadmeModel = cmp(function ReadmeModel(props: any) {
|
|
|
33
33
|
const opRows = ['load', 'list', 'create', 'update', 'remove']
|
|
34
34
|
.filter((o) => opUnion.has(o)).map((o) => opRowDefs[o]).join('\n')
|
|
35
35
|
|
|
36
|
-
// Model-driven Result-shape rows: only describe the operations that
|
|
37
|
-
// actually exist. Record-returning ops (Load/Create/Update/Remove) share
|
|
38
|
-
// one row; List has its own — never name a missing op.
|
|
39
36
|
const recordOps = ['load', 'create', 'update', 'remove'].filter((o) => opUnion.has(o))
|
|
40
37
|
.map((o) => '`' + o.charAt(0).toUpperCase() + o.slice(1) + '`')
|
|
41
38
|
const resultRows: string[] = []
|
|
@@ -43,7 +40,6 @@ const ReadmeModel = cmp(function ReadmeModel(props: any) {
|
|
|
43
40
|
if (opUnion.has('list')) resultRows.push('| `List` | a `[]any` of entity records |')
|
|
44
41
|
const resultShapeRows = resultRows.join('\n')
|
|
45
42
|
|
|
46
|
-
// Go module path == repo path on GitHub (org from model.origin).
|
|
47
43
|
const gomodule = goModule(model, target.name)
|
|
48
44
|
|
|
49
45
|
const apikeyOptionRow = isAuthActive(model)
|
|
@@ -57,11 +53,7 @@ const ReadmeModel = cmp(function ReadmeModel(props: any) {
|
|
|
57
53
|
const firstWithOp = entityList.find((e: any) => entityPrimaryOp(e) != null)
|
|
58
54
|
const firstPrimaryOp = firstWithOp ? entityPrimaryOp(firstWithOp) : null
|
|
59
55
|
const firstEntityName = firstWithOp ? ((firstWithOp as any).Name || 'Entity') : 'Entity'
|
|
60
|
-
// camelCase Go identifier (never snake_case or flattened lowercase,
|
|
61
|
-
// never a Go keyword).
|
|
62
56
|
const firstEntityVar = goVarName((firstWithOp as any)?.name || 'entity')
|
|
63
|
-
// Model-driven id key: null when the example entity has no id-like field, so
|
|
64
|
-
// the Result-shape illustration passes a nil match.
|
|
65
57
|
const firstIdF = firstWithOp ? entityIdField(firstWithOp) : null
|
|
66
58
|
const firstPrimaryMethod = firstPrimaryOp
|
|
67
59
|
? firstPrimaryOp.charAt(0).toUpperCase() + firstPrimaryOp.slice(1)
|
|
@@ -71,8 +63,6 @@ const ReadmeModel = cmp(function ReadmeModel(props: any) {
|
|
|
71
63
|
? (firstIdF ? `map[string]any{"${firstIdF}": "example_id"}` : 'nil')
|
|
72
64
|
: 'map[string]any{/* fields */}'
|
|
73
65
|
|
|
74
|
-
// The Result-shape call illustration, shown only when some entity exposes an
|
|
75
|
-
// op. A direct()-only SDK (no entity ops) omits it — there is no op to call.
|
|
76
66
|
const resultCallExample = firstPrimaryOp
|
|
77
67
|
? `Check \`err\` first, then use the value directly (or the typed
|
|
78
68
|
\`...Typed\` variants, which return the entity's model struct and a typed
|
|
@@ -153,7 +143,6 @@ ${resultCallExample}Only \`Direct()\` returns a response envelope — a \`map[st
|
|
|
153
143
|
|
|
154
144
|
`)
|
|
155
145
|
|
|
156
|
-
// Entities summary
|
|
157
146
|
Content(`### Entities
|
|
158
147
|
|
|
159
148
|
`)
|
|
@@ -10,16 +10,10 @@ import {
|
|
|
10
10
|
import { exampleValue, goVarName } from './utility_go'
|
|
11
11
|
|
|
12
12
|
|
|
13
|
-
// Emits the go/README.md Quickstart as ONE complete, compilable program.
|
|
14
|
-
// Every entity operation returns `(value, error)` where `value` is the
|
|
15
|
-
// data itself — NOT a `{ok, data, ...}` envelope (only Direct returns
|
|
16
|
-
// that). So examples check `err` and use the value directly. The whole
|
|
17
|
-
// program is compiled by the README snippet test (readme_examples_test.go).
|
|
18
13
|
const ReadmeQuick = cmp(function ReadmeQuick(props: any) {
|
|
19
14
|
const { target, ctx$: { model } } = props
|
|
20
15
|
|
|
21
16
|
const entity = getModelPath(model, `main.${KIT}.entity`)
|
|
22
|
-
// Go module path == repo path on GitHub (org from model.origin).
|
|
23
17
|
const gomodule = goModule(model, target.name)
|
|
24
18
|
|
|
25
19
|
const exampleEntity = Object.values(entity).find((e: any) => e.active !== false) as any
|
|
@@ -42,20 +36,12 @@ const ReadmeQuick = cmp(function ReadmeQuick(props: any) {
|
|
|
42
36
|
? `sdk.New()`
|
|
43
37
|
: `sdk.New${model.const.Name}SDK(map[string]any{${goServerField}\n })`)
|
|
44
38
|
|
|
45
|
-
// Build the body of main() from the operations the example entity
|
|
46
|
-
// supports. Each op names a fresh value var, so `:=` always declares a
|
|
47
|
-
// new variable (reusing `err`), and every var is used (printed).
|
|
48
39
|
const body: string[] = []
|
|
49
40
|
let usesFmt = false
|
|
50
41
|
|
|
51
42
|
if (exampleEntity) {
|
|
52
43
|
const eName = nom(exampleEntity, 'Name')
|
|
53
|
-
// camelCase variable name — a `status_embed_config` entity must not bind
|
|
54
|
-
// a snake_case Go variable, and a `Type`/`Range` entity must not bind a
|
|
55
|
-
// Go keyword (`type, err := ...` fails `go build`).
|
|
56
44
|
const eLower = goVarName(exampleEntity.name)
|
|
57
|
-
// ACTIVE ops only — an inactive op generates no method, so an example
|
|
58
|
-
// calling it would not compile.
|
|
59
45
|
const opnames = entityOps(exampleEntity)
|
|
60
46
|
|
|
61
47
|
// Model-driven id key: null when the entity has no id-like field (a
|
|
@@ -63,12 +49,6 @@ const ReadmeQuick = cmp(function ReadmeQuick(props: any) {
|
|
|
63
49
|
// update omits the id member.
|
|
64
50
|
const idF = entityIdField(exampleEntity)
|
|
65
51
|
|
|
66
|
-
// Model-driven example members for an op body, from the SAME op shape the
|
|
67
|
-
// request types are built from (opRequestShape), so create/update
|
|
68
|
-
// reference REAL writable fields, not a hardcoded "name", and every value
|
|
69
|
-
// is a type-correct Go literal (exampleValue). ids are rendered
|
|
70
|
-
// separately as the match key for update/remove; a REQUIRED id stays for
|
|
71
|
-
// create (dropping it makes the payload incomplete).
|
|
72
52
|
const exampleFields = (opname: string): string[] => {
|
|
73
53
|
const items = opRequestShape(exampleEntity, opname).items
|
|
74
54
|
.filter((it: any) => (it.name !== idF && it.name !== 'id') ||
|
|
@@ -162,7 +142,6 @@ const ReadmeQuick = cmp(function ReadmeQuick(props: any) {
|
|
|
162
142
|
}
|
|
163
143
|
}
|
|
164
144
|
|
|
165
|
-
// Drop trailing blank lines from the body.
|
|
166
145
|
while (body.length > 0 && body[body.length - 1] === '') {
|
|
167
146
|
body.pop()
|
|
168
147
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
|
|
2
|
-
import { cmp, each, Content, canonToType, File, isAuthActive, entityIdField, entityOps, opRequestShape } from '@voxgig/sdkgen'
|
|
2
|
+
import { cmp, each, Content, canonToType, File, isAuthActive, entityIdField, entityOps, opRequestShape , targetFeatures } from '@voxgig/sdkgen'
|
|
3
3
|
import { ReadmeRefFeatures } from '@voxgig/sdkgen'
|
|
4
4
|
|
|
5
5
|
import {
|
|
@@ -44,7 +44,7 @@ const ReadmeRef = cmp(function ReadmeRef(props: any) {
|
|
|
44
44
|
const { model } = props.ctx$
|
|
45
45
|
|
|
46
46
|
const entity = getModelPath(model, `main.${KIT}.entity`)
|
|
47
|
-
const feature =
|
|
47
|
+
const feature = targetFeatures(model, target)
|
|
48
48
|
|
|
49
49
|
const publishedEntities = each(entity).filter((e: any) => e.active !== false)
|
|
50
50
|
|
|
@@ -113,7 +113,6 @@ client := sdk.TestSDK(testopts, sdkopts)
|
|
|
113
113
|
`)
|
|
114
114
|
|
|
115
115
|
|
|
116
|
-
// Entity factory methods
|
|
117
116
|
publishedEntities.map((ent: any) => {
|
|
118
117
|
Content(`#### \`${ent.Name}(data map[string]any) ${model.const.Name}Entity\`
|
|
119
118
|
|
|
@@ -159,7 +158,6 @@ same parameters as \`Direct()\`.
|
|
|
159
158
|
`)
|
|
160
159
|
|
|
161
160
|
|
|
162
|
-
// Entity reference sections
|
|
163
161
|
publishedEntities.map((ent: any) => {
|
|
164
162
|
// ACTIVE ops only — an inactive op generates no method, so an example
|
|
165
163
|
// calling it would not compile.
|
|
@@ -168,8 +166,6 @@ same parameters as \`Direct()\`.
|
|
|
168
166
|
// Model-driven id key: null when this entity has no id-like field, in
|
|
169
167
|
// which case load/remove pass a nil match and update omits the id.
|
|
170
168
|
const idF = entityIdField(ent)
|
|
171
|
-
// camelCase Go identifier (a `status_embed_config` entity must not bind
|
|
172
|
-
// a snake_case Go variable).
|
|
173
169
|
const eVar = goVarName(ent.name)
|
|
174
170
|
|
|
175
171
|
Content(`
|
|
@@ -193,7 +189,6 @@ fmt.Println(${eVar}.GetName()) // "${ent.name}"
|
|
|
193
189
|
`)
|
|
194
190
|
|
|
195
191
|
|
|
196
|
-
// Field schema
|
|
197
192
|
if (fields.length > 0) {
|
|
198
193
|
Content(`### Fields
|
|
199
194
|
|
|
@@ -210,7 +205,6 @@ fmt.Println(${eVar}.GetName()) // "${ent.name}"
|
|
|
210
205
|
Content(`
|
|
211
206
|
`)
|
|
212
207
|
|
|
213
|
-
// Field operations breakdown
|
|
214
208
|
const hasFieldOps = fields.some((f: any) => f.op && Object.keys(f.op).length > 0)
|
|
215
209
|
if (hasFieldOps) {
|
|
216
210
|
// Only emit columns for operations this entity actually exposes —
|
|
@@ -241,7 +235,6 @@ fmt.Println(${eVar}.GetName()) // "${ent.name}"
|
|
|
241
235
|
}
|
|
242
236
|
|
|
243
237
|
|
|
244
|
-
// Operation details
|
|
245
238
|
if (opnames.length > 0) {
|
|
246
239
|
Content(`### Operations
|
|
247
240
|
|
|
@@ -346,7 +339,6 @@ fmt.Println(result)
|
|
|
346
339
|
}
|
|
347
340
|
|
|
348
341
|
|
|
349
|
-
// Common methods
|
|
350
342
|
Content(`### Common Methods
|
|
351
343
|
|
|
352
344
|
#### \`Data(args ...any) any\`
|
|
@@ -372,7 +364,6 @@ Return the entity name.
|
|
|
372
364
|
})
|
|
373
365
|
|
|
374
366
|
|
|
375
|
-
// Features section
|
|
376
367
|
const activeFeatures = each(feature).filter((f: any) => f.active)
|
|
377
368
|
if (activeFeatures.length > 0) {
|
|
378
369
|
Content(`
|
|
@@ -408,9 +399,6 @@ client := sdk.New${model.const.Name}SDK(map[string]any{
|
|
|
408
399
|
\`\`\`
|
|
409
400
|
|
|
410
401
|
`)
|
|
411
|
-
// The shared feature reference: options, defaults, usage and the
|
|
412
|
-
// considerations. Model facts, identical in every target, so they are
|
|
413
|
-
// written once in cmp/ReadmeRefFeatures.ts rather than here.
|
|
414
402
|
ReadmeRefFeatures({ target })
|
|
415
403
|
}
|
|
416
404
|
|
|
@@ -14,7 +14,6 @@ const ReadmeTopQuick = cmp(function ReadmeTopQuick(props: any) {
|
|
|
14
14
|
const { target, ctx$: { model } } = props
|
|
15
15
|
|
|
16
16
|
const entity = getModelPath(model, `main.${KIT}.entity`)
|
|
17
|
-
// Go module path == repo path on GitHub (org from model.origin).
|
|
18
17
|
const gomodule = goModule(model, target.name)
|
|
19
18
|
|
|
20
19
|
const exampleEntity = Object.values(entity).find((e: any) => e.active !== false) as any
|
|
@@ -46,10 +45,7 @@ client := ${ctor}
|
|
|
46
45
|
|
|
47
46
|
if (exampleEntity) {
|
|
48
47
|
const eName = nom(exampleEntity, 'Name')
|
|
49
|
-
// camelCase Go identifier (never snake_case, never a Go keyword).
|
|
50
48
|
const eVar = goVarName(exampleEntity.name)
|
|
51
|
-
// ACTIVE ops only — an inactive op generates no method, so an example
|
|
52
|
-
// calling it would not compile.
|
|
53
49
|
const opnames = entityOps(exampleEntity)
|
|
54
50
|
|
|
55
51
|
let hasCall = false
|
|
@@ -65,9 +61,6 @@ fmt.Println(${eVar}s)
|
|
|
65
61
|
hasCall = true
|
|
66
62
|
}
|
|
67
63
|
|
|
68
|
-
// Find a nested entity for a more interesting example: one with a parent
|
|
69
|
-
// chain (relations.ancestors), an active load op, and a required non-id
|
|
70
|
-
// load param to demonstrate (the parent key, e.g. page_id).
|
|
71
64
|
const nestedEntity = Object.values(entity).find((e: any) =>
|
|
72
65
|
e.active !== false &&
|
|
73
66
|
e.relations && e.relations.ancestors && 0 < e.relations.ancestors.length &&
|
|
@@ -106,9 +99,7 @@ fmt.Println(${neVar})
|
|
|
106
99
|
hasCall = true
|
|
107
100
|
}
|
|
108
101
|
|
|
109
|
-
// Fallback: APIs with only `load` (no list, no nested) — still show one call.
|
|
110
102
|
if (!hasCall && opnames.includes('load')) {
|
|
111
|
-
// Every REQUIRED load-match key (id first) — nil when there are none.
|
|
112
103
|
const idF = entityIdField(exampleEntity)
|
|
113
104
|
const loadItems = opRequestShape(exampleEntity, 'load').items
|
|
114
105
|
.filter((it: any) => !it.optional || it.name === idF)
|
|
@@ -17,27 +17,6 @@ import {
|
|
|
17
17
|
} from './utility_go'
|
|
18
18
|
|
|
19
19
|
|
|
20
|
-
// THE GENERATED SCHEMA MODULE: the model's schemas, as data the SDK can run.
|
|
21
|
-
//
|
|
22
|
-
// The go peer of src/cmp/ts/Schema_ts.ts. Same two exports, same source:
|
|
23
|
-
// OPTSPEC from `main.kit.optspec` plus each feature's own `config.options`,
|
|
24
|
-
// ENTITYSPEC from the entity field sentinels — both built by the shared
|
|
25
|
-
// helpers, so what go validates against and what ts validates against cannot
|
|
26
|
-
// drift.
|
|
27
|
-
//
|
|
28
|
-
// EMBEDDED AS JSON, PARSED AT LOAD, where ts emits an object literal. JSON is
|
|
29
|
-
// a subset of TypeScript's own literal syntax and is not a subset of go's, so
|
|
30
|
-
// the literal ts writes directly is a `map[string]any{...}` tree here — which
|
|
31
|
-
// this could render (utility_go has the formatter config.go's literal branch
|
|
32
|
-
// uses), but the JSON string is the smaller, simpler artefact and every
|
|
33
|
-
// target this is being ported to already carries one for its config.
|
|
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. That is not incidental. json.Unmarshal decodes
|
|
38
|
-
// EVERY JSON number as float64, and struct reads a spec by example, so one
|
|
39
|
-
// number in here would mean something different in go than in ts — the same
|
|
40
|
-
// disagreement configNormalise exists to repair in config.go.
|
|
41
20
|
const Schema = cmp(async function Schema(props: any) {
|
|
42
21
|
const ctx$ = props.ctx$
|
|
43
22
|
const target = props.target
|
|
@@ -107,7 +107,6 @@ const TestDirect = cmp(function TestDirect(props: any) {
|
|
|
107
107
|
const loadOp = entity.op?.load
|
|
108
108
|
const listOp = entity.op?.list
|
|
109
109
|
|
|
110
|
-
// Get load point info
|
|
111
110
|
const loadPoint = loadOp?.points?.[0]
|
|
112
111
|
const loadIsGraphql = 'graphql' === (loadPoint as any)?.kind
|
|
113
112
|
const loadPath = loadPoint ? normalizePathParams(pointParts(loadPoint), loadPoint?.args?.params || [], loadPoint?.rename?.param) : ''
|
|
@@ -134,14 +133,11 @@ const TestDirect = cmp(function TestDirect(props: any) {
|
|
|
134
133
|
const loadParams = allLoadParams.filter((p: any) =>
|
|
135
134
|
_renamedPlaceholders.has(p.name) || _renamedPlaceholders.has(p.orig))
|
|
136
135
|
|
|
137
|
-
// Get list point info
|
|
138
136
|
const listPoint = listOp?.points?.[0]
|
|
139
137
|
const listIsGraphql = 'graphql' === (listPoint as any)?.kind
|
|
140
138
|
const listPath = listPoint ? normalizePathParams(pointParts(listPoint), listPoint?.args?.params || [], listPoint?.rename?.param) : ''
|
|
141
139
|
const listParams = listPoint?.args?.params || []
|
|
142
140
|
|
|
143
|
-
// Required query params with spec-provided examples — needed in live mode
|
|
144
|
-
// to satisfy API contracts (e.g. /v2018/history requires city/start/end).
|
|
145
141
|
const loadQuery = loadPoint?.args?.query || []
|
|
146
142
|
const loadLiveQueryEntries = loadQuery
|
|
147
143
|
.filter((q: any) => q.reqd && undefined !== q.example && null !== q.example)
|
|
@@ -168,7 +164,6 @@ const TestDirect = cmp(function TestDirect(props: any) {
|
|
|
168
164
|
? loadParams.map((p: any) => `\t\t\tparams["${p.name}"] = ${JSON.stringify(p.example)}`).join('\n')
|
|
169
165
|
: ''
|
|
170
166
|
|
|
171
|
-
// Build the ENTID env var name for this entity
|
|
172
167
|
const entidEnvVar = `${PROJECTNAME}_TEST_${envToken(entity.name)}_ENTID`
|
|
173
168
|
|
|
174
169
|
File({ name: entity.name + '_direct_test.' + target.ext }, () => {
|
|
@@ -188,7 +183,6 @@ import (
|
|
|
188
183
|
func Test${entity.Name}Direct(t *testing.T) {
|
|
189
184
|
`)
|
|
190
185
|
|
|
191
|
-
// Generate list test first (load needs list results in live mode)
|
|
192
186
|
if (hasList && listPoint && listIsGraphql) {
|
|
193
187
|
generateDirectGraphqlGo('list', entity, listPoint, liveFail)
|
|
194
188
|
}
|
|
@@ -199,7 +193,6 @@ func Test${entity.Name}Direct(t *testing.T) {
|
|
|
199
193
|
`"${p.name}": "direct0${i + 1}"`).join(', ')
|
|
200
194
|
: ''
|
|
201
195
|
|
|
202
|
-
// Build live params for list
|
|
203
196
|
const listLiveParams = listParams.map((p: any) => {
|
|
204
197
|
const key = p.name === 'id'
|
|
205
198
|
? entity.name + '01'
|
|
@@ -252,9 +245,6 @@ ${listSkipBlock} client := setup.client
|
|
|
252
245
|
Content(` params := map[string]any{}
|
|
253
246
|
`)
|
|
254
247
|
listLiveParams.forEach((lp: any, i: number) => {
|
|
255
|
-
// Each path param gets its own placeholder ("direct01", "direct02", ...)
|
|
256
|
-
// in non-live mode so URL-shape assertions can verify the params
|
|
257
|
-
// landed in distinct positions in the URL.
|
|
258
248
|
const placeholder = 'direct0' + (i + 1)
|
|
259
249
|
Content(` if setup.live {
|
|
260
250
|
params["${lp.name}"] = setup.idmap["${lp.key}"]
|
|
@@ -357,16 +347,8 @@ ${listSkipBlock} client := setup.client
|
|
|
357
347
|
`"${p.name}": "direct0${i + 1}"`).join(', ')
|
|
358
348
|
: ''
|
|
359
349
|
|
|
360
|
-
// Identify ancestor params (not 'id') for live mode
|
|
361
350
|
const ancestorParams = loadParams.filter((p: any) => p.name !== 'id')
|
|
362
351
|
|
|
363
|
-
// Determine which idmap keys this load test will consume in live mode.
|
|
364
|
-
// - allHaveExamples: spec provides example values for every load
|
|
365
|
-
// path-param, so live mode uses them — no idmap needed.
|
|
366
|
-
// - hasList: we list-bootstrap, so we need the keys for the list call's
|
|
367
|
-
// path params (ancestors of the list path).
|
|
368
|
-
// - synthetic-only: we'd use idmap for load path-params; without an
|
|
369
|
-
// override they're undefined and the live request 4xx's.
|
|
370
352
|
let loadLiveIdKeys: string[] = []
|
|
371
353
|
if (loadParams.length > 0 && !loadAllHaveExamples) {
|
|
372
354
|
if (hasList) {
|
|
@@ -419,16 +401,13 @@ ${loadSkipBlock} client := setup.client
|
|
|
419
401
|
Content(` if setup.live {
|
|
420
402
|
`)
|
|
421
403
|
|
|
422
|
-
// Required-query setup (e.g. /v2018/history needs city/start/end).
|
|
423
404
|
if (loadLiveQueryLines) {
|
|
424
405
|
Content(loadLiveQueryLines + '\n')
|
|
425
406
|
}
|
|
426
407
|
|
|
427
408
|
if (loadAllHaveExamples) {
|
|
428
|
-
// Use spec-provided path-param examples — no list bootstrap needed.
|
|
429
409
|
Content(loadExampleLines + '\n')
|
|
430
410
|
} else if (hasList && loadParams.length > 0) {
|
|
431
|
-
// List-bootstrap: first call list, take id from response.
|
|
432
411
|
Content(` listParams := map[string]any{}
|
|
433
412
|
`)
|
|
434
413
|
for (const p of listParams) {
|
|
@@ -459,7 +438,6 @@ ${loadSkipBlock} client := setup.client
|
|
|
459
438
|
firstEnt := core.ToMapAny(listData[0])
|
|
460
439
|
params["id"] = firstEnt["id"]
|
|
461
440
|
`)
|
|
462
|
-
// Set ancestor params from idmap
|
|
463
441
|
for (const p of ancestorParams) {
|
|
464
442
|
const key = p.name.replace(/_id$/, '') + '01'
|
|
465
443
|
Content(` params["${p.name}"] = setup.idmap["${key}"]
|
|
@@ -632,7 +610,6 @@ func ${entity.name}DirectSetup(mockres any) *${entity.name}DirectSetupResult {
|
|
|
632
610
|
}
|
|
633
611
|
`)
|
|
634
612
|
|
|
635
|
-
// Suppress unused import warnings
|
|
636
613
|
Content(`
|
|
637
614
|
var _ = os.Getenv
|
|
638
615
|
var _ = json.Unmarshal
|
|
@@ -36,8 +36,6 @@ function goVar(name: string): string {
|
|
|
36
36
|
}
|
|
37
37
|
|
|
38
38
|
|
|
39
|
-
// Go's GenCtx mirrors the shared shape (see TestEntity_ts.ts) plus a
|
|
40
|
-
// `gomodule` slot used to build qualified package paths in emitted code.
|
|
41
39
|
type GenCtx = {
|
|
42
40
|
model: Model
|
|
43
41
|
entity: ModelEntity
|
|
@@ -281,12 +279,6 @@ ${allSteps.length > 0 ? '\t\tclient := setup.client\n\n' : ''}`)
|
|
|
281
279
|
|
|
282
280
|
`)
|
|
283
281
|
|
|
284
|
-
// Generate idmap via vs.Transform.
|
|
285
|
-
//
|
|
286
|
-
// The error return Transform gained in struct go 0.1.3 is discarded
|
|
287
|
-
// deliberately: this transforms the entity's own id names, which the
|
|
288
|
-
// generator produced, so an error would be a generator bug rather than
|
|
289
|
-
// anything the generated test can act on.
|
|
290
282
|
Content('\t// Generate idmap via transform, matching TS pattern.\n')
|
|
291
283
|
Content('\tidmap, _ := vs.Transform(\n')
|
|
292
284
|
Content('\t\t[]any{' + idnamesStr + '},\n')
|
|
@@ -50,10 +50,6 @@ func NewEntyClass(client *core.ProjectNameSDK, entopts map[string]any) *EntyClas
|
|
|
50
50
|
|
|
51
51
|
func (e *EntyClass) GetName() string { return e.name }
|
|
52
52
|
|
|
53
|
-
// Deleted marks this instance as removed. `Remove` resolves to the entity
|
|
54
|
-
// like every other operation, and the instance KEEPS the data it held — a
|
|
55
|
-
// caller can still read what was deleted — but it is no longer a live
|
|
56
|
-
// record. See AGENTS.md "Entity operations return ENTITIES".
|
|
57
53
|
func (e *EntyClass) MarkDeleted() {
|
|
58
54
|
e.deleted = true
|
|
59
55
|
}
|
|
@@ -122,15 +118,6 @@ func (e *EntyClass) MatchTyped(match ...EntityName) EntityName {
|
|
|
122
118
|
return typedFrom[EntityName](e.Match())
|
|
123
119
|
}
|
|
124
120
|
|
|
125
|
-
// Stream (feature #4). Runs `action` through the full pipeline and returns a
|
|
126
|
-
// channel over result items, so the `streaming` feature's incremental output
|
|
127
|
-
// is reachable from a generated entity (a normal op call materialises the
|
|
128
|
-
// whole result). `callopts` parameterises the call:
|
|
129
|
-
// - inbound (download): the channel yields items/chunks (from the streaming
|
|
130
|
-
// feature when active, else the materialised items);
|
|
131
|
-
// - outbound (upload): a `body` in callopts is attached to the request so the
|
|
132
|
-
// transport can stream the payload;
|
|
133
|
-
// - `ctrl` (pipeline control) and `signal` (a done channel) are honoured.
|
|
134
121
|
func (e *EntyClass) Stream(action string, args map[string]any, callopts map[string]any) <-chan any {
|
|
135
122
|
out := make(chan any)
|
|
136
123
|
|
|
@@ -317,14 +304,6 @@ func (e *EntyClass) runOp(ctx *core.Context, postDone func()) (any, error) {
|
|
|
317
304
|
return out, doneErr
|
|
318
305
|
}
|
|
319
306
|
|
|
320
|
-
// An operation resolves to the ENTITY, not the raw data. Entities are
|
|
321
|
-
// stateful: post_done has just absorbed resdata/resmatch into this
|
|
322
|
-
// instance, and the caller reaches the record through data(). Two
|
|
323
|
-
// structural exceptions: `list` resolves to the ARRAY of entity
|
|
324
|
-
// instances make_result built, and a failed op with throwing disabled
|
|
325
|
-
// hands back the error payload unchanged. `remove` additionally marks
|
|
326
|
-
// the entity deleted; it KEEPS its data, so a caller can still read
|
|
327
|
-
// what was removed. See AGENTS.md "Entity operations return ENTITIES".
|
|
328
307
|
opname := ""
|
|
329
308
|
if ctx.Op != nil {
|
|
330
309
|
opname = ctx.Op.Name
|
|
@@ -264,7 +264,6 @@ func (sdk *ProjectNameSDK) rawRequest(fetchargs map[string]any) (map[string]any,
|
|
|
264
264
|
if !noBody {
|
|
265
265
|
if jf := vs.GetProp(fm, "json"); jf != nil {
|
|
266
266
|
if f, ok := jf.(func() any); ok {
|
|
267
|
-
// f() returns nil on parse error in our fetcher.
|
|
268
267
|
jsonData = f()
|
|
269
268
|
}
|
|
270
269
|
}
|
|
@@ -281,17 +280,6 @@ func (sdk *ProjectNameSDK) rawRequest(fetchargs map[string]any) (map[string]any,
|
|
|
281
280
|
return map[string]any{"ok": false, "err": ctx.MakeError("direct_invalid", "invalid response type")}, nil
|
|
282
281
|
}
|
|
283
282
|
|
|
284
|
-
// Raw GraphQL access: the pressure valve that makes the generated surface's
|
|
285
|
-
// deliberate omissions (per-call selection sets, typed filter builders,
|
|
286
|
-
// batching, subscriptions) livable — the whole schema stays reachable.
|
|
287
|
-
//
|
|
288
|
-
// Thin wrapper over the same prepare/fetch path Direct uses, with the one
|
|
289
|
-
// thing raw Direct cannot do for GraphQL: a GraphQL failure rides HTTP 200
|
|
290
|
-
// as a top-level `errors` array, so status alone would report a failed query
|
|
291
|
-
// as ok.
|
|
292
|
-
//
|
|
293
|
-
// NOTE: like Direct, this bypasses the feature pipeline — no retry,
|
|
294
|
-
// ratelimit or paging features apply.
|
|
295
283
|
func (sdk *ProjectNameSDK) Graphql(
|
|
296
284
|
query string, variables map[string]any, ctrl map[string]any,
|
|
297
285
|
) (map[string]any, error) {
|
|
@@ -23,13 +23,6 @@ function projectPath(suffix?: string): string {
|
|
|
23
23
|
}
|
|
24
24
|
|
|
25
25
|
|
|
26
|
-
// --- Model-driven example literals -----------------------------------------
|
|
27
|
-
// Doc snippets must use example values whose TYPE matches the model's
|
|
28
|
-
// declared param/field type — a number id shown as a quoted string documents
|
|
29
|
-
// a call the API would reject. These helpers derive the example literal from
|
|
30
|
-
// the SAME model source the request shapes are built from (opRequestShape),
|
|
31
|
-
// so the docs and the model can never disagree. Go twin of the ts
|
|
32
|
-
// exampleValue (cmp/ts/utility_ts.ts), rendering Go literals.
|
|
33
26
|
|
|
34
27
|
// The declared canon-type sentinel of a named parameter of an op — looked up
|
|
35
28
|
// in the op's `points[].args.params[]` exactly as the typed-model generator
|
|
@@ -37,21 +30,6 @@ function projectPath(suffix?: string): string {
|
|
|
37
30
|
// has no params and the request shape mirrors the entity fields). Returns
|
|
38
31
|
// undefined when neither is present.
|
|
39
32
|
function paramCanonType(entity: any, op: any, paramName: string): unknown {
|
|
40
|
-
// opParams, NOT a raw walk of op.points.
|
|
41
|
-
//
|
|
42
|
-
// opParams drops points flagged with select['$action'] and merges what is
|
|
43
|
-
// left; the typed-model generator reaches the op's params through it, so
|
|
44
|
-
// anything else is a DIFFERENT set of params wearing the same name.
|
|
45
|
-
//
|
|
46
|
-
// A raw walk returned the first match on ANY point, action points included.
|
|
47
|
-
// github's `action` entity has a field `owner` (`$OBJECT`, "A GitHub user")
|
|
48
|
-
// and seven create points whose path carries `{owner}` (a string) — so the
|
|
49
|
-
// type said Record<string, any> and the doc example said 'example_owner',
|
|
50
|
-
// and ts/README.md stopped compiling. Same for workflow_id: `number` in the
|
|
51
|
-
// type, quoted string in the example.
|
|
52
|
-
//
|
|
53
|
-
// Deriving from opParams is what actually makes good on the promise below —
|
|
54
|
-
// that the docs and the generated types cannot disagree.
|
|
55
33
|
const params = op ? each(opParams(op)) : []
|
|
56
34
|
const found = (params as any[]).find((p: any) => p && p.name === paramName)
|
|
57
35
|
if (found) {
|
|
@@ -94,13 +72,8 @@ function exampleValue(entity: any, op: any, paramName: string, placeholder: stri
|
|
|
94
72
|
}
|
|
95
73
|
|
|
96
74
|
|
|
97
|
-
// A camelCase Go identifier for a snake_case model name
|
|
98
|
-
// (`status_embed_config` -> `statusEmbedConfig`) — Go variables are
|
|
99
|
-
// camelCase, never snake_case — with the reserved-word guard applied (a
|
|
100
|
-
// `type`/`range` entity must not bind a Go keyword).
|
|
101
75
|
function goVarName(name: string): string {
|
|
102
76
|
const pascal = camelify(name)
|
|
103
|
-
// exampleVarName also guards `client`, the doc examples' SDK-instance var.
|
|
104
77
|
return exampleVarName(pascal.charAt(0).toLowerCase() + pascal.slice(1), 'go')
|
|
105
78
|
}
|
|
106
79
|
|
|
@@ -136,8 +109,6 @@ function formatGoMap(obj: any, indent: number = 0): string {
|
|
|
136
109
|
}
|
|
137
110
|
|
|
138
111
|
|
|
139
|
-
// Go rejects a literal BOM anywhere after the start of a source file,
|
|
140
|
-
// including inside strings. Preserve its value through an escaped literal.
|
|
141
112
|
function formatGoString(value: string): string {
|
|
142
113
|
return JSON.stringify(value).replace(/\uFEFF/g, '\\ufeff')
|
|
143
114
|
}
|
|
@@ -169,41 +140,14 @@ function formatGoValue(val: any, indent: number = 0): string {
|
|
|
169
140
|
}
|
|
170
141
|
|
|
171
142
|
|
|
172
|
-
// Emission-time normalisation of a model subtree (L0).
|
|
173
|
-
//
|
|
174
|
-
// Always drops jostraca's iteration metadata (`$`-suffixed keys: index$,
|
|
175
|
-
// key$, val$). With `dropDefaults`, also drops keys whose value IS the
|
|
176
|
-
// default the runtime already assumes when the key is absent, which is pure
|
|
177
|
-
// payload — see CONFIG_DEFAULT.
|
|
178
|
-
//
|
|
179
|
-
// Rebuilds the tree rather than mutating during a walk. The previous
|
|
180
|
-
// implementation walked a clone calling `delete p[k]`, but walk() assigns its
|
|
181
|
-
// callback's result back over the child (`setprop(out, ckey, walk(...))`), so
|
|
182
|
-
// the delete was undone on the way out and the helper silently did nothing.
|
|
183
|
-
// Returning `undefined` from the callback does not fix it either: setprop
|
|
184
|
-
// stores undefined rather than removing the key, which then emits as a null.
|
|
185
|
-
//
|
|
186
|
-
// `dropDefaults` is opt-in and must be passed ONLY for the entity subtree.
|
|
187
|
-
// `active` means something different in feature config, where absent reads as
|
|
188
|
-
// INACTIVE (see feature_init) — dropping `active: true` there would silently
|
|
189
|
-
// disable the feature.
|
|
190
|
-
// jostraca's iteration metadata, injected by each()/names() while it walks the
|
|
191
|
-
// model. Listed explicitly rather than matched by trailing-dollar suffix: a
|
|
192
|
-
// trailing dollar is not exclusive to jostraca -- Seneca uses entity$ as real
|
|
193
|
-
// data -- so a blanket suffix match can silently drop a legitimate API field.
|
|
194
143
|
const MODEL_META = ['index$', 'key$', 'val$']
|
|
195
144
|
|
|
196
|
-
// Keys whose value IS the default the runtime already assumes when the key is
|
|
197
|
-
// absent, so emitting them is pure payload.
|
|
198
145
|
const CONFIG_DEFAULT: Record<string, any> = {
|
|
199
146
|
active: true,
|
|
200
147
|
req: false,
|
|
201
148
|
reqd: false,
|
|
202
149
|
}
|
|
203
150
|
|
|
204
|
-
// Subtrees carrying user payload rather than schema. An active:true inside an
|
|
205
|
-
// OpenAPI example is DATA, not a default, so default-pruning stops at these
|
|
206
|
-
// keys and everything below them is passed through untouched.
|
|
207
151
|
const PAYLOAD_KEYS = ['default', 'example', 'examples']
|
|
208
152
|
|
|
209
153
|
function clean(o: any, dropDefaults?: boolean): any {
|
|
@@ -231,20 +175,6 @@ function clean(o: any, dropDefaults?: boolean): any {
|
|
|
231
175
|
|
|
232
176
|
|
|
233
177
|
|
|
234
|
-
// The Go identifier fragment for a feature's generated constructor
|
|
235
|
-
// (New<Fname>Feature / New<Fname>FeatureFunc).
|
|
236
|
-
//
|
|
237
|
-
// SHARED because the identifier is DECLARED in Main_go.ts (registry.go and the
|
|
238
|
-
// root init()) and REFERENCED in Config_go.ts (makeFeature). Two copies of the
|
|
239
|
-
// derivation is a latent undefined-identifier bug in the generated SDK: they
|
|
240
|
-
// were both `name.charAt(0).toUpperCase() + name.slice(1)`, consistently wrong
|
|
241
|
-
// for a name needing real normalisation but at least agreeing, until one side
|
|
242
|
-
// was fixed alone and `rate_limit` became NewRateLimitFeatureFunc in the
|
|
243
|
-
// registry and NewRate_limitFeatureFunc in config.
|
|
244
|
-
//
|
|
245
|
-
// Uses the jostraca-derived PascalCase `Name` (deriving it if absent), which is
|
|
246
|
-
// what Main_ts.ts uses, so a hyphenated or underscored feature name yields a
|
|
247
|
-
// legal Go identifier instead of `NewRate-limitFeatureFunc`.
|
|
248
178
|
function goFeatureName(feat: any): string {
|
|
249
179
|
if (null == feat.Name) {
|
|
250
180
|
names(feat, feat.name)
|