@voxgig/sdkgen 4.20.0 → 4.21.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (966) hide show
  1. package/bin/voxgig-sdkgen +1 -1
  2. package/dist/helpers/applicability.js +11 -6
  3. package/dist/helpers/applicability.js.map +1 -1
  4. package/dist/helpers/collectDeps.js +31 -6
  5. package/dist/helpers/collectDeps.js.map +1 -1
  6. package/dist/helpers/naming.js +2 -2
  7. package/dist/helpers/naming.js.map +1 -1
  8. package/dist/tsconfig.tsbuildinfo +1 -1
  9. package/model/sdkgen.aon +49 -3
  10. package/package.json +1 -1
  11. package/project/.sdk/model/feature/secrets.aon +128 -0
  12. package/project/.sdk/model/feature/validate.aon +3 -2
  13. package/project/.sdk/model/target/c.aon +1 -1
  14. package/project/.sdk/model/target/clojure.aon +1 -1
  15. package/project/.sdk/model/target/cpp.aon +1 -1
  16. package/project/.sdk/model/target/csharp.aon +1 -1
  17. package/project/.sdk/model/target/elixir.aon +1 -1
  18. package/project/.sdk/model/target/go.aon +1 -1
  19. package/project/.sdk/model/target/java.aon +1 -1
  20. package/project/.sdk/model/target/kotlin.aon +1 -1
  21. package/project/.sdk/model/target/lua.aon +1 -1
  22. package/project/.sdk/model/target/ocaml.aon +1 -1
  23. package/project/.sdk/model/target/perl.aon +1 -1
  24. package/project/.sdk/model/target/php.aon +1 -1
  25. package/project/.sdk/model/target/py.aon +1 -1
  26. package/project/.sdk/model/target/rb.aon +1 -1
  27. package/project/.sdk/model/target/rust.aon +1 -1
  28. package/project/.sdk/model/target/scala.aon +1 -1
  29. package/project/.sdk/model/target/swift.aon +1 -1
  30. package/project/.sdk/model/target/zig.aon +1 -1
  31. package/project/.sdk/src/cmp/c/Main_c.ts +3 -0
  32. package/project/.sdk/src/cmp/c/Schema_c.ts +106 -0
  33. package/project/.sdk/src/cmp/clojure/Main_clojure.ts +2 -0
  34. package/project/.sdk/src/cmp/clojure/ReadmeExplanation_clojure.ts +1 -0
  35. package/project/.sdk/src/cmp/clojure/Schema_clojure.ts +73 -0
  36. package/project/.sdk/src/cmp/cpp/Main_cpp.ts +3 -0
  37. package/project/.sdk/src/cmp/cpp/Schema_cpp.ts +105 -0
  38. package/project/.sdk/src/cmp/csharp/Main_csharp.ts +3 -0
  39. package/project/.sdk/src/cmp/csharp/Schema_csharp.ts +85 -0
  40. package/project/.sdk/src/cmp/elixir/Main_elixir.ts +2 -0
  41. package/project/.sdk/src/cmp/elixir/ReadmeExplanation_elixir.ts +1 -0
  42. package/project/.sdk/src/cmp/elixir/Schema_elixir.ts +88 -0
  43. package/project/.sdk/src/cmp/go/Main_go.ts +2 -0
  44. package/project/.sdk/src/cmp/go/Schema_go.ts +93 -0
  45. package/project/.sdk/src/cmp/java/Main_java.ts +2 -0
  46. package/project/.sdk/src/cmp/java/Schema_java.ts +125 -0
  47. package/project/.sdk/src/cmp/kotlin/Main_kotlin.ts +2 -0
  48. package/project/.sdk/src/cmp/kotlin/Schema_kotlin.ts +111 -0
  49. package/project/.sdk/src/cmp/lua/Main_lua.ts +46 -9
  50. package/project/.sdk/src/cmp/lua/Package_lua.ts +1 -0
  51. package/project/.sdk/src/cmp/lua/ReadmeExplanation_lua.ts +1 -0
  52. package/project/.sdk/src/cmp/lua/Schema_lua.ts +72 -0
  53. package/project/.sdk/src/cmp/ocaml/Config_ocaml.ts +24 -1
  54. package/project/.sdk/src/cmp/ocaml/Main_ocaml.ts +34 -13
  55. package/project/.sdk/src/cmp/ocaml/ReadmeExplanation_ocaml.ts +1 -0
  56. package/project/.sdk/src/cmp/ocaml/Schema_ocaml.ts +99 -0
  57. package/project/.sdk/src/cmp/perl/Main_perl.ts +2 -0
  58. package/project/.sdk/src/cmp/perl/ReadmeExplanation_perl.ts +1 -0
  59. package/project/.sdk/src/cmp/perl/Schema_perl.ts +107 -0
  60. package/project/.sdk/src/cmp/php/Main_php.ts +2 -0
  61. package/project/.sdk/src/cmp/php/Package_php.ts +1 -1
  62. package/project/.sdk/src/cmp/php/ReadmeExplanation_php.ts +1 -0
  63. package/project/.sdk/src/cmp/php/Schema_php.ts +129 -0
  64. package/project/.sdk/src/cmp/py/Main_py.ts +2 -0
  65. package/project/.sdk/src/cmp/py/ReadmeExplanation_py.ts +1 -0
  66. package/project/.sdk/src/cmp/py/Schema_py.ts +72 -0
  67. package/project/.sdk/src/cmp/rb/Main_rb.ts +2 -0
  68. package/project/.sdk/src/cmp/rb/ReadmeExplanation_rb.ts +1 -0
  69. package/project/.sdk/src/cmp/rb/Schema_rb.ts +70 -0
  70. package/project/.sdk/src/cmp/rust/Main_rust.ts +3 -0
  71. package/project/.sdk/src/cmp/rust/Schema_rust.ts +107 -0
  72. package/project/.sdk/src/cmp/scala/Main_scala.ts +3 -0
  73. package/project/.sdk/src/cmp/scala/Schema_scala.ts +108 -0
  74. package/project/.sdk/src/cmp/swift/Main_swift.ts +3 -0
  75. package/project/.sdk/src/cmp/swift/Schema_swift.ts +92 -0
  76. package/project/.sdk/src/cmp/zig/Main_zig.ts +3 -0
  77. package/project/.sdk/src/cmp/zig/Schema_zig.ts +114 -0
  78. package/project/.sdk/tm/c/core/context.c +3 -0
  79. package/project/.sdk/tm/c/core/sdk.h +14 -0
  80. package/project/.sdk/tm/c/feature/secrets/plugin/capability.c +2 -2
  81. package/project/.sdk/tm/c/feature/secrets/plugin/capability.h +2 -2
  82. package/project/.sdk/tm/c/feature/secrets/plugin/catalog.c +2 -2
  83. package/project/.sdk/tm/c/feature/secrets/plugin/catalog.h +2 -2
  84. package/project/.sdk/tm/c/feature/secrets/plugin/config.c +2 -2
  85. package/project/.sdk/tm/c/feature/secrets/plugin/config.h +2 -2
  86. package/project/.sdk/tm/c/feature/secrets/plugin/depend.c +2 -2
  87. package/project/.sdk/tm/c/feature/secrets/plugin/depend.h +2 -2
  88. package/project/.sdk/tm/c/feature/secrets/plugin/env.c +2 -2
  89. package/project/.sdk/tm/c/feature/secrets/plugin/env.h +2 -2
  90. package/project/.sdk/tm/c/feature/secrets/plugin/export.c +3 -3
  91. package/project/.sdk/tm/c/feature/secrets/plugin/export.h +2 -2
  92. package/project/.sdk/tm/c/feature/secrets/plugin/graph.c +2 -2
  93. package/project/.sdk/tm/c/feature/secrets/plugin/graph.h +2 -2
  94. package/project/.sdk/tm/c/feature/secrets/plugin/host.c +25 -2
  95. package/project/.sdk/tm/c/feature/secrets/plugin/host.h +3 -2
  96. package/project/.sdk/tm/c/feature/secrets/plugin/order.c +2 -2
  97. package/project/.sdk/tm/c/feature/secrets/plugin/order.h +2 -2
  98. package/project/.sdk/tm/c/feature/secrets/plugin/point.c +2 -2
  99. package/project/.sdk/tm/c/feature/secrets/plugin/point.h +2 -2
  100. package/project/.sdk/tm/c/feature/secrets/plugin/ref.c +2 -2
  101. package/project/.sdk/tm/c/feature/secrets/plugin/ref.h +2 -2
  102. package/project/.sdk/tm/c/feature/secrets/plugin/resolve.c +2 -2
  103. package/project/.sdk/tm/c/feature/secrets/plugin/resolve.h +2 -2
  104. package/project/.sdk/tm/c/feature/secrets/plugin/types.c +2 -2
  105. package/project/.sdk/tm/c/feature/secrets/plugin/types.h +2 -2
  106. package/project/.sdk/tm/c/feature/secrets/plugin/value.c +2 -2
  107. package/project/.sdk/tm/c/feature/secrets/plugin/value.h +2 -2
  108. package/project/.sdk/tm/c/feature/secrets/plugin/version.c +2 -2
  109. package/project/.sdk/tm/c/feature/secrets/plugin/version.h +2 -2
  110. package/project/.sdk/tm/c/feature/secrets/plugins/aws.c +2 -2
  111. package/project/.sdk/tm/c/feature/secrets/plugins/azuresecrets.c +2 -2
  112. package/project/.sdk/tm/c/feature/secrets/plugins/boru.c +2 -2
  113. package/project/.sdk/tm/c/feature/secrets/plugins/clock.c +2 -2
  114. package/project/.sdk/tm/c/feature/secrets/plugins/doppler.c +2 -2
  115. package/project/.sdk/tm/c/feature/secrets/plugins/encode.c +2 -2
  116. package/project/.sdk/tm/c/feature/secrets/plugins/gcpsecrets.c +2 -2
  117. package/project/.sdk/tm/c/feature/secrets/plugins/hashicorp.c +2 -2
  118. package/project/.sdk/tm/c/feature/secrets/plugins/httpjson.c +2 -2
  119. package/project/.sdk/tm/c/feature/secrets/plugins/infisical.c +2 -2
  120. package/project/.sdk/tm/c/feature/secrets/plugins/minivault.c +2072 -0
  121. package/project/.sdk/tm/c/feature/secrets/plugins/onepassword.c +2 -2
  122. package/project/.sdk/tm/c/feature/secrets/plugins/proc.c +2 -2
  123. package/project/.sdk/tm/c/feature/secrets/plugins/secretspec.c +2 -2
  124. package/project/.sdk/tm/c/feature/secrets/plugins/sekretoplugins.h +151 -10
  125. package/project/.sdk/tm/c/feature/secrets/plugins/sha256.c +16 -10
  126. package/project/.sdk/tm/c/feature/secrets/plugins/sigv4.c +2 -2
  127. package/project/.sdk/tm/c/feature/secrets/plugins/support.h +12 -8
  128. package/project/.sdk/tm/c/feature/secrets/plugins/tls.c +2 -2
  129. package/project/.sdk/tm/c/feature/secrets/sekreto/internal.h +17 -2
  130. package/project/.sdk/tm/c/feature/secrets/sekreto/json.c +5 -5
  131. package/project/.sdk/tm/c/feature/secrets/sekreto/providers.c +37 -9
  132. package/project/.sdk/tm/c/feature/secrets/sekreto/sekreto.c +2 -2
  133. package/project/.sdk/tm/c/feature/secrets/sekreto/sekreto.h +17 -2
  134. package/project/.sdk/tm/c/feature/secrets/sekreto/util.c +16 -2
  135. package/project/.sdk/tm/c/feature/validate.c +364 -0
  136. package/project/.sdk/tm/c/feature/validate.h +29 -0
  137. package/project/.sdk/tm/c/src/feature/validate/.gitkeep +0 -0
  138. package/project/.sdk/tm/c/tests/vendor/omni/json.c +2 -2
  139. package/project/.sdk/tm/c/tests/vendor/omni/omni.h +2 -2
  140. package/project/.sdk/tm/c/tests/vendor/omni/runner.c +2 -2
  141. package/project/.sdk/tm/c/tests/vendor/omni/util.c +2 -2
  142. package/project/.sdk/tm/c/utility/make_options.c +12 -24
  143. package/project/.sdk/tm/c/utility/make_spec.c +8 -0
  144. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin/capability.clj +2 -2
  145. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin/catalog.clj +2 -2
  146. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin/config.clj +2 -2
  147. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin/depend.clj +2 -2
  148. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin/env.clj +2 -2
  149. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin/export.clj +3 -3
  150. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin/graph.clj +2 -2
  151. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin/host.clj +17 -2
  152. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin/json.clj +2 -2
  153. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin/order.clj +2 -2
  154. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin/point.clj +2 -2
  155. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin/ref.clj +2 -2
  156. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin/resolve.clj +2 -2
  157. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin/types.clj +2 -2
  158. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin/version.clj +2 -2
  159. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin.clj +2 -2
  160. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/addr.clj +2 -2
  161. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/chain.clj +2 -2
  162. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/core.clj +2 -2
  163. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/json.clj +2 -2
  164. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/plugins/aws.clj +2 -2
  165. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/plugins/azuresecrets.clj +2 -2
  166. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/plugins/boru.clj +2 -2
  167. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/plugins/doppler.clj +2 -2
  168. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/plugins/gcpsecrets.clj +2 -2
  169. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/plugins/hashicorp.clj +2 -2
  170. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/plugins/httpjson.clj +2 -2
  171. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/plugins/infisical.clj +2 -2
  172. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/plugins/minivault.clj +837 -0
  173. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/plugins/onepassword.clj +2 -2
  174. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/plugins/proc.clj +2 -2
  175. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/plugins/secretspec.clj +2 -2
  176. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/plugins/sigv4.clj +2 -2
  177. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/provider.clj +2 -2
  178. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/providers.clj +6 -4
  179. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto.clj +2 -2
  180. package/project/.sdk/tm/clojure/src/feature/validate/.gitkeep +0 -0
  181. package/project/.sdk/tm/clojure/src/sdk/core.clj +31 -41
  182. package/project/.sdk/tm/clojure/src/sdk/features.clj +202 -0
  183. package/project/.sdk/tm/clojure/test/vendor/omni/voxgig/omni/json.clj +2 -2
  184. package/project/.sdk/tm/clojure/test/vendor/omni/voxgig/omni/runner.clj +2 -2
  185. package/project/.sdk/tm/clojure/test/vendor/omni/voxgig/omni/util.clj +2 -2
  186. package/project/.sdk/tm/cpp/core/types.hpp +4 -0
  187. package/project/.sdk/tm/cpp/feature/secrets/plugin/capability.cpp +2 -2
  188. package/project/.sdk/tm/cpp/feature/secrets/plugin/capability.hpp +2 -2
  189. package/project/.sdk/tm/cpp/feature/secrets/plugin/catalog.cpp +2 -2
  190. package/project/.sdk/tm/cpp/feature/secrets/plugin/catalog.hpp +2 -2
  191. package/project/.sdk/tm/cpp/feature/secrets/plugin/config.cpp +2 -2
  192. package/project/.sdk/tm/cpp/feature/secrets/plugin/config.hpp +2 -2
  193. package/project/.sdk/tm/cpp/feature/secrets/plugin/depend.cpp +2 -2
  194. package/project/.sdk/tm/cpp/feature/secrets/plugin/depend.hpp +2 -2
  195. package/project/.sdk/tm/cpp/feature/secrets/plugin/env.cpp +2 -2
  196. package/project/.sdk/tm/cpp/feature/secrets/plugin/env.hpp +2 -2
  197. package/project/.sdk/tm/cpp/feature/secrets/plugin/export.cpp +3 -3
  198. package/project/.sdk/tm/cpp/feature/secrets/plugin/export.hpp +2 -2
  199. package/project/.sdk/tm/cpp/feature/secrets/plugin/graph.cpp +2 -2
  200. package/project/.sdk/tm/cpp/feature/secrets/plugin/graph.hpp +2 -2
  201. package/project/.sdk/tm/cpp/feature/secrets/plugin/host.cpp +21 -2
  202. package/project/.sdk/tm/cpp/feature/secrets/plugin/host.hpp +3 -2
  203. package/project/.sdk/tm/cpp/feature/secrets/plugin/order.cpp +2 -2
  204. package/project/.sdk/tm/cpp/feature/secrets/plugin/order.hpp +2 -2
  205. package/project/.sdk/tm/cpp/feature/secrets/plugin/point.cpp +2 -2
  206. package/project/.sdk/tm/cpp/feature/secrets/plugin/point.hpp +2 -2
  207. package/project/.sdk/tm/cpp/feature/secrets/plugin/ref.cpp +2 -2
  208. package/project/.sdk/tm/cpp/feature/secrets/plugin/ref.hpp +2 -2
  209. package/project/.sdk/tm/cpp/feature/secrets/plugin/resolve.cpp +2 -2
  210. package/project/.sdk/tm/cpp/feature/secrets/plugin/resolve.hpp +2 -2
  211. package/project/.sdk/tm/cpp/feature/secrets/plugin/types.cpp +2 -2
  212. package/project/.sdk/tm/cpp/feature/secrets/plugin/types.hpp +2 -2
  213. package/project/.sdk/tm/cpp/feature/secrets/plugin/value.cpp +2 -2
  214. package/project/.sdk/tm/cpp/feature/secrets/plugin/value.hpp +2 -2
  215. package/project/.sdk/tm/cpp/feature/secrets/plugin/version.cpp +2 -2
  216. package/project/.sdk/tm/cpp/feature/secrets/plugin/version.hpp +2 -2
  217. package/project/.sdk/tm/cpp/feature/secrets/plugins/Aws.cpp +2 -2
  218. package/project/.sdk/tm/cpp/feature/secrets/plugins/Aws.hpp +2 -2
  219. package/project/.sdk/tm/cpp/feature/secrets/plugins/Azuresecrets.cpp +2 -2
  220. package/project/.sdk/tm/cpp/feature/secrets/plugins/Azuresecrets.hpp +2 -2
  221. package/project/.sdk/tm/cpp/feature/secrets/plugins/Boru.cpp +2 -2
  222. package/project/.sdk/tm/cpp/feature/secrets/plugins/Boru.hpp +2 -2
  223. package/project/.sdk/tm/cpp/feature/secrets/plugins/Crypto.cpp +2 -2
  224. package/project/.sdk/tm/cpp/feature/secrets/plugins/Crypto.hpp +9 -7
  225. package/project/.sdk/tm/cpp/feature/secrets/plugins/Doppler.cpp +2 -2
  226. package/project/.sdk/tm/cpp/feature/secrets/plugins/Doppler.hpp +2 -2
  227. package/project/.sdk/tm/cpp/feature/secrets/plugins/Gcpsecrets.cpp +2 -2
  228. package/project/.sdk/tm/cpp/feature/secrets/plugins/Gcpsecrets.hpp +2 -2
  229. package/project/.sdk/tm/cpp/feature/secrets/plugins/Hashicorp.cpp +2 -2
  230. package/project/.sdk/tm/cpp/feature/secrets/plugins/Hashicorp.hpp +2 -2
  231. package/project/.sdk/tm/cpp/feature/secrets/plugins/Httpjson.cpp +2 -2
  232. package/project/.sdk/tm/cpp/feature/secrets/plugins/Httpjson.hpp +2 -2
  233. package/project/.sdk/tm/cpp/feature/secrets/plugins/Infisical.cpp +2 -2
  234. package/project/.sdk/tm/cpp/feature/secrets/plugins/Infisical.hpp +2 -2
  235. package/project/.sdk/tm/cpp/feature/secrets/plugins/Minivault.cpp +1345 -0
  236. package/project/.sdk/tm/cpp/feature/secrets/plugins/Minivault.hpp +219 -0
  237. package/project/.sdk/tm/cpp/feature/secrets/plugins/Onepassword.cpp +2 -2
  238. package/project/.sdk/tm/cpp/feature/secrets/plugins/Onepassword.hpp +2 -2
  239. package/project/.sdk/tm/cpp/feature/secrets/plugins/Proc.cpp +2 -2
  240. package/project/.sdk/tm/cpp/feature/secrets/plugins/Proc.hpp +2 -2
  241. package/project/.sdk/tm/cpp/feature/secrets/plugins/Secretspec.cpp +2 -2
  242. package/project/.sdk/tm/cpp/feature/secrets/plugins/Secretspec.hpp +2 -2
  243. package/project/.sdk/tm/cpp/feature/secrets/plugins/Sigv4.cpp +2 -2
  244. package/project/.sdk/tm/cpp/feature/secrets/plugins/Sigv4.hpp +2 -2
  245. package/project/.sdk/tm/cpp/feature/secrets/plugins/Tls.cpp +2 -2
  246. package/project/.sdk/tm/cpp/feature/secrets/plugins/Tls.hpp +2 -2
  247. package/project/.sdk/tm/cpp/feature/secrets/sekreto/Json.cpp +2 -2
  248. package/project/.sdk/tm/cpp/feature/secrets/sekreto/Json.hpp +2 -2
  249. package/project/.sdk/tm/cpp/feature/secrets/sekreto/Provider.cpp +22 -2
  250. package/project/.sdk/tm/cpp/feature/secrets/sekreto/Provider.hpp +12 -2
  251. package/project/.sdk/tm/cpp/feature/secrets/sekreto/Providers.cpp +3 -3
  252. package/project/.sdk/tm/cpp/feature/secrets/sekreto/Providers.hpp +2 -2
  253. package/project/.sdk/tm/cpp/feature/secrets/sekreto/Sekreto.cpp +2 -2
  254. package/project/.sdk/tm/cpp/feature/secrets/sekreto/Sekreto.hpp +2 -2
  255. package/project/.sdk/tm/cpp/feature/validate.hpp +301 -0
  256. package/project/.sdk/tm/cpp/src/feature/validate/.gitkeep +0 -0
  257. package/project/.sdk/tm/cpp/test/vendor/omni/json.hpp +2 -2
  258. package/project/.sdk/tm/cpp/test/vendor/omni/omni.hpp +2 -2
  259. package/project/.sdk/tm/cpp/test/vendor/omni/util.hpp +2 -2
  260. package/project/.sdk/tm/cpp/utility/pipeline.hpp +24 -41
  261. package/project/.sdk/tm/csharp/feature/ValidateFeature.cs +343 -0
  262. package/project/.sdk/tm/csharp/feature/secrets/plugin/Capability.cs +2 -2
  263. package/project/.sdk/tm/csharp/feature/secrets/plugin/Catalog.cs +2 -2
  264. package/project/.sdk/tm/csharp/feature/secrets/plugin/Config.cs +2 -2
  265. package/project/.sdk/tm/csharp/feature/secrets/plugin/Definition.cs +2 -2
  266. package/project/.sdk/tm/csharp/feature/secrets/plugin/Depend.cs +2 -2
  267. package/project/.sdk/tm/csharp/feature/secrets/plugin/Entry.cs +2 -2
  268. package/project/.sdk/tm/csharp/feature/secrets/plugin/Env.cs +2 -2
  269. package/project/.sdk/tm/csharp/feature/secrets/plugin/Export.cs +3 -3
  270. package/project/.sdk/tm/csharp/feature/secrets/plugin/Graph.cs +2 -2
  271. package/project/.sdk/tm/csharp/feature/secrets/plugin/Host.cs +9 -2
  272. package/project/.sdk/tm/csharp/feature/secrets/plugin/Inst.cs +21 -2
  273. package/project/.sdk/tm/csharp/feature/secrets/plugin/Json.cs +2 -2
  274. package/project/.sdk/tm/csharp/feature/secrets/plugin/Order.cs +2 -2
  275. package/project/.sdk/tm/csharp/feature/secrets/plugin/Plugin.cs +2 -2
  276. package/project/.sdk/tm/csharp/feature/secrets/plugin/Point.cs +2 -2
  277. package/project/.sdk/tm/csharp/feature/secrets/plugin/Refs.cs +2 -2
  278. package/project/.sdk/tm/csharp/feature/secrets/plugin/Resolve.cs +2 -2
  279. package/project/.sdk/tm/csharp/feature/secrets/plugin/Types.cs +2 -2
  280. package/project/.sdk/tm/csharp/feature/secrets/plugin/Version.cs +2 -2
  281. package/project/.sdk/tm/csharp/feature/secrets/plugins/Aws.cs +2 -2
  282. package/project/.sdk/tm/csharp/feature/secrets/plugins/AzureSecrets.cs +2 -2
  283. package/project/.sdk/tm/csharp/feature/secrets/plugins/Boru.cs +2 -2
  284. package/project/.sdk/tm/csharp/feature/secrets/plugins/Child.cs +2 -2
  285. package/project/.sdk/tm/csharp/feature/secrets/plugins/Doppler.cs +2 -2
  286. package/project/.sdk/tm/csharp/feature/secrets/plugins/GcpSecrets.cs +2 -2
  287. package/project/.sdk/tm/csharp/feature/secrets/plugins/Hashicorp.cs +2 -2
  288. package/project/.sdk/tm/csharp/feature/secrets/plugins/HttpJson.cs +2 -2
  289. package/project/.sdk/tm/csharp/feature/secrets/plugins/Infisical.cs +2 -2
  290. package/project/.sdk/tm/csharp/feature/secrets/plugins/MiniVault.cs +1572 -0
  291. package/project/.sdk/tm/csharp/feature/secrets/plugins/OnePassword.cs +2 -2
  292. package/project/.sdk/tm/csharp/feature/secrets/plugins/SecretSpec.cs +2 -2
  293. package/project/.sdk/tm/csharp/feature/secrets/plugins/Sigv4.cs +2 -2
  294. package/project/.sdk/tm/csharp/feature/secrets/sekreto/Json.cs +2 -2
  295. package/project/.sdk/tm/csharp/feature/secrets/sekreto/Providers.cs +3 -2
  296. package/project/.sdk/tm/csharp/feature/secrets/sekreto/Sekreto.cs +2 -2
  297. package/project/.sdk/tm/csharp/src/feature/validate/.gitkeep +0 -0
  298. package/project/.sdk/tm/csharp/test/vendor/omni/Runner.cs +2 -2
  299. package/project/.sdk/tm/csharp/test/vendor/omni/Util.cs +2 -2
  300. package/project/.sdk/tm/csharp/utility/MakeOptions.cs +12 -85
  301. package/project/.sdk/tm/csharp/utility/struct/Struct.cs +24 -3
  302. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/capability.ex +2 -2
  303. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/catalog.ex +2 -2
  304. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/config.ex +2 -2
  305. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/depend.ex +2 -2
  306. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/env.ex +2 -2
  307. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/error.ex +2 -2
  308. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/export.ex +7 -4
  309. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/graph.ex +2 -2
  310. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/host.ex +13 -2
  311. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/inst.ex +15 -2
  312. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/json.ex +2 -2
  313. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/order.ex +2 -2
  314. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/point.ex +2 -2
  315. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/ref.ex +2 -2
  316. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/resolve.ex +2 -2
  317. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/types.ex +2 -2
  318. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/version.ex +2 -2
  319. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/voxgig_plugin.ex +2 -2
  320. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/json.ex +2 -2
  321. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/plugins/aws.ex +2 -2
  322. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/plugins/azuresecrets.ex +2 -2
  323. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/plugins/boru.ex +2 -2
  324. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/plugins/doppler.ex +2 -2
  325. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/plugins/gcpsecrets.ex +2 -2
  326. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/plugins/hashicorp.ex +2 -2
  327. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/plugins/http.ex +3 -3
  328. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/plugins/httpjson.ex +3 -3
  329. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/plugins/infisical.ex +2 -2
  330. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/plugins/minivault.ex +1033 -0
  331. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/plugins/onepassword.ex +2 -2
  332. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/plugins/proc.ex +2 -2
  333. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/plugins/secretspec.ex +2 -2
  334. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/plugins/sigv4.ex +2 -2
  335. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/provider.ex +2 -2
  336. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/providers.ex +17 -5
  337. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/sekreto.ex +2 -2
  338. package/project/.sdk/tm/elixir/lib/projectname/feature/validate.ex +320 -0
  339. package/project/.sdk/tm/elixir/lib/projectname/utility.ex +10 -46
  340. package/project/.sdk/tm/elixir/src/feature/validate/.gitkeep +0 -0
  341. package/project/.sdk/tm/elixir/test/vendor/omni/json.ex +2 -2
  342. package/project/.sdk/tm/elixir/test/vendor/omni/runner.ex +2 -2
  343. package/project/.sdk/tm/elixir/test/vendor/omni/util.ex +2 -2
  344. package/project/.sdk/tm/go/feature/secrets/plugin/capability.go +1 -1
  345. package/project/.sdk/tm/go/feature/secrets/plugin/catalog.go +1 -1
  346. package/project/.sdk/tm/go/feature/secrets/plugin/config.go +1 -1
  347. package/project/.sdk/tm/go/feature/secrets/plugin/depend.go +1 -1
  348. package/project/.sdk/tm/go/feature/secrets/plugin/env.go +1 -1
  349. package/project/.sdk/tm/go/feature/secrets/plugin/export.go +2 -2
  350. package/project/.sdk/tm/go/feature/secrets/plugin/graph.go +1 -1
  351. package/project/.sdk/tm/go/feature/secrets/plugin/host.go +25 -1
  352. package/project/.sdk/tm/go/feature/secrets/plugin/order.go +1 -1
  353. package/project/.sdk/tm/go/feature/secrets/plugin/point.go +1 -1
  354. package/project/.sdk/tm/go/feature/secrets/plugin/ref.go +1 -1
  355. package/project/.sdk/tm/go/feature/secrets/plugin/resolve.go +1 -1
  356. package/project/.sdk/tm/go/feature/secrets/plugin/types.go +1 -1
  357. package/project/.sdk/tm/go/feature/secrets/plugin/util.go +1 -1
  358. package/project/.sdk/tm/go/feature/secrets/plugin/version.go +1 -1
  359. package/project/.sdk/tm/go/feature/secrets/plugins/aws/aws.go +2 -2
  360. package/project/.sdk/tm/go/feature/secrets/plugins/aws/sigv4.go +2 -2
  361. package/project/.sdk/tm/go/feature/secrets/plugins/azuresecrets/azuresecrets.go +2 -2
  362. package/project/.sdk/tm/go/feature/secrets/plugins/boru/boru.go +2 -2
  363. package/project/.sdk/tm/go/feature/secrets/plugins/doppler/doppler.go +2 -2
  364. package/project/.sdk/tm/go/feature/secrets/plugins/gcpsecrets/gcpsecrets.go +2 -2
  365. package/project/.sdk/tm/go/feature/secrets/plugins/hashicorp/hashicorp.go +2 -2
  366. package/project/.sdk/tm/go/feature/secrets/plugins/httpjson/httpjson.go +2 -2
  367. package/project/.sdk/tm/go/feature/secrets/plugins/infisical/infisical.go +2 -2
  368. package/project/.sdk/tm/go/feature/secrets/plugins/minivault/format.go +493 -0
  369. package/project/.sdk/tm/go/feature/secrets/plugins/minivault/minivault.go +1131 -0
  370. package/project/.sdk/tm/go/feature/secrets/plugins/onepassword/onepassword.go +2 -2
  371. package/project/.sdk/tm/go/feature/secrets/plugins/secretspec/secretspec.go +2 -2
  372. package/project/.sdk/tm/go/feature/secrets/sekreto/addr.go +2 -2
  373. package/project/.sdk/tm/go/feature/secrets/sekreto/providers.go +14 -2
  374. package/project/.sdk/tm/go/feature/secrets/sekreto/sekreto.go +2 -2
  375. package/project/.sdk/tm/go/feature/validate_feature.go +346 -0
  376. package/project/.sdk/tm/go/src/feature/validate/.gitkeep +0 -0
  377. package/project/.sdk/tm/go/test/omni/omni.go +2 -2
  378. package/project/.sdk/tm/go/test/omni/util.go +2 -2
  379. package/project/.sdk/tm/go/utility/make_options.go +13 -54
  380. package/project/.sdk/tm/go/utility/struct/voxgigstruct.go +24 -8
  381. package/project/.sdk/tm/java/feature/ValidateFeature.java +330 -0
  382. package/project/.sdk/tm/java/feature/secrets/plugin/Capability.java +2 -2
  383. package/project/.sdk/tm/java/feature/secrets/plugin/Catalog.java +2 -2
  384. package/project/.sdk/tm/java/feature/secrets/plugin/Config.java +2 -2
  385. package/project/.sdk/tm/java/feature/secrets/plugin/Definition.java +2 -2
  386. package/project/.sdk/tm/java/feature/secrets/plugin/Depend.java +2 -2
  387. package/project/.sdk/tm/java/feature/secrets/plugin/Entry.java +2 -2
  388. package/project/.sdk/tm/java/feature/secrets/plugin/Env.java +2 -2
  389. package/project/.sdk/tm/java/feature/secrets/plugin/Export.java +3 -3
  390. package/project/.sdk/tm/java/feature/secrets/plugin/Graph.java +2 -2
  391. package/project/.sdk/tm/java/feature/secrets/plugin/Host.java +3 -3
  392. package/project/.sdk/tm/java/feature/secrets/plugin/Inst.java +21 -2
  393. package/project/.sdk/tm/java/feature/secrets/plugin/Json.java +2 -2
  394. package/project/.sdk/tm/java/feature/secrets/plugin/Order.java +2 -2
  395. package/project/.sdk/tm/java/feature/secrets/plugin/Plugin.java +2 -2
  396. package/project/.sdk/tm/java/feature/secrets/plugin/PluginException.java +2 -2
  397. package/project/.sdk/tm/java/feature/secrets/plugin/Point.java +2 -2
  398. package/project/.sdk/tm/java/feature/secrets/plugin/Refs.java +2 -2
  399. package/project/.sdk/tm/java/feature/secrets/plugin/Resolve.java +2 -2
  400. package/project/.sdk/tm/java/feature/secrets/plugin/Types.java +2 -2
  401. package/project/.sdk/tm/java/feature/secrets/plugin/Version.java +2 -2
  402. package/project/.sdk/tm/java/feature/secrets/sekreto/Addr.java +2 -2
  403. package/project/.sdk/tm/java/feature/secrets/sekreto/Builtins.java +4 -3
  404. package/project/.sdk/tm/java/feature/secrets/sekreto/Json.java +2 -2
  405. package/project/.sdk/tm/java/feature/secrets/sekreto/Provider.java +2 -2
  406. package/project/.sdk/tm/java/feature/secrets/sekreto/Sekreto.java +2 -2
  407. package/project/.sdk/tm/java/feature/secrets/sekreto/Support.java +2 -2
  408. package/project/.sdk/tm/java/feature/secrets/sekreto/plugins/Aws.java +2 -2
  409. package/project/.sdk/tm/java/feature/secrets/sekreto/plugins/Azuresecrets.java +2 -2
  410. package/project/.sdk/tm/java/feature/secrets/sekreto/plugins/Boru.java +2 -2
  411. package/project/.sdk/tm/java/feature/secrets/sekreto/plugins/Doppler.java +2 -2
  412. package/project/.sdk/tm/java/feature/secrets/sekreto/plugins/Gcpsecrets.java +2 -2
  413. package/project/.sdk/tm/java/feature/secrets/sekreto/plugins/Hashicorp.java +2 -2
  414. package/project/.sdk/tm/java/feature/secrets/sekreto/plugins/Httpjson.java +2 -2
  415. package/project/.sdk/tm/java/feature/secrets/sekreto/plugins/Infisical.java +2 -2
  416. package/project/.sdk/tm/java/feature/secrets/sekreto/plugins/Minivault.java +1448 -0
  417. package/project/.sdk/tm/java/feature/secrets/sekreto/plugins/Onepassword.java +2 -2
  418. package/project/.sdk/tm/java/feature/secrets/sekreto/plugins/Proc.java +2 -2
  419. package/project/.sdk/tm/java/feature/secrets/sekreto/plugins/Secretspec.java +2 -2
  420. package/project/.sdk/tm/java/feature/secrets/sekreto/plugins/Sigv4.java +2 -2
  421. package/project/.sdk/tm/java/src/feature/validate/.gitkeep +0 -0
  422. package/project/.sdk/tm/java/test/vendor/omni/Json.java +2 -2
  423. package/project/.sdk/tm/java/test/vendor/omni/Runner.java +2 -2
  424. package/project/.sdk/tm/java/test/vendor/omni/Util.java +2 -2
  425. package/project/.sdk/tm/java/utility/MakeOptions.java +13 -45
  426. package/project/.sdk/tm/java/utility/struct/Struct.java +1 -1
  427. package/project/.sdk/tm/js/src/feature/secrets/plugin/capability.js +2 -2
  428. package/project/.sdk/tm/js/src/feature/secrets/plugin/catalog.js +2 -2
  429. package/project/.sdk/tm/js/src/feature/secrets/plugin/config.js +2 -2
  430. package/project/.sdk/tm/js/src/feature/secrets/plugin/depend.js +2 -2
  431. package/project/.sdk/tm/js/src/feature/secrets/plugin/env.js +2 -2
  432. package/project/.sdk/tm/js/src/feature/secrets/plugin/export.js +3 -3
  433. package/project/.sdk/tm/js/src/feature/secrets/plugin/graph.js +2 -2
  434. package/project/.sdk/tm/js/src/feature/secrets/plugin/host.js +17 -2
  435. package/project/.sdk/tm/js/src/feature/secrets/plugin/index.js +2 -2
  436. package/project/.sdk/tm/js/src/feature/secrets/plugin/order.js +2 -2
  437. package/project/.sdk/tm/js/src/feature/secrets/plugin/point.js +2 -2
  438. package/project/.sdk/tm/js/src/feature/secrets/plugin/ref.js +2 -2
  439. package/project/.sdk/tm/js/src/feature/secrets/plugin/resolve.js +2 -2
  440. package/project/.sdk/tm/js/src/feature/secrets/plugin/types.js +2 -2
  441. package/project/.sdk/tm/js/src/feature/secrets/plugin/version.js +2 -2
  442. package/project/.sdk/tm/js/src/feature/secrets/sekreto/Sekreto.js +2 -2
  443. package/project/.sdk/tm/js/src/feature/secrets/sekreto/index.js +2 -2
  444. package/project/.sdk/tm/js/src/feature/secrets/sekreto/plugins/aws.js +2 -2
  445. package/project/.sdk/tm/js/src/feature/secrets/sekreto/plugins/azuresecrets.js +2 -2
  446. package/project/.sdk/tm/js/src/feature/secrets/sekreto/plugins/boru.js +2 -2
  447. package/project/.sdk/tm/js/src/feature/secrets/sekreto/plugins/doppler.js +2 -2
  448. package/project/.sdk/tm/js/src/feature/secrets/sekreto/plugins/gcpsecrets.js +2 -2
  449. package/project/.sdk/tm/js/src/feature/secrets/sekreto/plugins/hashicorp.js +2 -2
  450. package/project/.sdk/tm/js/src/feature/secrets/sekreto/plugins/httpjson.js +2 -2
  451. package/project/.sdk/tm/js/src/feature/secrets/sekreto/plugins/infisical.js +2 -2
  452. package/project/.sdk/tm/js/src/feature/secrets/sekreto/plugins/minivault.js +866 -0
  453. package/project/.sdk/tm/js/src/feature/secrets/sekreto/plugins/onepassword.js +2 -2
  454. package/project/.sdk/tm/js/src/feature/secrets/sekreto/plugins/secretspec.js +2 -2
  455. package/project/.sdk/tm/js/src/feature/secrets/sekreto/plugins/sigv4.js +2 -2
  456. package/project/.sdk/tm/js/src/feature/secrets/sekreto/provider/addr.js +2 -2
  457. package/project/.sdk/tm/js/src/feature/secrets/sekreto/provider/builtin.js +3 -2
  458. package/project/.sdk/tm/js/src/feature/secrets/sekreto/provider/dotenv.js +2 -2
  459. package/project/.sdk/tm/js/src/feature/secrets/sekreto/provider/env.js +2 -2
  460. package/project/.sdk/tm/js/src/feature/secrets/sekreto/provider/file.js +2 -2
  461. package/project/.sdk/tm/js/src/feature/secrets/sekreto/provider/memory.js +2 -2
  462. package/project/.sdk/tm/js/src/feature/secrets/sekreto/provider/support.js +2 -2
  463. package/project/.sdk/tm/js/src/utility/StructUtility.js +1 -1
  464. package/project/.sdk/tm/js/test/vendor/omni/index.js +1 -1
  465. package/project/.sdk/tm/js/test/vendor/omni/runner.js +1 -1
  466. package/project/.sdk/tm/js/test/vendor/omni/util.js +1 -1
  467. package/project/.sdk/tm/kotlin/feature/ValidateFeature.kt +297 -0
  468. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Capability.kt +2 -2
  469. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Catalog.kt +2 -2
  470. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Config.kt +2 -2
  471. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Depend.kt +2 -2
  472. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Env.kt +2 -2
  473. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Export.kt +3 -3
  474. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Graph.kt +2 -2
  475. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Host.kt +21 -2
  476. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Json.kt +2 -2
  477. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Order.kt +2 -2
  478. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Plugin.kt +2 -2
  479. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Point.kt +2 -2
  480. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Refs.kt +2 -2
  481. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Resolve.kt +2 -2
  482. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Types.kt +2 -2
  483. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Version.kt +2 -2
  484. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/Json.kt +2 -2
  485. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/Provider.kt +2 -2
  486. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/Providers.kt +3 -2
  487. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/Sekreto.kt +2 -2
  488. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/Spec.kt +14 -2
  489. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/Support.kt +10 -2
  490. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/plugins/Aws.kt +2 -2
  491. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/plugins/Azuresecrets.kt +2 -2
  492. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/plugins/Boru.kt +2 -2
  493. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/plugins/Doppler.kt +2 -2
  494. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/plugins/Gcpsecrets.kt +2 -2
  495. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/plugins/Hashicorp.kt +2 -2
  496. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/plugins/Httpjson.kt +2 -2
  497. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/plugins/Infisical.kt +2 -2
  498. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/plugins/Minivault.kt +1095 -0
  499. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/plugins/Onepassword.kt +2 -2
  500. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/plugins/Secretspec.kt +2 -2
  501. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/plugins/Sigv4.kt +2 -2
  502. package/project/.sdk/tm/kotlin/src/feature/validate/.gitkeep +0 -0
  503. package/project/.sdk/tm/kotlin/test/vendor/omni/Json.kt +2 -2
  504. package/project/.sdk/tm/kotlin/test/vendor/omni/Runner.kt +2 -2
  505. package/project/.sdk/tm/kotlin/test/vendor/omni/Util.kt +2 -2
  506. package/project/.sdk/tm/kotlin/utility/MakeOptions.kt +13 -35
  507. package/project/.sdk/tm/kotlin/utility/MakeSpecUrl.kt +6 -0
  508. package/project/.sdk/tm/kotlin/utility/struct/Struct.kt +1 -1
  509. package/project/.sdk/tm/lua/feature/secrets/native/sekretonet.c +2 -2
  510. package/project/.sdk/tm/lua/feature/secrets/native/sekretovault.c +240 -0
  511. package/project/.sdk/tm/lua/feature/secrets/plugin/capability.lua +2 -2
  512. package/project/.sdk/tm/lua/feature/secrets/plugin/catalog.lua +2 -2
  513. package/project/.sdk/tm/lua/feature/secrets/plugin/config.lua +2 -2
  514. package/project/.sdk/tm/lua/feature/secrets/plugin/depend.lua +2 -2
  515. package/project/.sdk/tm/lua/feature/secrets/plugin/env.lua +2 -2
  516. package/project/.sdk/tm/lua/feature/secrets/plugin/export.lua +12 -3
  517. package/project/.sdk/tm/lua/feature/secrets/plugin/graph.lua +2 -2
  518. package/project/.sdk/tm/lua/feature/secrets/plugin/host.lua +18 -2
  519. package/project/.sdk/tm/lua/feature/secrets/plugin/json.lua +2 -2
  520. package/project/.sdk/tm/lua/feature/secrets/plugin/order.lua +2 -2
  521. package/project/.sdk/tm/lua/feature/secrets/plugin/point.lua +2 -2
  522. package/project/.sdk/tm/lua/feature/secrets/plugin/ref.lua +2 -2
  523. package/project/.sdk/tm/lua/feature/secrets/plugin/resolve.lua +2 -2
  524. package/project/.sdk/tm/lua/feature/secrets/plugin/types.lua +2 -2
  525. package/project/.sdk/tm/lua/feature/secrets/plugin/version.lua +2 -2
  526. package/project/.sdk/tm/lua/feature/secrets/plugin.lua +2 -2
  527. package/project/.sdk/tm/lua/feature/secrets/sekreto/addr.lua +2 -2
  528. package/project/.sdk/tm/lua/feature/secrets/sekreto/err.lua +2 -2
  529. package/project/.sdk/tm/lua/feature/secrets/sekreto/name.lua +2 -2
  530. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/aws.lua +2 -2
  531. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/azuresecrets.lua +2 -2
  532. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/boru.lua +2 -2
  533. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/crypto.lua +2 -2
  534. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/doppler.lua +2 -2
  535. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/gcpsecrets.lua +2 -2
  536. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/hashicorp.lua +2 -2
  537. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/httpjson.lua +2 -2
  538. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/infisical.lua +2 -2
  539. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/json.lua +2 -2
  540. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/minivault.lua +1227 -0
  541. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/net.lua +2 -2
  542. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/onepassword.lua +2 -2
  543. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/secretspec.lua +2 -2
  544. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/sigv4.lua +2 -2
  545. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/support.lua +2 -2
  546. package/project/.sdk/tm/lua/feature/secrets/sekreto/providers.lua +3 -2
  547. package/project/.sdk/tm/lua/feature/secrets/sekreto.lua +2 -2
  548. package/project/.sdk/tm/lua/feature/validate_feature.lua +333 -0
  549. package/project/.sdk/tm/lua/src/feature/validate/.gitkeep +0 -0
  550. package/project/.sdk/tm/lua/test/vendor/omni/json.lua +2 -2
  551. package/project/.sdk/tm/lua/test/vendor/omni/regex.lua +2 -2
  552. package/project/.sdk/tm/lua/test/vendor/omni/runner.lua +2 -2
  553. package/project/.sdk/tm/lua/test/vendor/omni/util.lua +2 -2
  554. package/project/.sdk/tm/lua/utility/make_options.lua +74 -55
  555. package/project/.sdk/tm/lua/utility/make_spec.lua +8 -1
  556. package/project/.sdk/tm/lua/utility/struct/regex.lua +1 -1
  557. package/project/.sdk/tm/lua/utility/struct/struct.lua +1 -1
  558. package/project/.sdk/tm/ocaml/Makefile +12 -7
  559. package/project/.sdk/tm/ocaml/feature/secrets/plugin/capability.ml +2 -2
  560. package/project/.sdk/tm/ocaml/feature/secrets/plugin/catalog.ml +2 -2
  561. package/project/.sdk/tm/ocaml/feature/secrets/plugin/config.ml +2 -2
  562. package/project/.sdk/tm/ocaml/feature/secrets/plugin/defs.ml +2 -2
  563. package/project/.sdk/tm/ocaml/feature/secrets/plugin/depend.ml +2 -2
  564. package/project/.sdk/tm/ocaml/feature/secrets/plugin/env.ml +2 -2
  565. package/project/.sdk/tm/ocaml/feature/secrets/plugin/export.ml +5 -3
  566. package/project/.sdk/tm/ocaml/feature/secrets/plugin/graph.ml +2 -2
  567. package/project/.sdk/tm/ocaml/feature/secrets/plugin/host.ml +18 -2
  568. package/project/.sdk/tm/ocaml/feature/secrets/plugin/order.ml +2 -2
  569. package/project/.sdk/tm/ocaml/feature/secrets/plugin/point.ml +2 -2
  570. package/project/.sdk/tm/ocaml/feature/secrets/plugin/ref.ml +2 -2
  571. package/project/.sdk/tm/ocaml/feature/secrets/plugin/resolve.ml +2 -2
  572. package/project/.sdk/tm/ocaml/feature/secrets/plugin/types.ml +2 -2
  573. package/project/.sdk/tm/ocaml/feature/secrets/plugin/value.ml +2 -2
  574. package/project/.sdk/tm/ocaml/feature/secrets/plugin/version.ml +2 -2
  575. package/project/.sdk/tm/ocaml/feature/secrets/plugins/aws.ml +2 -2
  576. package/project/.sdk/tm/ocaml/feature/secrets/plugins/azuresecrets.ml +2 -2
  577. package/project/.sdk/tm/ocaml/feature/secrets/plugins/boru.ml +2 -2
  578. package/project/.sdk/tm/ocaml/feature/secrets/plugins/crypto.ml +2 -2
  579. package/project/.sdk/tm/ocaml/feature/secrets/plugins/doppler.ml +2 -2
  580. package/project/.sdk/tm/ocaml/feature/secrets/plugins/gcpsecrets.ml +2 -2
  581. package/project/.sdk/tm/ocaml/feature/secrets/plugins/hashicorp.ml +2 -2
  582. package/project/.sdk/tm/ocaml/feature/secrets/plugins/http.ml +2 -2
  583. package/project/.sdk/tm/ocaml/feature/secrets/plugins/httpjson.ml +2 -2
  584. package/project/.sdk/tm/ocaml/feature/secrets/plugins/infisical.ml +2 -2
  585. package/project/.sdk/tm/ocaml/feature/secrets/plugins/minivault.ml +1086 -0
  586. package/project/.sdk/tm/ocaml/feature/secrets/plugins/minivault_stubs.c +222 -0
  587. package/project/.sdk/tm/ocaml/feature/secrets/plugins/onepassword.ml +2 -2
  588. package/project/.sdk/tm/ocaml/feature/secrets/plugins/runcmd.ml +2 -2
  589. package/project/.sdk/tm/ocaml/feature/secrets/plugins/secretspec.ml +2 -2
  590. package/project/.sdk/tm/ocaml/feature/secrets/plugins/sigv4.ml +2 -2
  591. package/project/.sdk/tm/ocaml/feature/secrets/plugins/tls.ml +2 -2
  592. package/project/.sdk/tm/ocaml/feature/secrets/plugins/tls_stubs.c +2 -2
  593. package/project/.sdk/tm/ocaml/feature/secrets/sekreto/json.ml +2 -2
  594. package/project/.sdk/tm/ocaml/feature/secrets/sekreto/provider.ml +33 -3
  595. package/project/.sdk/tm/ocaml/feature/secrets/sekreto/secret.ml +2 -2
  596. package/project/.sdk/tm/ocaml/feature/secrets/sekreto/sekreto.ml +4 -3
  597. package/project/.sdk/tm/ocaml/sdk_features.ml +174 -0
  598. package/project/.sdk/tm/ocaml/sdk_runtime.ml +12 -37
  599. package/project/.sdk/tm/ocaml/src/feature/validate/.gitkeep +0 -0
  600. package/project/.sdk/tm/ocaml/test/vendor/omni/omni.ml +2 -2
  601. package/project/.sdk/tm/perl/core/helpers.pm +64 -16
  602. package/project/.sdk/tm/perl/feature/secrets/plugin/Voxgig/Plugin/Capability.pm +2 -2
  603. package/project/.sdk/tm/perl/feature/secrets/plugin/Voxgig/Plugin/Catalog.pm +2 -2
  604. package/project/.sdk/tm/perl/feature/secrets/plugin/Voxgig/Plugin/Config.pm +2 -2
  605. package/project/.sdk/tm/perl/feature/secrets/plugin/Voxgig/Plugin/Depend.pm +2 -2
  606. package/project/.sdk/tm/perl/feature/secrets/plugin/Voxgig/Plugin/Env.pm +2 -2
  607. package/project/.sdk/tm/perl/feature/secrets/plugin/Voxgig/Plugin/Export.pm +3 -3
  608. package/project/.sdk/tm/perl/feature/secrets/plugin/Voxgig/Plugin/Graph.pm +2 -2
  609. package/project/.sdk/tm/perl/feature/secrets/plugin/Voxgig/Plugin/Host.pm +19 -2
  610. package/project/.sdk/tm/perl/feature/secrets/plugin/Voxgig/Plugin/Order.pm +2 -2
  611. package/project/.sdk/tm/perl/feature/secrets/plugin/Voxgig/Plugin/Point.pm +2 -2
  612. package/project/.sdk/tm/perl/feature/secrets/plugin/Voxgig/Plugin/Ref.pm +2 -2
  613. package/project/.sdk/tm/perl/feature/secrets/plugin/Voxgig/Plugin/Resolve.pm +2 -2
  614. package/project/.sdk/tm/perl/feature/secrets/plugin/Voxgig/Plugin/Types.pm +2 -2
  615. package/project/.sdk/tm/perl/feature/secrets/plugin/Voxgig/Plugin/Version.pm +2 -2
  616. package/project/.sdk/tm/perl/feature/secrets/plugin/Voxgig/Plugin.pm +2 -2
  617. package/project/.sdk/tm/perl/feature/secrets/plugins/Voxgig/Sekreto/Plugins/Aws.pm +2 -2
  618. package/project/.sdk/tm/perl/feature/secrets/plugins/Voxgig/Sekreto/Plugins/Azuresecrets.pm +2 -2
  619. package/project/.sdk/tm/perl/feature/secrets/plugins/Voxgig/Sekreto/Plugins/Boru.pm +2 -2
  620. package/project/.sdk/tm/perl/feature/secrets/plugins/Voxgig/Sekreto/Plugins/Doppler.pm +2 -2
  621. package/project/.sdk/tm/perl/feature/secrets/plugins/Voxgig/Sekreto/Plugins/Gcpsecrets.pm +2 -2
  622. package/project/.sdk/tm/perl/feature/secrets/plugins/Voxgig/Sekreto/Plugins/Hashicorp.pm +2 -2
  623. package/project/.sdk/tm/perl/feature/secrets/plugins/Voxgig/Sekreto/Plugins/Httpjson.pm +2 -2
  624. package/project/.sdk/tm/perl/feature/secrets/plugins/Voxgig/Sekreto/Plugins/Infisical.pm +2 -2
  625. package/project/.sdk/tm/perl/feature/secrets/plugins/Voxgig/Sekreto/Plugins/Minivault.pm +1380 -0
  626. package/project/.sdk/tm/perl/feature/secrets/plugins/Voxgig/Sekreto/Plugins/Onepassword.pm +2 -2
  627. package/project/.sdk/tm/perl/feature/secrets/plugins/Voxgig/Sekreto/Plugins/Proc.pm +2 -2
  628. package/project/.sdk/tm/perl/feature/secrets/plugins/Voxgig/Sekreto/Plugins/Secretspec.pm +2 -2
  629. package/project/.sdk/tm/perl/feature/secrets/plugins/Voxgig/Sekreto/Plugins/Sigv4.pm +2 -2
  630. package/project/.sdk/tm/perl/feature/secrets/sekreto/Voxgig/Sekreto/Addr.pm +2 -2
  631. package/project/.sdk/tm/perl/feature/secrets/sekreto/Voxgig/Sekreto/Providers.pm +4 -3
  632. package/project/.sdk/tm/perl/feature/secrets/sekreto/Voxgig/Sekreto.pm +2 -2
  633. package/project/.sdk/tm/perl/feature/validate_feature.pm +319 -0
  634. package/project/.sdk/tm/perl/lib/Voxgig/Struct.pm +1 -1
  635. package/project/.sdk/tm/perl/src/feature/validate/.gitkeep +0 -0
  636. package/project/.sdk/tm/perl/t/vendor/omni/Voxgig/Omni/Runner.pm +1 -1
  637. package/project/.sdk/tm/perl/t/vendor/omni/Voxgig/Omni/Util.pm +1 -1
  638. package/project/.sdk/tm/perl/t/vendor/omni/Voxgig/Omni.pm +1 -1
  639. package/project/.sdk/tm/perl/utility/make_options.pm +25 -43
  640. package/project/.sdk/tm/php/feature/ValidateFeature.php +361 -0
  641. package/project/.sdk/tm/php/feature/secrets/plugin/Capability.php +2 -2
  642. package/project/.sdk/tm/php/feature/secrets/plugin/Catalog.php +2 -2
  643. package/project/.sdk/tm/php/feature/secrets/plugin/Config.php +2 -2
  644. package/project/.sdk/tm/php/feature/secrets/plugin/Depend.php +2 -2
  645. package/project/.sdk/tm/php/feature/secrets/plugin/Env.php +2 -2
  646. package/project/.sdk/tm/php/feature/secrets/plugin/Export.php +3 -3
  647. package/project/.sdk/tm/php/feature/secrets/plugin/Graph.php +2 -2
  648. package/project/.sdk/tm/php/feature/secrets/plugin/Host.php +26 -2
  649. package/project/.sdk/tm/php/feature/secrets/plugin/Order.php +2 -2
  650. package/project/.sdk/tm/php/feature/secrets/plugin/Point.php +2 -2
  651. package/project/.sdk/tm/php/feature/secrets/plugin/Ref.php +2 -2
  652. package/project/.sdk/tm/php/feature/secrets/plugin/Resolve.php +2 -2
  653. package/project/.sdk/tm/php/feature/secrets/plugin/Types.php +2 -2
  654. package/project/.sdk/tm/php/feature/secrets/plugin/Version.php +2 -2
  655. package/project/.sdk/tm/php/feature/secrets/plugin/plugin.php +2 -2
  656. package/project/.sdk/tm/php/feature/secrets/sekreto/plugins/aws.php +2 -2
  657. package/project/.sdk/tm/php/feature/secrets/sekreto/plugins/azuresecrets.php +2 -2
  658. package/project/.sdk/tm/php/feature/secrets/sekreto/plugins/boru.php +2 -2
  659. package/project/.sdk/tm/php/feature/secrets/sekreto/plugins/doppler.php +2 -2
  660. package/project/.sdk/tm/php/feature/secrets/sekreto/plugins/gcpsecrets.php +2 -2
  661. package/project/.sdk/tm/php/feature/secrets/sekreto/plugins/hashicorp.php +2 -2
  662. package/project/.sdk/tm/php/feature/secrets/sekreto/plugins/httpjson.php +2 -2
  663. package/project/.sdk/tm/php/feature/secrets/sekreto/plugins/infisical.php +2 -2
  664. package/project/.sdk/tm/php/feature/secrets/sekreto/plugins/minivault.php +1250 -0
  665. package/project/.sdk/tm/php/feature/secrets/sekreto/plugins/onepassword.php +2 -2
  666. package/project/.sdk/tm/php/feature/secrets/sekreto/plugins/runcmd.php +2 -2
  667. package/project/.sdk/tm/php/feature/secrets/sekreto/plugins/secretspec.php +2 -2
  668. package/project/.sdk/tm/php/feature/secrets/sekreto/plugins/sigv4.php +2 -2
  669. package/project/.sdk/tm/php/feature/secrets/sekreto/src/Addr.php +2 -2
  670. package/project/.sdk/tm/php/feature/secrets/sekreto/src/Providers.php +5 -3
  671. package/project/.sdk/tm/php/feature/secrets/sekreto/src/Sekreto.php +2 -2
  672. package/project/.sdk/tm/php/src/feature/validate/.gitkeep +0 -0
  673. package/project/.sdk/tm/php/test/vendor/omni/Runner.php +2 -2
  674. package/project/.sdk/tm/php/test/vendor/omni/Util.php +2 -2
  675. package/project/.sdk/tm/php/utility/MakeOptions.php +15 -31
  676. package/project/.sdk/tm/php/utility/struct/Struct.php +56 -7
  677. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_plugin/__init__.py +1 -1
  678. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_plugin/capability.py +1 -1
  679. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_plugin/catalog.py +1 -1
  680. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_plugin/config.py +1 -1
  681. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_plugin/depend.py +1 -1
  682. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_plugin/env.py +1 -1
  683. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_plugin/export.py +2 -2
  684. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_plugin/graph.py +1 -1
  685. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_plugin/host.py +17 -1
  686. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_plugin/order.py +1 -1
  687. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_plugin/point.py +1 -1
  688. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_plugin/ref.py +1 -1
  689. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_plugin/resolve.py +1 -1
  690. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_plugin/types.py +1 -1
  691. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_plugin/version.py +1 -1
  692. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/__init__.py +1 -1
  693. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/addr.py +1 -1
  694. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/plugins/aws.py +1 -1
  695. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/plugins/azuresecrets.py +1 -1
  696. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/plugins/boru.py +1 -1
  697. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/plugins/doppler.py +1 -1
  698. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/plugins/gcpsecrets.py +1 -1
  699. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/plugins/hashicorp.py +1 -1
  700. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/plugins/httpjson.py +1 -1
  701. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/plugins/infisical.py +1 -1
  702. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/plugins/minivault.py +1202 -0
  703. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/plugins/onepassword.py +1 -1
  704. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/plugins/secretspec.py +1 -1
  705. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/plugins/sigv4.py +1 -1
  706. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/providers.py +2 -1
  707. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/sekreto.py +1 -1
  708. package/project/.sdk/tm/py/pkg/feature/validate_feature.py +273 -0
  709. package/project/.sdk/tm/py/pkg/utility/make_options.py +14 -53
  710. package/project/.sdk/tm/py/pkg/utility/voxgig_struct/voxgig_struct.py +1 -1
  711. package/project/.sdk/tm/py/src/feature/validate/.gitkeep +0 -0
  712. package/project/.sdk/tm/py/test/voxgig_omni/__init__.py +1 -1
  713. package/project/.sdk/tm/py/test/voxgig_omni/runner.py +1 -1
  714. package/project/.sdk/tm/py/test/voxgig_omni/util.py +1 -1
  715. package/project/.sdk/tm/rb/feature/secrets/voxgig_plugin/capability.rb +2 -2
  716. package/project/.sdk/tm/rb/feature/secrets/voxgig_plugin/catalog.rb +2 -2
  717. package/project/.sdk/tm/rb/feature/secrets/voxgig_plugin/config.rb +2 -2
  718. package/project/.sdk/tm/rb/feature/secrets/voxgig_plugin/depend.rb +2 -2
  719. package/project/.sdk/tm/rb/feature/secrets/voxgig_plugin/env.rb +2 -2
  720. package/project/.sdk/tm/rb/feature/secrets/voxgig_plugin/export.rb +3 -3
  721. package/project/.sdk/tm/rb/feature/secrets/voxgig_plugin/graph.rb +2 -2
  722. package/project/.sdk/tm/rb/feature/secrets/voxgig_plugin/host.rb +16 -2
  723. package/project/.sdk/tm/rb/feature/secrets/voxgig_plugin/order.rb +2 -2
  724. package/project/.sdk/tm/rb/feature/secrets/voxgig_plugin/point.rb +2 -2
  725. package/project/.sdk/tm/rb/feature/secrets/voxgig_plugin/ref.rb +2 -2
  726. package/project/.sdk/tm/rb/feature/secrets/voxgig_plugin/resolve.rb +2 -2
  727. package/project/.sdk/tm/rb/feature/secrets/voxgig_plugin/types.rb +2 -2
  728. package/project/.sdk/tm/rb/feature/secrets/voxgig_plugin/version.rb +2 -2
  729. package/project/.sdk/tm/rb/feature/secrets/voxgig_plugin.rb +2 -2
  730. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto/addr.rb +2 -2
  731. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto/plugins/aws.rb +2 -2
  732. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto/plugins/azuresecrets.rb +2 -2
  733. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto/plugins/boru.rb +2 -2
  734. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto/plugins/doppler.rb +2 -2
  735. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto/plugins/gcpsecrets.rb +2 -2
  736. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto/plugins/hashicorp.rb +2 -2
  737. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto/plugins/httpjson.rb +2 -2
  738. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto/plugins/infisical.rb +2 -2
  739. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto/plugins/minivault.rb +979 -0
  740. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto/plugins/onepassword.rb +2 -2
  741. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto/plugins/secretspec.rb +2 -2
  742. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto/plugins/sigv4.rb +2 -2
  743. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto/providers.rb +6 -5
  744. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto/sekreto.rb +2 -2
  745. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto.rb +2 -2
  746. package/project/.sdk/tm/rb/feature/validate_feature.rb +265 -0
  747. package/project/.sdk/tm/rb/src/feature/validate/.gitkeep +0 -0
  748. package/project/.sdk/tm/rb/test/vendor/omni/runner.rb +2 -2
  749. package/project/.sdk/tm/rb/test/vendor/omni/util.rb +2 -2
  750. package/project/.sdk/tm/rb/test/vendor/omni/voxgig_omni.rb +2 -2
  751. package/project/.sdk/tm/rb/utility/make_options.rb +15 -32
  752. package/project/.sdk/tm/rb/utility/struct/voxgig_struct.rb +24 -1
  753. package/project/.sdk/tm/rust/core/mod.rs +3 -2
  754. package/project/.sdk/tm/rust/feature/secrets/plugin/capability.rs +2 -2
  755. package/project/.sdk/tm/rust/feature/secrets/plugin/catalog.rs +2 -2
  756. package/project/.sdk/tm/rust/feature/secrets/plugin/config.rs +2 -2
  757. package/project/.sdk/tm/rust/feature/secrets/plugin/depend.rs +2 -2
  758. package/project/.sdk/tm/rust/feature/secrets/plugin/env.rs +2 -2
  759. package/project/.sdk/tm/rust/feature/secrets/plugin/export.rs +3 -3
  760. package/project/.sdk/tm/rust/feature/secrets/plugin/graph.rs +2 -2
  761. package/project/.sdk/tm/rust/feature/secrets/plugin/host.rs +24 -2
  762. package/project/.sdk/tm/rust/feature/secrets/plugin/mod.rs +2 -2
  763. package/project/.sdk/tm/rust/feature/secrets/plugin/order.rs +2 -2
  764. package/project/.sdk/tm/rust/feature/secrets/plugin/point.rs +2 -2
  765. package/project/.sdk/tm/rust/feature/secrets/plugin/refs.rs +2 -2
  766. package/project/.sdk/tm/rust/feature/secrets/plugin/resolve.rs +2 -2
  767. package/project/.sdk/tm/rust/feature/secrets/plugin/types.rs +2 -2
  768. package/project/.sdk/tm/rust/feature/secrets/plugin/value.rs +2 -2
  769. package/project/.sdk/tm/rust/feature/secrets/plugin/version.rs +2 -2
  770. package/project/.sdk/tm/rust/feature/secrets/plugins/aws/crypto.rs +2 -2
  771. package/project/.sdk/tm/rust/feature/secrets/plugins/aws/sigv4.rs +2 -2
  772. package/project/.sdk/tm/rust/feature/secrets/plugins/aws.rs +2 -2
  773. package/project/.sdk/tm/rust/feature/secrets/plugins/azuresecrets.rs +2 -2
  774. package/project/.sdk/tm/rust/feature/secrets/plugins/boru.rs +2 -2
  775. package/project/.sdk/tm/rust/feature/secrets/plugins/doppler.rs +2 -2
  776. package/project/.sdk/tm/rust/feature/secrets/plugins/gcpsecrets.rs +2 -2
  777. package/project/.sdk/tm/rust/feature/secrets/plugins/hashicorp.rs +2 -2
  778. package/project/.sdk/tm/rust/feature/secrets/plugins/httpjson/http.rs +2 -2
  779. package/project/.sdk/tm/rust/feature/secrets/plugins/httpjson/json.rs +2 -2
  780. package/project/.sdk/tm/rust/feature/secrets/plugins/httpjson.rs +2 -2
  781. package/project/.sdk/tm/rust/feature/secrets/plugins/infisical.rs +2 -2
  782. package/project/.sdk/tm/rust/feature/secrets/plugins/minivault/format.rs +425 -0
  783. package/project/.sdk/tm/rust/feature/secrets/plugins/minivault.rs +1076 -0
  784. package/project/.sdk/tm/rust/feature/secrets/plugins/onepassword.rs +2 -2
  785. package/project/.sdk/tm/rust/feature/secrets/plugins/secretspec.rs +2 -2
  786. package/project/.sdk/tm/rust/feature/secrets/sekreto/addr.rs +2 -2
  787. package/project/.sdk/tm/rust/feature/secrets/sekreto/mod.rs +2 -2
  788. package/project/.sdk/tm/rust/feature/secrets/sekreto/providers.rs +30 -4
  789. package/project/.sdk/tm/rust/feature/secrets/sekreto/sekreto.rs +2 -2
  790. package/project/.sdk/tm/rust/feature/validate.rs +387 -0
  791. package/project/.sdk/tm/rust/src/feature/validate/.gitkeep +0 -0
  792. package/project/.sdk/tm/rust/tests/vendor/omni/json.rs +2 -2
  793. package/project/.sdk/tm/rust/tests/vendor/omni/mod.rs +2 -2
  794. package/project/.sdk/tm/rust/tests/vendor/omni/regex.rs +2 -2
  795. package/project/.sdk/tm/rust/tests/vendor/omni/runner.rs +2 -2
  796. package/project/.sdk/tm/rust/tests/vendor/omni/util.rs +2 -2
  797. package/project/.sdk/tm/rust/utility/make_options.rs +12 -63
  798. package/project/.sdk/tm/rust/utility/make_spec.rs +10 -3
  799. package/project/.sdk/tm/scala/feature/ValidateFeature.scala +286 -0
  800. package/project/.sdk/tm/scala/feature/secrets/plugin/Capability.scala +2 -2
  801. package/project/.sdk/tm/scala/feature/secrets/plugin/Config.scala +2 -2
  802. package/project/.sdk/tm/scala/feature/secrets/plugin/Depend.scala +2 -2
  803. package/project/.sdk/tm/scala/feature/secrets/plugin/Env.scala +2 -2
  804. package/project/.sdk/tm/scala/feature/secrets/plugin/Export.scala +3 -3
  805. package/project/.sdk/tm/scala/feature/secrets/plugin/Graph.scala +2 -2
  806. package/project/.sdk/tm/scala/feature/secrets/plugin/Host.scala +19 -2
  807. package/project/.sdk/tm/scala/feature/secrets/plugin/Json.scala +2 -2
  808. package/project/.sdk/tm/scala/feature/secrets/plugin/Order.scala +2 -2
  809. package/project/.sdk/tm/scala/feature/secrets/plugin/Plugin.scala +2 -2
  810. package/project/.sdk/tm/scala/feature/secrets/plugin/Point.scala +2 -2
  811. package/project/.sdk/tm/scala/feature/secrets/plugin/Refs.scala +2 -2
  812. package/project/.sdk/tm/scala/feature/secrets/plugin/Resolve.scala +2 -2
  813. package/project/.sdk/tm/scala/feature/secrets/plugin/Types.scala +2 -2
  814. package/project/.sdk/tm/scala/feature/secrets/plugin/Value.scala +2 -2
  815. package/project/.sdk/tm/scala/feature/secrets/plugin/Version.scala +2 -2
  816. package/project/.sdk/tm/scala/feature/secrets/sekreto/Json.scala +2 -2
  817. package/project/.sdk/tm/scala/feature/secrets/sekreto/Provider.scala +2 -2
  818. package/project/.sdk/tm/scala/feature/secrets/sekreto/Providers.scala +3 -2
  819. package/project/.sdk/tm/scala/feature/secrets/sekreto/Sekreto.scala +2 -2
  820. package/project/.sdk/tm/scala/feature/secrets/sekreto/Spec.scala +13 -2
  821. package/project/.sdk/tm/scala/feature/secrets/sekreto/Support.scala +11 -2
  822. package/project/.sdk/tm/scala/feature/secrets/sekreto/plugins/Aws.scala +2 -2
  823. package/project/.sdk/tm/scala/feature/secrets/sekreto/plugins/Azuresecrets.scala +2 -2
  824. package/project/.sdk/tm/scala/feature/secrets/sekreto/plugins/Boru.scala +2 -2
  825. package/project/.sdk/tm/scala/feature/secrets/sekreto/plugins/Doppler.scala +2 -2
  826. package/project/.sdk/tm/scala/feature/secrets/sekreto/plugins/Gcpsecrets.scala +2 -2
  827. package/project/.sdk/tm/scala/feature/secrets/sekreto/plugins/Hashicorp.scala +2 -2
  828. package/project/.sdk/tm/scala/feature/secrets/sekreto/plugins/Httpjson.scala +2 -2
  829. package/project/.sdk/tm/scala/feature/secrets/sekreto/plugins/Infisical.scala +2 -2
  830. package/project/.sdk/tm/scala/feature/secrets/sekreto/plugins/Minivault.scala +979 -0
  831. package/project/.sdk/tm/scala/feature/secrets/sekreto/plugins/Onepassword.scala +2 -2
  832. package/project/.sdk/tm/scala/feature/secrets/sekreto/plugins/Secretspec.scala +2 -2
  833. package/project/.sdk/tm/scala/feature/secrets/sekreto/plugins/Sigv4.scala +2 -2
  834. package/project/.sdk/tm/scala/sdktest/vendor/omni/Json.scala +2 -2
  835. package/project/.sdk/tm/scala/sdktest/vendor/omni/Runner.scala +2 -2
  836. package/project/.sdk/tm/scala/sdktest/vendor/omni/Util.scala +2 -2
  837. package/project/.sdk/tm/scala/src/feature/validate/.gitkeep +0 -0
  838. package/project/.sdk/tm/scala/utility/Make.scala +12 -41
  839. package/project/.sdk/tm/scala/utility/MakeSpec.scala +8 -1
  840. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/ValidateFeature.swift +273 -0
  841. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Capability.swift +2 -2
  842. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Catalog.swift +2 -2
  843. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Config.swift +2 -2
  844. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Depend.swift +2 -2
  845. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Env.swift +2 -2
  846. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Export.swift +3 -3
  847. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Graph.swift +2 -2
  848. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Host.swift +17 -2
  849. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Json.swift +2 -2
  850. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Order.swift +2 -2
  851. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Point.swift +2 -2
  852. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Refs.swift +2 -2
  853. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Resolve.swift +2 -2
  854. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Types.swift +2 -2
  855. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Value.swift +2 -2
  856. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Version.swift +2 -2
  857. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugins/Aws.swift +2 -2
  858. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugins/Azuresecrets.swift +2 -2
  859. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugins/Boru.swift +2 -2
  860. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugins/Crypto.swift +2 -2
  861. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugins/Doppler.swift +2 -2
  862. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugins/Gcpsecrets.swift +2 -2
  863. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugins/Hashicorp.swift +2 -2
  864. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugins/Httpjson.swift +2 -2
  865. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugins/Infisical.swift +2 -2
  866. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugins/Onepassword.swift +2 -2
  867. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugins/Proc.swift +2 -2
  868. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugins/Secretspec.swift +2 -2
  869. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugins/Sigv4.swift +2 -2
  870. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/sekreto/Addr.swift +2 -2
  871. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/sekreto/Json.swift +2 -2
  872. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/sekreto/Provider.swift +2 -2
  873. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/sekreto/Providers.swift +2 -2
  874. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/sekreto/Sekreto.swift +2 -2
  875. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/utility/Make.swift +9 -3
  876. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/utility/MakeOptions.swift +12 -87
  877. package/project/.sdk/tm/swift/Tests/ProjectNameSDKTests/PrimaryUtilityTest.swift +3 -3
  878. package/project/.sdk/tm/swift/Tests/vendor/omni/Json.swift +2 -2
  879. package/project/.sdk/tm/swift/Tests/vendor/omni/Runner.swift +2 -2
  880. package/project/.sdk/tm/swift/Tests/vendor/omni/Util.swift +2 -2
  881. package/project/.sdk/tm/swift/src/feature/validate/.gitkeep +0 -0
  882. package/project/.sdk/tm/ts/src/feature/secrets/plugin/Capability.ts +1 -1
  883. package/project/.sdk/tm/ts/src/feature/secrets/plugin/Catalog.ts +1 -1
  884. package/project/.sdk/tm/ts/src/feature/secrets/plugin/Config.ts +1 -1
  885. package/project/.sdk/tm/ts/src/feature/secrets/plugin/Depend.ts +1 -1
  886. package/project/.sdk/tm/ts/src/feature/secrets/plugin/Env.ts +1 -1
  887. package/project/.sdk/tm/ts/src/feature/secrets/plugin/Export.ts +13 -2
  888. package/project/.sdk/tm/ts/src/feature/secrets/plugin/FeatureHost.ts +1 -1
  889. package/project/.sdk/tm/ts/src/feature/secrets/plugin/Graph.ts +1 -1
  890. package/project/.sdk/tm/ts/src/feature/secrets/plugin/Host.ts +27 -1
  891. package/project/.sdk/tm/ts/src/feature/secrets/plugin/Order.ts +1 -1
  892. package/project/.sdk/tm/ts/src/feature/secrets/plugin/Point.ts +1 -1
  893. package/project/.sdk/tm/ts/src/feature/secrets/plugin/Ref.ts +1 -1
  894. package/project/.sdk/tm/ts/src/feature/secrets/plugin/Resolve.ts +1 -1
  895. package/project/.sdk/tm/ts/src/feature/secrets/plugin/Types.ts +1 -1
  896. package/project/.sdk/tm/ts/src/feature/secrets/plugin/Version.ts +1 -1
  897. package/project/.sdk/tm/ts/src/feature/secrets/plugin/index.ts +1 -1
  898. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/Sekreto.ts +1 -1
  899. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/index.ts +1 -1
  900. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/plugins/aws.ts +1 -1
  901. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/plugins/azuresecrets.ts +1 -1
  902. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/plugins/boru.ts +1 -1
  903. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/plugins/doppler.ts +1 -1
  904. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/plugins/gcpsecrets.ts +1 -1
  905. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/plugins/hashicorp.ts +1 -1
  906. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/plugins/httpjson.ts +1 -1
  907. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/plugins/infisical.ts +1 -1
  908. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/plugins/minivault.ts +1034 -0
  909. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/plugins/onepassword.ts +1 -1
  910. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/plugins/secretspec.ts +1 -1
  911. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/plugins/sigv4.ts +1 -1
  912. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/provider/addr.ts +1 -1
  913. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/provider/builtin.ts +2 -1
  914. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/provider/dotenv.ts +1 -1
  915. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/provider/env.ts +1 -1
  916. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/provider/file.ts +1 -1
  917. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/provider/memory.ts +1 -1
  918. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/provider/support.ts +11 -1
  919. package/project/.sdk/tm/ts/src/utility/StructUtility.ts +1 -1
  920. package/project/.sdk/tm/ts/test/vendor/omni/Runner.ts +1 -1
  921. package/project/.sdk/tm/ts/test/vendor/omni/Util.ts +1 -1
  922. package/project/.sdk/tm/ts/test/vendor/omni/index.ts +1 -1
  923. package/project/.sdk/tm/zig/core/utility.zig +20 -44
  924. package/project/.sdk/tm/zig/feature/secrets/plugin/capability.zig +2 -2
  925. package/project/.sdk/tm/zig/feature/secrets/plugin/catalog.zig +2 -2
  926. package/project/.sdk/tm/zig/feature/secrets/plugin/config.zig +2 -2
  927. package/project/.sdk/tm/zig/feature/secrets/plugin/depend.zig +2 -2
  928. package/project/.sdk/tm/zig/feature/secrets/plugin/env.zig +2 -2
  929. package/project/.sdk/tm/zig/feature/secrets/plugin/export.zig +3 -3
  930. package/project/.sdk/tm/zig/feature/secrets/plugin/graph.zig +2 -2
  931. package/project/.sdk/tm/zig/feature/secrets/plugin/host.zig +18 -2
  932. package/project/.sdk/tm/zig/feature/secrets/plugin/inst.zig +2 -2
  933. package/project/.sdk/tm/zig/feature/secrets/plugin/order.zig +2 -2
  934. package/project/.sdk/tm/zig/feature/secrets/plugin/plugin.zig +2 -2
  935. package/project/.sdk/tm/zig/feature/secrets/plugin/point.zig +2 -2
  936. package/project/.sdk/tm/zig/feature/secrets/plugin/ref.zig +2 -2
  937. package/project/.sdk/tm/zig/feature/secrets/plugin/resolve.zig +2 -2
  938. package/project/.sdk/tm/zig/feature/secrets/plugin/types.zig +2 -2
  939. package/project/.sdk/tm/zig/feature/secrets/plugin/value.zig +2 -2
  940. package/project/.sdk/tm/zig/feature/secrets/plugin/version.zig +2 -2
  941. package/project/.sdk/tm/zig/feature/secrets/plugins/aws.zig +2 -2
  942. package/project/.sdk/tm/zig/feature/secrets/plugins/azuresecrets.zig +2 -2
  943. package/project/.sdk/tm/zig/feature/secrets/plugins/boru.zig +2 -2
  944. package/project/.sdk/tm/zig/feature/secrets/plugins/doppler.zig +2 -2
  945. package/project/.sdk/tm/zig/feature/secrets/plugins/gcpsecrets.zig +2 -2
  946. package/project/.sdk/tm/zig/feature/secrets/plugins/hashicorp.zig +2 -2
  947. package/project/.sdk/tm/zig/feature/secrets/plugins/httpjson.zig +2 -2
  948. package/project/.sdk/tm/zig/feature/secrets/plugins/infisical.zig +2 -2
  949. package/project/.sdk/tm/zig/feature/secrets/plugins/minivault.zig +1930 -0
  950. package/project/.sdk/tm/zig/feature/secrets/plugins/onepassword.zig +2 -2
  951. package/project/.sdk/tm/zig/feature/secrets/plugins/secretspec.zig +2 -2
  952. package/project/.sdk/tm/zig/feature/secrets/plugins/sigv4.zig +2 -2
  953. package/project/.sdk/tm/zig/feature/secrets/sekreto/addr.zig +2 -2
  954. package/project/.sdk/tm/zig/feature/secrets/sekreto/builtins.zig +3 -2
  955. package/project/.sdk/tm/zig/feature/secrets/sekreto/provider.zig +19 -2
  956. package/project/.sdk/tm/zig/feature/secrets/sekreto/sekreto.zig +2 -2
  957. package/project/.sdk/tm/zig/feature/validate.zig +293 -0
  958. package/project/.sdk/tm/zig/src/feature/validate/.gitkeep +0 -0
  959. package/project/.sdk/tm/zig/test/vendor/omni/omni.zig +2 -2
  960. package/project/.sdk/tm/zig/test/vendor/omni/regex.zig +2 -2
  961. package/project/.sdk/tm/zig/utility/voxgigstruct/regex.zig +2 -2
  962. package/project/.sdk/tm/zig/utility/voxgigstruct/struct.zig +2 -2
  963. package/project/sdkgen-package.json +1 -1
  964. package/src/helpers/applicability.ts +11 -6
  965. package/src/helpers/collectDeps.ts +30 -5
  966. package/src/helpers/naming.ts +2 -2
@@ -0,0 +1,111 @@
1
+ import {
2
+ Content,
3
+ File,
4
+ cmp,
5
+ entitySpecMap,
6
+ optionSpec,
7
+ } from '@voxgig/sdkgen'
8
+
9
+
10
+ import {
11
+ Model,
12
+ } from '@voxgig/apidef'
13
+
14
+
15
+ import {
16
+ kotlinPackage,
17
+ jsonAppendLines,
18
+ } from './utility_kotlin'
19
+
20
+
21
+ // THE GENERATED SCHEMA MODULE: the model's schemas, as data the SDK can run.
22
+ //
23
+ // The kotlin peer of src/cmp/ts/Schema_ts.ts. Same two members, same source:
24
+ // optspec from `main.kit.optspec` plus each feature's own `config.options`,
25
+ // entityspec from the entity field sentinels — both built by the shared
26
+ // helpers, so what kotlin validates against and what ts validates against
27
+ // cannot drift.
28
+ //
29
+ // EMBEDDED AS JSON, PARSED AT LOAD, where ts emits an object literal: JSON is
30
+ // a subset of TypeScript's own literal syntax and is not a subset of
31
+ // kotlin's. Chunked StringBuilder appends, exactly as Config.kt carries its
32
+ // config, keep every string constant far below the JVM's 64KB limit no matter
33
+ // how many features or entities the model grows.
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.parse decodes a
38
+ // JSON number to one kotlin type and struct reads a spec BY EXAMPLE, so one
39
+ // number in here would mean something different in kotlin than in ts.
40
+ const Schema = cmp(async function Schema(props: any) {
41
+ const ctx$ = props.ctx$
42
+ const target = props.target
43
+
44
+ const model: Model = ctx$.model
45
+ const kotlinpackage = kotlinPackage(model)
46
+
47
+ const optspec = optionSpec(model, target.name)
48
+ const entityspec = entitySpecMap(model, target.name) || {}
49
+
50
+ // Beside Config.kt, and for the same reason: core owns the generated data,
51
+ // so nothing in utility or feature has to reach up for it.
52
+ File({ name: 'Schema.' + target.ext }, () => {
53
+
54
+ Content(`package ${kotlinpackage}.core
55
+
56
+ import ${kotlinpackage}.utility.Json
57
+
58
+ /**
59
+ * ${model.const.Name} ${target.Name} SDK: generated schemas. Do not edit.
60
+ *
61
+ * Generated from the model: \`main.kit.optspec\` and each feature's
62
+ * \`config.options\` for the option spec; entity \`fields[].type\` for the
63
+ * entity specs.
64
+ */
65
+ @Suppress("UNCHECKED_CAST")
66
+ object Schema {
67
+
68
+ // Parsed ONCE, on first use. The spec is read on every client construction
69
+ // and never mutated, so a per-call parse would be pure waste — and a shared
70
+ // map is safe for the same reason the spec is a constant: makeOptions
71
+ // validates AGAINST it and writes into the options, never into the spec.
72
+ //
73
+ // 'by lazy' defaults to LazyThreadSafetyMode.SYNCHRONIZED, as
74
+ // Config.sharedConfig uses, so concurrent first calls parse it exactly once.
75
+
76
+ /** The option spec makeOptions validates client options against. */
77
+ val optspec: MutableMap<String, Any?> by lazy {
78
+ Json.parse(optspecJson()) as MutableMap<String, Any?>
79
+ }
80
+
81
+ /** Per-entity data and request specs, keyed by entity name. */
82
+ val entityspec: MutableMap<String, Any?> by lazy {
83
+ Json.parse(entityspecJson()) as MutableMap<String, Any?>
84
+ }
85
+
86
+ private fun optspecJson(): String {
87
+ val b = StringBuilder()
88
+ `)
89
+
90
+ Content(jsonAppendLines(optspec, 'b'))
91
+
92
+ Content(` return b.toString()
93
+ }
94
+
95
+ private fun entityspecJson(): String {
96
+ val b = StringBuilder()
97
+ `)
98
+
99
+ Content(jsonAppendLines(entityspec, 'b'))
100
+
101
+ Content(` return b.toString()
102
+ }
103
+ }
104
+ `)
105
+ })
106
+ })
107
+
108
+
109
+ export {
110
+ Schema
111
+ }
@@ -22,6 +22,7 @@ import {
22
22
 
23
23
  import { Package } from './Package_lua'
24
24
  import { Config } from './Config_lua'
25
+ import { Schema } from './Schema_lua'
25
26
  import { PrepareAuth } from './PrepareAuth_lua'
26
27
  import { Gitignore } from './Gitignore_lua'
27
28
  import { MainEntity } from './MainEntity_lua'
@@ -100,43 +101,78 @@ const Main = cmp(async function Main(props: any) {
100
101
  // syntax; the guard holds that), which the C compiler cannot read - so
101
102
  // the rule feeds the compiler from line four. Line numbers in a compiler
102
103
  // diagnostic are therefore three lower than in the file.
104
+ //
105
+ // TWO HELPERS, NOT ONE, AND THEY ARE BUILT DIFFERENTLY. The transport
106
+ // helper is a PROGRAM the plugins run; the mini vault's crypto is a
107
+ // LOADABLE MODULE the interpreter opens with package.loadlib, so it is
108
+ // compiled -shared -fPIC and keeps its `.so` name. Each is emitted only
109
+ // for the groups that actually use it: a chain of `[hashicorp]` builds
110
+ // no vault, and a chain of `[minivault]` opens no socket and links no
111
+ // TLS.
103
112
  const nativeGroups: string[] = []
113
+ let wantsVault = false
104
114
  each(feature, (f: any) => {
105
115
  each(f.plugin, (plugin: any) => {
106
116
  if (false === plugin.active || null == plugin.active) return
107
117
  if (0 < Object.keys(plugin.def?.lua || {}).length) {
108
118
  nativeGroups.push(f.name + '.' + plugin.name)
119
+ if ('minivault' === plugin.name) {
120
+ wantsVault = true
121
+ }
109
122
  }
110
123
  })
111
124
  })
112
125
 
126
+ // The transport helper serves every kind that reaches the network or a
127
+ // child process. The vault reaches neither, so a vault-only chain needs
128
+ // the module and not the program.
129
+ const wantsNet = nativeGroups.some((one) => !/\.minivault$/.test(one))
130
+
113
131
  if (0 < nativeGroups.length) {
114
132
  Folder({ name: 'feature' }, () => {
115
133
  Folder({ name: 'secrets' }, () => {
116
134
  File({ name: 'native.mk' }, () => {
117
- Content(`# ${model.const.Name} SDK: the sekreto transport helper build.
135
+ Content(`# ${model.const.Name} SDK: the sekreto native helper build.
118
136
  #
119
137
  # GENERATED because a secrets plugin group is active
120
- # (${nativeGroups.sort().join(', ')}): the plugin provider kinds run this
121
- # helper for every socket and child process, since Lua 5.4 has none. An
122
- # SDK without an active plugin group has no such file, and its Makefile's
123
- # optional include of it is a no-op - nothing is compiled and OpenSSL is
124
- # not linked.
138
+ # (${nativeGroups.sort().join(', ')}). Lua 5.4 has no sockets, no TLS and no
139
+ # cryptography, so the kinds that need any of the three reach a small
140
+ # compiled helper - and this file builds only the ones this SDK's chain
141
+ # actually uses. An SDK without an active plugin group has no such file,
142
+ # and its Makefile's optional include of it is a no-op: nothing is
143
+ # compiled and nothing is linked.
125
144
  #
126
145
  # The source carries the vendoring tool's three-line provenance header in
127
146
  # lua comment syntax, which the compiler cannot read: it is fed the file
128
147
  # from line four. Compiler line numbers are therefore three lower than the
129
148
  # file's.
130
- NATIVE := feature/secrets/native/sekreto-net
149
+ NATIVE := ${[
150
+ wantsNet ? 'feature/secrets/native/sekreto-net' : '',
151
+ wantsVault ? 'feature/secrets/native/sekretovault.so' : '',
152
+ ].filter((one) => '' !== one).join(' ')}
131
153
 
132
154
  CC ?= cc
133
155
  CFLAGS ?= -std=c11 -O2 -Wall -Wextra
134
156
  LDLIBS ?= -lssl -lcrypto
135
-
157
+ ${wantsNet ? `
136
158
  feature/secrets/native/sekreto-net: feature/secrets/native/sekretonet.c
137
159
  @command -v $(CC) >/dev/null 2>&1 || { echo "secrets: a C compiler ($(CC)) is needed to build the sekreto transport helper that this SDK's plugin provider kinds run - install one, or use only the built-in provider kinds" >&2; exit 1; }
138
160
  tail -n +4 $< | $(CC) $(CFLAGS) -x c - -o $@ $(LDLIBS)
139
- `)
161
+ ` : ''}${wantsVault ? `
162
+ # The mini vault's crypto is a LOADABLE MODULE, not a program: minivault.lua
163
+ # opens it with package.loadlib and calls luaopen_sekretovault, so it is
164
+ # compiled -shared -fPIC and keeps the .so name that call expects. It links
165
+ # libcrypto alone - the vault reads a file and never opens a socket, so it
166
+ # needs no TLS.
167
+ #
168
+ # LUA_CFLAGS is where a consumer points the compiler at lua.h when it is not
169
+ # on the default include path (Homebrew, a pkg-config build, a vendored Lua).
170
+ LUA_CFLAGS ?= $(shell pkg-config --cflags lua5.4 2>/dev/null || pkg-config --cflags lua 2>/dev/null)
171
+
172
+ feature/secrets/native/sekretovault.so: feature/secrets/native/sekretovault.c
173
+ @command -v $(CC) >/dev/null 2>&1 || { echo "secrets: a C compiler ($(CC)) is needed to build the mini vault's crypto module - install one, or use only the built-in provider kinds" >&2; exit 1; }
174
+ tail -n +4 $< | $(CC) $(CFLAGS) $(LUA_CFLAGS) -fPIC -shared -x c - -o $@ -lcrypto
175
+ ` : ''}`)
140
176
  })
141
177
  })
142
178
  })
@@ -194,6 +230,7 @@ self._utility.feature_hook(self._rootctx, "${name}")
194
230
  // Generate config module
195
231
  Folder({ name: '.' }, () => {
196
232
  Config({ target })
233
+ Schema({ target })
197
234
  })
198
235
 
199
236
  // GENERATED, NOT COPIED. Where the credential goes is a fact about the
@@ -159,6 +159,7 @@ build = {
159
159
  ["config"] = "config.lua",
160
160
  ["config_shared"] = "config_shared.lua",
161
161
  ["config_plugins"] = "config_plugins.lua",
162
+ ["schema"] = "schema.lua",
162
163
  ["features"] = "features.lua",
163
164
  ${featureModules} }
164
165
  }
@@ -20,6 +20,7 @@ Use \`helpers.to_map()\` to safely validate that a value is a table.
20
20
  lua/
21
21
  ├── ${model.name}_sdk.lua -- Main SDK module
22
22
  ├── config.lua -- Configuration
23
+ ├── schema.lua -- Generated option + entity specs
23
24
  ├── features.lua -- Feature factory
24
25
  ├── core/ -- Core types and context
25
26
  ├── entity/ -- Entity implementations
@@ -0,0 +1,72 @@
1
+ import {
2
+ Content,
3
+ File,
4
+ cmp,
5
+ entitySpecMap,
6
+ optionSpec,
7
+ } from '@voxgig/sdkgen'
8
+
9
+
10
+ import {
11
+ Model,
12
+ } from '@voxgig/apidef'
13
+
14
+
15
+ import {
16
+ luaLongString,
17
+ } from './utility_lua'
18
+
19
+
20
+ // THE GENERATED SCHEMA MODULE: the model's schemas, as data the SDK can run.
21
+ //
22
+ // The lua 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 — built by the shared helpers,
25
+ // so what lua validates against and what ts validates against cannot drift.
26
+ //
27
+ // EMBEDDED AS JSON IN A LONG BRACKET, PARSED AT LOAD: the mechanism
28
+ // config.lua already uses for the model above the size threshold.
29
+ // `luaLongString` picks a bracket level no `]]` in the content can close, so
30
+ // the sentinels' backticks and the JSON's own quoting survive verbatim with
31
+ // no escaping at all.
32
+ //
33
+ // The round-trip is exact because the spec holds only strings and booleans —
34
+ // pinned by "strings and booleans only, so the JSON round-trip is lossless"
35
+ // in ts/test/optspec.test.ts.
36
+ const Schema = cmp(async function Schema(props: any) {
37
+ const ctx$ = props.ctx$
38
+ const target = props.target
39
+
40
+ const model: Model = ctx$.model
41
+
42
+ const optspec = optionSpec(model, target.name)
43
+ const entityspec = entitySpecMap(model, target.name) || {}
44
+
45
+ File({ name: 'schema.' + target.ext }, () => {
46
+ Content(`-- ${model.const.Name} ${target.Name} SDK: generated schemas. Do not edit.
47
+ --
48
+ -- Generated from the model: \`main.kit.optspec\` and each feature's
49
+ -- \`config.options\` for OPTSPEC; entity \`fields[].type\` for ENTITYSPEC.
50
+
51
+ local json = require("dkjson")
52
+
53
+ local OPTSPEC_DATA = ${luaLongString(JSON.stringify(optspec))}
54
+
55
+ local ENTITYSPEC_DATA = ${luaLongString(JSON.stringify(entityspec))}
56
+
57
+ -- Parsed ONCE, at require. The spec is read on every client construction and
58
+ -- never mutated, so a per-call parse would be pure waste — and sharing the
59
+ -- table is safe for the same reason: make_options validates AGAINST it and
60
+ -- writes into the options, never into the spec.
61
+ return {
62
+ OPTSPEC = json.decode(OPTSPEC_DATA),
63
+ ENTITYSPEC = json.decode(ENTITYSPEC_DATA),
64
+ }
65
+ `)
66
+ })
67
+ })
68
+
69
+
70
+ export {
71
+ Schema
72
+ }
@@ -62,6 +62,14 @@ type SecretsBuild = {
62
62
  groups: string[],
63
63
  tlsGroups: string[],
64
64
  tls: boolean,
65
+ // C stubs an active group brings with it, keyed by the group that
66
+ // brought them, in the order the groups sort. tls_stubs.c is NOT here:
67
+ // it belongs to the tls HELPER, which no group owns - these are stubs a
68
+ // KIND owns, declared in its own `path` list. The mini vault is the
69
+ // first, and the shape is general: a kind whose implementation needs C
70
+ // says so by listing a .c file, and the build compiles what it lists.
71
+ stubs: string[],
72
+ stubGroups: string[],
65
73
  plugin: string[],
66
74
  core: string[],
67
75
  helpers: string[],
@@ -93,6 +101,8 @@ function secretsBuild(model: Model, target: any): SecretsBuild | null {
93
101
 
94
102
  const groups: string[] = []
95
103
  const tlsGroups: string[] = []
104
+ const stubGroups: string[] = []
105
+ const stubs = new Set<string>()
96
106
  const syms = new Set<string>()
97
107
  const kinds = new Set<string>()
98
108
 
@@ -105,6 +115,17 @@ function secretsBuild(model: Model, target: any): SecretsBuild | null {
105
115
  if (0 === Object.keys(defs).length) return
106
116
  groups.push(plugin.name)
107
117
  if (true === plugin.needs?.fetch) tlsGroups.push(plugin.name)
118
+
119
+ // `stub`, keyed by TARGET - not a filter over `path`, which is one flat
120
+ // list across every target: ocaml's minivault_stubs.c sits beside c's
121
+ // boru.c and hashicorp.c, and a prefix filter handed this build both of
122
+ // them. Declared per target, so what ocaml compiles is what the model
123
+ // says ocaml compiles.
124
+ const own = (plugin.stub?.[target.name] || []).map((one: any) => String(one))
125
+ if (0 < own.length) {
126
+ stubGroups.push(plugin.name)
127
+ for (const one of own) stubs.add(one)
128
+ }
108
129
  for (const [sym, path] of Object.entries(defs)) {
109
130
  syms.add(sym)
110
131
  kinds.add(String(path))
@@ -116,6 +137,8 @@ function secretsBuild(model: Model, target: any): SecretsBuild | null {
116
137
  groups: groups.sort(),
117
138
  tlsGroups: tlsGroups.sort(),
118
139
  tls,
140
+ stubs: Array.from(stubs).sort(),
141
+ stubGroups: stubGroups.sort(),
119
142
  plugin: SECRETS_PLUGIN_MODULES,
120
143
  core: SECRETS_CORE_MODULES,
121
144
  helpers: [
@@ -308,7 +331,7 @@ let make_feature (name : string) : feature =
308
331
  const OCAML_FEATURES = [
309
332
  'audit', 'cache', 'clienttrack', 'cost', 'debug', 'idempotency', 'log',
310
333
  'metrics', 'netsim', 'paging', 'proxy', 'ratelimit', 'rbac',
311
- 'retry', 'streaming', 'telemetry', 'test', 'timeout',
334
+ 'retry', 'streaming', 'telemetry', 'test', 'timeout', 'validate',
312
335
  ]
313
336
 
314
337
  each(feature, (f: any) => {
@@ -21,6 +21,7 @@ import {
21
21
 
22
22
  import { Package } from './Package_ocaml'
23
23
  import { Config, secretsBuild } from './Config_ocaml'
24
+ import { Schema } from './Schema_ocaml'
24
25
  import { Gitignore } from './Gitignore_ocaml'
25
26
  import { MainEntity } from './MainEntity_ocaml'
26
27
  import { SdkError } from './SdkError_ocaml'
@@ -153,25 +154,44 @@ FEATURE_SRC = $(SECRETS_PLUGIN) $(SECRETS_CORE) $(SECRETS_HELPERS) $(SECRETS_KIN
153
154
  FEATURE_TESTS = test/feature/secrets/t_secrets.ml
154
155
  `)
155
156
 
156
- if (build.tls) {
157
+ // EVERY C OBJECT THIS CHAIN NEEDS, from two different owners.
158
+ // tls_stubs.c belongs to the transport HELPER, which no group
159
+ // owns and which any kind reaching the network pulls in;
160
+ // minivault_stubs.c belongs to the KIND, and is listed in that
161
+ // group's own `path`. Both link against libcrypto and only the
162
+ // transport needs libssl, so the link line is assembled rather
163
+ // than written twice - an SDK with both gets each library once.
164
+ const objs = [
165
+ ...(build.tls ? ['feature/secrets/plugins/tls_stubs.o'] : []),
166
+ ...build.stubs.map((one) => one.replace(/\.c$/, '.o')),
167
+ ]
168
+ const libs = [
169
+ ...(build.tls ? ['-cclib', '-lssl'] : []),
170
+ ...(build.tls || 0 < build.stubs.length ? ['-cclib', '-lcrypto'] : []),
171
+ ]
172
+
173
+ if (0 < objs.length) {
157
174
  Content(`
158
- # THE ONE EXTERNAL DEPENDENCY, behind the plugin groups that need a
159
- # transport (${build.tlsGroups.join(', ')}): plugins/tls.ml's externals live in
160
- # plugins/tls_stubs.c against OpenSSL, so the stub is compiled here and the
161
- # bytecode executables are linked \`-custom\` with libssl and libcrypto.
162
- # The stub is fed from line four (past the provenance header, see above).
175
+ # THE C OBJECTS THIS CHAIN NEEDS${build.tls ? `, and the one external
176
+ # dependency behind the plugin groups that need a transport
177
+ # (${build.tlsGroups.join(', ')}): plugins/tls.ml's externals live in
178
+ # plugins/tls_stubs.c against OpenSSL` : ''}${0 < build.stubs.length ? `${build.tls ? '. ' : `,
179
+ # behind `}the mini vault's own stub (${build.stubGroups.join(', ')}), whose
180
+ # AES-256-GCM and PBKDF2 come from libcrypto` : ''}. Each stub is compiled
181
+ # here and the bytecode executables are linked \`-custom\`, and each is fed
182
+ # to the compiler from line four (past the provenance header, see above).
163
183
  OCAMLLIB = $(shell $(OCAMLC) -where)
164
- FEATURE_OBJ = feature/secrets/plugins/tls_stubs.o
165
- FEATURE_LINK = -custom -cclib -lssl -cclib -lcrypto
166
-
167
- feature/secrets/plugins/tls_stubs.o: feature/secrets/plugins/tls_stubs.c
168
- @command -v $(CC) >/dev/null 2>&1 || { echo "secrets: a C compiler ($(CC)) is needed to build the OpenSSL binding that this SDK's secrets plugin kinds (${build.tlsGroups.join(', ')}) run - install one, or use only the built-in provider kinds" >&2; exit 1; }
184
+ FEATURE_OBJ = ${objs.join(' ')}
185
+ FEATURE_LINK = -custom ${libs.join(' ')}
186
+ ${objs.map((obj) => `
187
+ ${obj}: ${obj.replace(/\.o$/, '.c')}
188
+ @command -v $(CC) >/dev/null 2>&1 || { echo "secrets: a C compiler ($(CC)) is needed to build the C stub that this SDK's secrets plugin kinds (${build.groups.join(', ')}) run - install one, or use only the built-in provider kinds" >&2; exit 1; }
169
189
  tail -n +4 $< | $(CC) -std=c11 -O2 -Wall -Wextra -I$(OCAMLLIB) -x c - -c -o $@
170
- `)
190
+ `).join('')}`)
171
191
  }
172
192
  else {
173
193
  Content(`
174
- # No active plugin group needs a transport, so the OpenSSL binding is not
194
+ # No active plugin group needs a transport or a C stub, so nothing is
175
195
  # compiled and nothing is linked beyond the OCaml distribution.
176
196
  FEATURE_OBJ =
177
197
  FEATURE_LINK =
@@ -183,6 +203,7 @@ FEATURE_LINK =
183
203
  }
184
204
 
185
205
  // Generated API config + branded-error re-export.
206
+ Schema({ target })
186
207
  Config({ target })
187
208
  SdkError({ target })
188
209
 
@@ -22,6 +22,7 @@ Build request maps with the \`jo\` / \`ja\` helpers and read fields back with
22
22
  ${target.name}/
23
23
  ├── sdk_client.ml -- Main SDK client (constructors + accessors)
24
24
  ├── sdk_config.ml -- Embedded API config + feature factory
25
+ ├── sdk_schema.ml -- Generated option + entity specs
25
26
  ├── sdk_error.ml -- Branded error re-exports
26
27
  ├── sdk_entity_*.ml -- Per-entity implementations (one each)
27
28
  ├── sdk_types.ml -- Core pipeline types
@@ -0,0 +1,99 @@
1
+ import {
2
+ Content,
3
+ File,
4
+ cmp,
5
+ entitySpecMap,
6
+ optionSpec,
7
+ } from '@voxgig/sdkgen'
8
+
9
+
10
+ import {
11
+ Model,
12
+ } from '@voxgig/apidef'
13
+
14
+
15
+ import {
16
+ ocamlString,
17
+ } from './utility_ocaml'
18
+
19
+
20
+ // THE GENERATED SCHEMA MODULE: the model's schemas, as data the SDK can run.
21
+ //
22
+ // The ocaml peer of src/cmp/ts/Schema_ts.ts. Same two members, 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 ocaml validates against and what ts validates against
26
+ // cannot 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 ocaml's.
30
+ // A string constant read by `Sdk_json.json_read`, exactly as sdk_config.ml
31
+ // carries its data rep above the size threshold.
32
+ //
33
+ // COMPILE ORDER. ocaml links a fixed module list, and sdk_runtime.ml's
34
+ // make_options reads this, so sdk_schema.ml is named in RUNTIME (the
35
+ // Makefile) between sdk_helpers.ml and sdk_runtime.ml. It opens nothing of
36
+ // the SDK beyond Voxgig_struct and Sdk_json, so it cannot close a cycle.
37
+ //
38
+ // The round-trip is exact because the spec holds only strings and booleans:
39
+ // pinned by "strings and booleans only, so the JSON round-trip is lossless"
40
+ // in ts/test/optspec.test.ts. json_read yields `Num (float)` for any number,
41
+ // and struct reads a spec BY EXAMPLE, so one number in here would mean
42
+ // something different in ocaml than in ts.
43
+ const Schema = cmp(async function Schema(props: any) {
44
+ const ctx$ = props.ctx$
45
+ const target = props.target
46
+
47
+ const model: Model = ctx$.model
48
+
49
+ const optspec = optionSpec(model, target.name)
50
+ const entityspec = entitySpecMap(model, target.name) || {}
51
+
52
+ File({ name: 'sdk_schema.' + target.ext }, () => {
53
+
54
+ Content(`(* ${model.const.Name} SDK: generated schemas. Do not edit.
55
+ *
56
+ * Built from the model: main.kit.optspec and each feature's config.options
57
+ * for the option spec; entity fields[].type for the entity specs.
58
+ *
59
+ * opt_spec_value () - the option spec make_options validates client options
60
+ * against. entity_spec_value () - per-entity data and request specs, keyed by
61
+ * entity name. Both parse once and memoise: the spec is read on every client
62
+ * construction and never mutated, so a per-call parse would be pure waste.
63
+ *
64
+ * The returned values are SHARED: treat them as read-only. make_options
65
+ * validates AGAINST the spec and writes into the options, never into it. *)
66
+
67
+ open Voxgig_struct
68
+
69
+ let optspec_data = "${ocamlString(JSON.stringify(optspec))}"
70
+
71
+ let entityspec_data = "${ocamlString(JSON.stringify(entityspec))}"
72
+
73
+ let optspec_memo : value option ref = ref None
74
+
75
+ let entityspec_memo : value option ref = ref None
76
+
77
+ let opt_spec_value () : value =
78
+ match !optspec_memo with
79
+ | Some v -> v
80
+ | None ->
81
+ let v = Sdk_json.json_read optspec_data in
82
+ optspec_memo := Some v;
83
+ v
84
+
85
+ let entity_spec_value () : value =
86
+ match !entityspec_memo with
87
+ | Some v -> v
88
+ | None ->
89
+ let v = Sdk_json.json_read entityspec_data in
90
+ entityspec_memo := Some v;
91
+ v
92
+ `)
93
+ })
94
+ })
95
+
96
+
97
+ export {
98
+ Schema
99
+ }
@@ -23,6 +23,7 @@ import {
23
23
 
24
24
  import { Package } from './Package_perl'
25
25
  import { Config } from './Config_perl'
26
+ import { Schema } from './Schema_perl'
26
27
  import { PrepareAuth } from './PrepareAuth_perl'
27
28
  import { Gitignore } from './Gitignore_perl'
28
29
  import { MainEntity } from './MainEntity_perl'
@@ -130,6 +131,7 @@ const Main = cmp(async function Main(props: any) {
130
131
  // Generate config module
131
132
  Folder({ name: '.' }, () => {
132
133
  Config({ target })
134
+ Schema({ target })
133
135
  })
134
136
 
135
137
  // GENERATED, NOT COPIED. Where the credential goes is a fact about the
@@ -20,6 +20,7 @@ is a hashref.
20
20
  ${target.name}/
21
21
  ├── lib/${model.const.Name}SDK.pm -- Main SDK module (package ${model.const.Name}SDK)
22
22
  ├── config.pm -- Configuration
23
+ ├── schema.pm -- Generated option + entity specs
23
24
  ├── features.pm -- Feature factory
24
25
  ├── core/ -- Core types and context
25
26
  ├── entity/ -- Entity implementations