@voxgig/sdkgen 4.20.0 → 4.22.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1561) hide show
  1. package/bin/voxgig-sdkgen +1 -1
  2. package/dist/action/action.js +0 -65
  3. package/dist/action/action.js.map +1 -1
  4. package/dist/action/check.js +0 -88
  5. package/dist/action/check.js.map +1 -1
  6. package/dist/action/dispatch.js +0 -27
  7. package/dist/action/dispatch.js.map +1 -1
  8. package/dist/action/doctor.d.ts +1 -0
  9. package/dist/action/doctor.js +55 -321
  10. package/dist/action/doctor.js.map +1 -1
  11. package/dist/action/edition.js +1 -87
  12. package/dist/action/edition.js.map +1 -1
  13. package/dist/action/feature.js +0 -48
  14. package/dist/action/feature.js.map +1 -1
  15. package/dist/action/kind.js +0 -132
  16. package/dist/action/kind.js.map +1 -1
  17. package/dist/action/package.js +0 -221
  18. package/dist/action/package.js.map +1 -1
  19. package/dist/action/resolve.js +0 -145
  20. package/dist/action/resolve.js.map +1 -1
  21. package/dist/action/target.js +0 -177
  22. package/dist/action/target.js.map +1 -1
  23. package/dist/cmp/AgentGuide.js +0 -7
  24. package/dist/cmp/AgentGuide.js.map +1 -1
  25. package/dist/cmp/AgentGuideContent.js +0 -24
  26. package/dist/cmp/AgentGuideContent.js.map +1 -1
  27. package/dist/cmp/AgentGuideTop.js +0 -7
  28. package/dist/cmp/AgentGuideTop.js.map +1 -1
  29. package/dist/cmp/Changelog.js +0 -14
  30. package/dist/cmp/Changelog.js.map +1 -1
  31. package/dist/cmp/Deploy.js +1 -31
  32. package/dist/cmp/Deploy.js.map +1 -1
  33. package/dist/cmp/Entity.js +0 -4
  34. package/dist/cmp/Entity.js.map +1 -1
  35. package/dist/cmp/ExternalTarget.js +0 -36
  36. package/dist/cmp/ExternalTarget.js.map +1 -1
  37. package/dist/cmp/Feature.js +0 -14
  38. package/dist/cmp/Feature.js.map +1 -1
  39. package/dist/cmp/FeatureDocs.js +0 -25
  40. package/dist/cmp/FeatureDocs.js.map +1 -1
  41. package/dist/cmp/PublishWorkflow.js +0 -60
  42. package/dist/cmp/PublishWorkflow.js.map +1 -1
  43. package/dist/cmp/ReadmeErrors.js +0 -2
  44. package/dist/cmp/ReadmeErrors.js.map +1 -1
  45. package/dist/cmp/ReadmeExplanation.js +0 -5
  46. package/dist/cmp/ReadmeExplanation.js.map +1 -1
  47. package/dist/cmp/ReadmeFeatures.js +0 -10
  48. package/dist/cmp/ReadmeFeatures.js.map +1 -1
  49. package/dist/cmp/ReadmeRefFeatures.js +0 -19
  50. package/dist/cmp/ReadmeRefFeatures.js.map +1 -1
  51. package/dist/cmp/ReadmeStation.js +0 -19
  52. package/dist/cmp/ReadmeStation.js.map +1 -1
  53. package/dist/cmp/ReadmeTop.js +0 -80
  54. package/dist/cmp/ReadmeTop.js.map +1 -1
  55. package/dist/cmp/ReadmeUnions.js +0 -15
  56. package/dist/cmp/ReadmeUnions.js.map +1 -1
  57. package/dist/cmp/Registered.js +0 -30
  58. package/dist/cmp/Registered.js.map +1 -1
  59. package/dist/cmp/Security.js +0 -2
  60. package/dist/cmp/Security.js.map +1 -1
  61. package/dist/cmp/Test.js +2 -1
  62. package/dist/cmp/Test.js.map +1 -1
  63. package/dist/cmp/TestControl.js +0 -25
  64. package/dist/cmp/TestControl.js.map +1 -1
  65. package/dist/helpers/applicability.js +0 -55
  66. package/dist/helpers/applicability.js.map +1 -1
  67. package/dist/helpers/buildIdNames.js +0 -12
  68. package/dist/helpers/buildIdNames.js.map +1 -1
  69. package/dist/helpers/canonSpec.js +0 -114
  70. package/dist/helpers/canonSpec.js.map +1 -1
  71. package/dist/helpers/canonType.js +0 -87
  72. package/dist/helpers/canonType.js.map +1 -1
  73. package/dist/helpers/collectDeps.js +22 -24
  74. package/dist/helpers/collectDeps.js.map +1 -1
  75. package/dist/helpers/definition.js +0 -29
  76. package/dist/helpers/definition.js.map +1 -1
  77. package/dist/helpers/dryrun.js +0 -8
  78. package/dist/helpers/dryrun.js.map +1 -1
  79. package/dist/helpers/featureSource.js +0 -145
  80. package/dist/helpers/featureSource.js.map +1 -1
  81. package/dist/helpers/getMatchEntries.js +0 -4
  82. package/dist/helpers/getMatchEntries.js.map +1 -1
  83. package/dist/helpers/junk.js +9 -85
  84. package/dist/helpers/junk.js.map +1 -1
  85. package/dist/helpers/manifest.js +0 -138
  86. package/dist/helpers/manifest.js.map +1 -1
  87. package/dist/helpers/modelNames.js +0 -78
  88. package/dist/helpers/modelNames.js.map +1 -1
  89. package/dist/helpers/modelcheck.js +0 -106
  90. package/dist/helpers/modelcheck.js.map +1 -1
  91. package/dist/helpers/naming.d.ts +0 -1
  92. package/dist/helpers/naming.js +2 -305
  93. package/dist/helpers/naming.js.map +1 -1
  94. package/dist/helpers/opExample.js +0 -51
  95. package/dist/helpers/opExample.js.map +1 -1
  96. package/dist/helpers/opShape.js +0 -198
  97. package/dist/helpers/opShape.js.map +1 -1
  98. package/dist/helpers/optspec.js +0 -77
  99. package/dist/helpers/optspec.js.map +1 -1
  100. package/dist/helpers/packageMeta.js +1 -200
  101. package/dist/helpers/packageMeta.js.map +1 -1
  102. package/dist/helpers/pointPath.js +0 -55
  103. package/dist/helpers/pointPath.js.map +1 -1
  104. package/dist/helpers/resolved.d.ts +6 -0
  105. package/dist/helpers/resolved.js +49 -0
  106. package/dist/helpers/resolved.js.map +1 -0
  107. package/dist/helpers/semver.js +0 -61
  108. package/dist/helpers/semver.js.map +1 -1
  109. package/dist/helpers/serverVars.js +0 -44
  110. package/dist/helpers/serverVars.js.map +1 -1
  111. package/dist/helpers/shipped.js +0 -14
  112. package/dist/helpers/shipped.js.map +1 -1
  113. package/dist/helpers/station.js +0 -32
  114. package/dist/helpers/station.js.map +1 -1
  115. package/dist/helpers/stdrep.js +0 -26
  116. package/dist/helpers/stdrep.js.map +1 -1
  117. package/dist/helpers/testPolicy.js +0 -4
  118. package/dist/helpers/testPolicy.js.map +1 -1
  119. package/dist/sdkgen.d.ts +2 -1
  120. package/dist/sdkgen.js +13 -242
  121. package/dist/sdkgen.js.map +1 -1
  122. package/dist/testkit.js +6 -266
  123. package/dist/testkit.js.map +1 -1
  124. package/dist/tsconfig.tsbuildinfo +1 -1
  125. package/dist/utility.js +0 -243
  126. package/dist/utility.js.map +1 -1
  127. package/model/sdkgen.aon +19 -450
  128. package/package.json +4 -4
  129. package/project/.sdk/model/feature/audit.aon +0 -7
  130. package/project/.sdk/model/feature/cache.aon +0 -7
  131. package/project/.sdk/model/feature/clienttrack.aon +0 -7
  132. package/project/.sdk/model/feature/cost.aon +0 -13
  133. package/project/.sdk/model/feature/debug.aon +0 -7
  134. package/project/.sdk/model/feature/idempotency.aon +0 -7
  135. package/project/.sdk/model/feature/log.aon +0 -7
  136. package/project/.sdk/model/feature/metrics.aon +0 -7
  137. package/project/.sdk/model/feature/netsim.aon +0 -10
  138. package/project/.sdk/model/feature/paging.aon +0 -7
  139. package/project/.sdk/model/feature/proxy.aon +0 -7
  140. package/project/.sdk/model/feature/ratelimit.aon +0 -7
  141. package/project/.sdk/model/feature/retry.aon +0 -7
  142. package/project/.sdk/model/feature/secrets.aon +96 -450
  143. package/project/.sdk/model/feature/streaming.aon +0 -7
  144. package/project/.sdk/model/feature/telemetry.aon +0 -7
  145. package/project/.sdk/model/feature/test.aon +1 -8
  146. package/project/.sdk/model/feature/timeout.aon +0 -7
  147. package/project/.sdk/model/feature/validate.aon +0 -31
  148. package/project/.sdk/model/target/c.aon +1 -42
  149. package/project/.sdk/model/target/clojure.aon +1 -37
  150. package/project/.sdk/model/target/cpp.aon +1 -43
  151. package/project/.sdk/model/target/csharp.aon +1 -27
  152. package/project/.sdk/model/target/elixir.aon +1 -23
  153. package/project/.sdk/model/target/go-cli.aon +0 -30
  154. package/project/.sdk/model/target/go-mcp.aon +0 -21
  155. package/project/.sdk/model/target/go.aon +1 -10
  156. package/project/.sdk/model/target/java.aon +1 -30
  157. package/project/.sdk/model/target/js.aon +2 -21
  158. package/project/.sdk/model/target/kotlin.aon +1 -32
  159. package/project/.sdk/model/target/lua.aon +1 -33
  160. package/project/.sdk/model/target/ocaml.aon +1 -65
  161. package/project/.sdk/model/target/perl.aon +1 -21
  162. package/project/.sdk/model/target/php.aon +1 -18
  163. package/project/.sdk/model/target/py-data.aon +0 -33
  164. package/project/.sdk/model/target/py.aon +1 -18
  165. package/project/.sdk/model/target/rb.aon +1 -18
  166. package/project/.sdk/model/target/rust.aon +1 -26
  167. package/project/.sdk/model/target/scala.aon +1 -75
  168. package/project/.sdk/model/target/swift.aon +1 -42
  169. package/project/.sdk/model/target/ts.aon +3 -25
  170. package/project/.sdk/model/target/zig.aon +1 -51
  171. package/project/.sdk/src/cmp/c/Config_c.ts +0 -100
  172. package/project/.sdk/src/cmp/c/EntityTypes_c.ts +0 -36
  173. package/project/.sdk/src/cmp/c/Main_c.ts +3 -44
  174. package/project/.sdk/src/cmp/c/Package_c.ts +0 -14
  175. package/project/.sdk/src/cmp/c/PrepareAuth_c.ts +0 -85
  176. package/project/.sdk/src/cmp/c/ReadmeExamplesTest_c.ts +0 -20
  177. package/project/.sdk/src/cmp/c/ReadmeRef_c.ts +2 -5
  178. package/project/.sdk/src/cmp/c/ReadmeTopQuick_c.ts +0 -2
  179. package/project/.sdk/src/cmp/c/Schema_c.ts +87 -0
  180. package/project/.sdk/src/cmp/c/utility_c.ts +0 -47
  181. package/project/.sdk/src/cmp/clojure/Config_clojure.ts +0 -63
  182. package/project/.sdk/src/cmp/clojure/Entity_clojure.ts +0 -1
  183. package/project/.sdk/src/cmp/clojure/Main_clojure.ts +2 -41
  184. package/project/.sdk/src/cmp/clojure/Package_clojure.ts +0 -20
  185. package/project/.sdk/src/cmp/clojure/PrepareAuth_clojure.ts +0 -130
  186. package/project/.sdk/src/cmp/clojure/ReadmeExamplesTest_clojure.ts +0 -16
  187. package/project/.sdk/src/cmp/clojure/ReadmeExplanation_clojure.ts +1 -0
  188. package/project/.sdk/src/cmp/clojure/ReadmeRef_clojure.ts +2 -5
  189. package/project/.sdk/src/cmp/clojure/Schema_clojure.ts +53 -0
  190. package/project/.sdk/src/cmp/clojure/TestDirect_clojure.ts +0 -6
  191. package/project/.sdk/src/cmp/clojure/TestEntity_clojure.ts +0 -10
  192. package/project/.sdk/src/cmp/clojure/Test_clojure.ts +0 -8
  193. package/project/.sdk/src/cmp/clojure/featureextra_clojure.ts +0 -34
  194. package/project/.sdk/src/cmp/clojure/utility_clojure.ts +0 -47
  195. package/project/.sdk/src/cmp/cpp/Config_cpp.ts +0 -109
  196. package/project/.sdk/src/cmp/cpp/EntityTypes_cpp.ts +0 -36
  197. package/project/.sdk/src/cmp/cpp/Main_cpp.ts +3 -47
  198. package/project/.sdk/src/cmp/cpp/Package_cpp.ts +0 -14
  199. package/project/.sdk/src/cmp/cpp/PrepareAuth_cpp.ts +0 -125
  200. package/project/.sdk/src/cmp/cpp/ReadmeExamplesTest_cpp.ts +0 -19
  201. package/project/.sdk/src/cmp/cpp/ReadmeQuick_cpp.ts +0 -7
  202. package/project/.sdk/src/cmp/cpp/ReadmeRef_cpp.ts +2 -5
  203. package/project/.sdk/src/cmp/cpp/Schema_cpp.ts +84 -0
  204. package/project/.sdk/src/cmp/cpp/TestEntity_cpp.ts +0 -3
  205. package/project/.sdk/src/cmp/cpp/Test_cpp.ts +0 -3
  206. package/project/.sdk/src/cmp/cpp/utility_cpp.ts +0 -28
  207. package/project/.sdk/src/cmp/csharp/Config_csharp.ts +0 -79
  208. package/project/.sdk/src/cmp/csharp/EntityOperation_csharp.ts +0 -3
  209. package/project/.sdk/src/cmp/csharp/EntityTypes_csharp.ts +0 -50
  210. package/project/.sdk/src/cmp/csharp/Entity_csharp.ts +0 -1
  211. package/project/.sdk/src/cmp/csharp/Main_csharp.ts +3 -24
  212. package/project/.sdk/src/cmp/csharp/Package_csharp.ts +0 -20
  213. package/project/.sdk/src/cmp/csharp/PrepareAuth_csharp.ts +0 -81
  214. package/project/.sdk/src/cmp/csharp/ReadmeEntity_csharp.ts +0 -1
  215. package/project/.sdk/src/cmp/csharp/ReadmeExamplesTest_csharp.ts +0 -23
  216. package/project/.sdk/src/cmp/csharp/ReadmeRef_csharp.ts +2 -5
  217. package/project/.sdk/src/cmp/csharp/ReadmeTopQuick_csharp.ts +0 -2
  218. package/project/.sdk/src/cmp/csharp/Schema_csharp.ts +67 -0
  219. package/project/.sdk/src/cmp/csharp/TestEntity_csharp.ts +0 -4
  220. package/project/.sdk/src/cmp/csharp/utility_csharp.ts +0 -72
  221. package/project/.sdk/src/cmp/elixir/Config_elixir.ts +0 -78
  222. package/project/.sdk/src/cmp/elixir/EntityTypes_elixir.ts +0 -38
  223. package/project/.sdk/src/cmp/elixir/Main_elixir.ts +2 -40
  224. package/project/.sdk/src/cmp/elixir/Package_elixir.ts +0 -13
  225. package/project/.sdk/src/cmp/elixir/PrepareAuth_elixir.ts +0 -123
  226. package/project/.sdk/src/cmp/elixir/ReadmeExamplesTest_elixir.ts +0 -19
  227. package/project/.sdk/src/cmp/elixir/ReadmeExplanation_elixir.ts +1 -0
  228. package/project/.sdk/src/cmp/elixir/ReadmeRef_elixir.ts +2 -5
  229. package/project/.sdk/src/cmp/elixir/Schema_elixir.ts +64 -0
  230. package/project/.sdk/src/cmp/elixir/utility_elixir.ts +0 -34
  231. package/project/.sdk/src/cmp/go/Config_go.ts +0 -41
  232. package/project/.sdk/src/cmp/go/EntityTypes_go.ts +0 -71
  233. package/project/.sdk/src/cmp/go/Entity_go.ts +0 -5
  234. package/project/.sdk/src/cmp/go/Main_go.ts +2 -28
  235. package/project/.sdk/src/cmp/go/Package_go.ts +0 -7
  236. package/project/.sdk/src/cmp/go/PrepareAuth_go.ts +0 -64
  237. package/project/.sdk/src/cmp/go/ReadmeEntity_go.ts +0 -5
  238. package/project/.sdk/src/cmp/go/ReadmeExamplesTest_go.ts +0 -30
  239. package/project/.sdk/src/cmp/go/ReadmeHowto_go.ts +0 -3
  240. package/project/.sdk/src/cmp/go/ReadmeIntro_go.ts +0 -7
  241. package/project/.sdk/src/cmp/go/ReadmeModel_go.ts +0 -11
  242. package/project/.sdk/src/cmp/go/ReadmeQuick_go.ts +0 -21
  243. package/project/.sdk/src/cmp/go/ReadmeRef_go.ts +2 -14
  244. package/project/.sdk/src/cmp/go/ReadmeTopQuick_go.ts +0 -9
  245. package/project/.sdk/src/cmp/go/Schema_go.ts +72 -0
  246. package/project/.sdk/src/cmp/go/TestDirect_go.ts +0 -23
  247. package/project/.sdk/src/cmp/go/TestEntity_go.ts +0 -8
  248. package/project/.sdk/src/cmp/go/fragment/Entity.fragment.go +0 -21
  249. package/project/.sdk/src/cmp/go/fragment/Main.fragment.go +0 -12
  250. package/project/.sdk/src/cmp/go/utility_go.ts +0 -70
  251. package/project/.sdk/src/cmp/go-cli/Main_go-cli.ts +0 -49
  252. package/project/.sdk/src/cmp/go-cli/fragment/words.fragment.go +0 -12
  253. package/project/.sdk/src/cmp/go-mcp/Main_go-mcp.ts +0 -36
  254. package/project/.sdk/src/cmp/go-mcp/fragment/main.fragment.go +0 -20
  255. package/project/.sdk/src/cmp/go-mcp/fragment/tools.fragment.go +0 -3
  256. package/project/.sdk/src/cmp/java/Config_java.ts +0 -63
  257. package/project/.sdk/src/cmp/java/EntityTypes_java.ts +0 -50
  258. package/project/.sdk/src/cmp/java/Entity_java.ts +0 -6
  259. package/project/.sdk/src/cmp/java/Main_java.ts +2 -24
  260. package/project/.sdk/src/cmp/java/PrepareAuth_java.ts +0 -55
  261. package/project/.sdk/src/cmp/java/ReadmeEntity_java.ts +0 -1
  262. package/project/.sdk/src/cmp/java/ReadmeExamplesTest_java.ts +0 -20
  263. package/project/.sdk/src/cmp/java/ReadmeQuick_java.ts +0 -4
  264. package/project/.sdk/src/cmp/java/ReadmeRef_java.ts +2 -5
  265. package/project/.sdk/src/cmp/java/ReadmeTopQuick_java.ts +0 -7
  266. package/project/.sdk/src/cmp/java/Schema_java.ts +106 -0
  267. package/project/.sdk/src/cmp/java/TestDirect_java.ts +0 -7
  268. package/project/.sdk/src/cmp/java/TestEntity_java.ts +0 -4
  269. package/project/.sdk/src/cmp/java/Test_java.ts +0 -6
  270. package/project/.sdk/src/cmp/java/utility_java.ts +0 -33
  271. package/project/.sdk/src/cmp/js/Config_js.ts +0 -46
  272. package/project/.sdk/src/cmp/js/EntityTypes_js.ts +0 -33
  273. package/project/.sdk/src/cmp/js/Main_js.ts +0 -33
  274. package/project/.sdk/src/cmp/js/Package_js.ts +2 -7
  275. package/project/.sdk/src/cmp/js/PrepareAuth_js.ts +0 -57
  276. package/project/.sdk/src/cmp/js/ReadmeEntity_js.ts +0 -9
  277. package/project/.sdk/src/cmp/js/ReadmeHowto_js.ts +0 -2
  278. package/project/.sdk/src/cmp/js/ReadmeQuick_js.ts +0 -15
  279. package/project/.sdk/src/cmp/js/ReadmeRef_js.ts +2 -7
  280. package/project/.sdk/src/cmp/js/ReadmeTopQuick_js.ts +0 -7
  281. package/project/.sdk/src/cmp/js/Schema_js.ts +0 -21
  282. package/project/.sdk/src/cmp/js/TestDirect_js.ts +2 -16
  283. package/project/.sdk/src/cmp/js/TestEntity_js.ts +3 -13
  284. package/project/.sdk/src/cmp/js/TestLive_js.ts +10 -3
  285. package/project/.sdk/src/cmp/js/utility_js.ts +0 -58
  286. package/project/.sdk/src/cmp/kotlin/Config_kotlin.ts +0 -46
  287. package/project/.sdk/src/cmp/kotlin/EntityOperation_kotlin.ts +0 -2
  288. package/project/.sdk/src/cmp/kotlin/EntityTypes_kotlin.ts +0 -53
  289. package/project/.sdk/src/cmp/kotlin/Entity_kotlin.ts +0 -4
  290. package/project/.sdk/src/cmp/kotlin/Main_kotlin.ts +2 -46
  291. package/project/.sdk/src/cmp/kotlin/PrepareAuth_kotlin.ts +0 -113
  292. package/project/.sdk/src/cmp/kotlin/ReadmeEntity_kotlin.ts +0 -1
  293. package/project/.sdk/src/cmp/kotlin/ReadmeExamplesTest_kotlin.ts +0 -20
  294. package/project/.sdk/src/cmp/kotlin/ReadmeRef_kotlin.ts +2 -5
  295. package/project/.sdk/src/cmp/kotlin/ReadmeTopQuick_kotlin.ts +0 -5
  296. package/project/.sdk/src/cmp/kotlin/Schema_kotlin.ts +92 -0
  297. package/project/.sdk/src/cmp/kotlin/TestEntity_kotlin.ts +0 -4
  298. package/project/.sdk/src/cmp/kotlin/Test_kotlin.ts +0 -6
  299. package/project/.sdk/src/cmp/kotlin/utility_kotlin.ts +0 -33
  300. package/project/.sdk/src/cmp/lua/Config_lua.ts +0 -56
  301. package/project/.sdk/src/cmp/lua/EntityTypes_lua.ts +0 -30
  302. package/project/.sdk/src/cmp/lua/Entity_lua.ts +0 -7
  303. package/project/.sdk/src/cmp/lua/Main_lua.ts +38 -59
  304. package/project/.sdk/src/cmp/lua/Package_lua.ts +1 -20
  305. package/project/.sdk/src/cmp/lua/PrepareAuth_lua.ts +0 -61
  306. package/project/.sdk/src/cmp/lua/ReadmeEntity_lua.ts +0 -8
  307. package/project/.sdk/src/cmp/lua/ReadmeExamplesTest_lua.ts +0 -24
  308. package/project/.sdk/src/cmp/lua/ReadmeExplanation_lua.ts +1 -0
  309. package/project/.sdk/src/cmp/lua/ReadmeModel_lua.ts +0 -10
  310. package/project/.sdk/src/cmp/lua/ReadmeQuick_lua.ts +0 -21
  311. package/project/.sdk/src/cmp/lua/ReadmeRef_lua.ts +2 -12
  312. package/project/.sdk/src/cmp/lua/ReadmeTopQuick_lua.ts +0 -3
  313. package/project/.sdk/src/cmp/lua/Schema_lua.ts +56 -0
  314. package/project/.sdk/src/cmp/lua/TestDirect_lua.ts +0 -2
  315. package/project/.sdk/src/cmp/lua/utility_lua.ts +0 -30
  316. package/project/.sdk/src/cmp/ocaml/Config_ocaml.ts +18 -93
  317. package/project/.sdk/src/cmp/ocaml/EntityOperation_ocaml.ts +0 -6
  318. package/project/.sdk/src/cmp/ocaml/Main_ocaml.ts +27 -84
  319. package/project/.sdk/src/cmp/ocaml/Package_ocaml.ts +0 -13
  320. package/project/.sdk/src/cmp/ocaml/PrepareAuth_ocaml.ts +0 -145
  321. package/project/.sdk/src/cmp/ocaml/ReadmeExamplesTest_ocaml.ts +0 -17
  322. package/project/.sdk/src/cmp/ocaml/ReadmeExplanation_ocaml.ts +1 -0
  323. package/project/.sdk/src/cmp/ocaml/ReadmeRef_ocaml.ts +2 -5
  324. package/project/.sdk/src/cmp/ocaml/Schema_ocaml.ts +76 -0
  325. package/project/.sdk/src/cmp/ocaml/SdkError_ocaml.ts +0 -4
  326. package/project/.sdk/src/cmp/ocaml/TestEntity_ocaml.ts +0 -5
  327. package/project/.sdk/src/cmp/ocaml/utility_ocaml.ts +0 -27
  328. package/project/.sdk/src/cmp/perl/Config_perl.ts +0 -52
  329. package/project/.sdk/src/cmp/perl/Entity_perl.ts +0 -3
  330. package/project/.sdk/src/cmp/perl/Main_perl.ts +2 -33
  331. package/project/.sdk/src/cmp/perl/Package_perl.ts +0 -8
  332. package/project/.sdk/src/cmp/perl/PrepareAuth_perl.ts +0 -84
  333. package/project/.sdk/src/cmp/perl/ReadmeEntity_perl.ts +0 -3
  334. package/project/.sdk/src/cmp/perl/ReadmeExamplesTest_perl.ts +0 -27
  335. package/project/.sdk/src/cmp/perl/ReadmeExplanation_perl.ts +1 -0
  336. package/project/.sdk/src/cmp/perl/ReadmeRef_perl.ts +2 -5
  337. package/project/.sdk/src/cmp/perl/ReadmeTopQuick_perl.ts +0 -2
  338. package/project/.sdk/src/cmp/perl/Schema_perl.ts +89 -0
  339. package/project/.sdk/src/cmp/perl/TestDirect_perl.ts +0 -2
  340. package/project/.sdk/src/cmp/perl/utility_perl.ts +0 -26
  341. package/project/.sdk/src/cmp/php/Config_php.ts +0 -76
  342. package/project/.sdk/src/cmp/php/EntityTypes_php.ts +0 -51
  343. package/project/.sdk/src/cmp/php/MainEntity_php.ts +0 -6
  344. package/project/.sdk/src/cmp/php/Main_php.ts +2 -15
  345. package/project/.sdk/src/cmp/php/Package_php.ts +1 -1
  346. package/project/.sdk/src/cmp/php/PrepareAuth_php.ts +0 -73
  347. package/project/.sdk/src/cmp/php/ReadmeEntity_php.ts +0 -4
  348. package/project/.sdk/src/cmp/php/ReadmeExamplesTest_php.ts +0 -33
  349. package/project/.sdk/src/cmp/php/ReadmeExplanation_php.ts +1 -0
  350. package/project/.sdk/src/cmp/php/ReadmeHowto_php.ts +0 -1
  351. package/project/.sdk/src/cmp/php/ReadmeQuick_php.ts +0 -19
  352. package/project/.sdk/src/cmp/php/ReadmeRef_php.ts +2 -7
  353. package/project/.sdk/src/cmp/php/Schema_php.ts +114 -0
  354. package/project/.sdk/src/cmp/php/TestEntity_php.ts +0 -9
  355. package/project/.sdk/src/cmp/php/utility_php.ts +0 -22
  356. package/project/.sdk/src/cmp/py/Config_py.ts +0 -53
  357. package/project/.sdk/src/cmp/py/EntityTypes_py.ts +0 -55
  358. package/project/.sdk/src/cmp/py/Entity_py.ts +0 -16
  359. package/project/.sdk/src/cmp/py/Main_py.ts +3 -61
  360. package/project/.sdk/src/cmp/py/Package_py.ts +0 -3
  361. package/project/.sdk/src/cmp/py/PrepareAuth_py.ts +0 -69
  362. package/project/.sdk/src/cmp/py/ReadmeEntity_py.ts +0 -13
  363. package/project/.sdk/src/cmp/py/ReadmeExamplesTest_py.ts +0 -31
  364. package/project/.sdk/src/cmp/py/ReadmeExplanation_py.ts +1 -0
  365. package/project/.sdk/src/cmp/py/ReadmeHowto_py.ts +0 -3
  366. package/project/.sdk/src/cmp/py/ReadmeQuick_py.ts +0 -28
  367. package/project/.sdk/src/cmp/py/ReadmeRef_py.ts +2 -16
  368. package/project/.sdk/src/cmp/py/ReadmeTopQuick_py.ts +0 -14
  369. package/project/.sdk/src/cmp/py/Schema_py.ts +53 -0
  370. package/project/.sdk/src/cmp/py/TestDirect_py.ts +0 -2
  371. package/project/.sdk/src/cmp/py/utility_py.ts +0 -22
  372. package/project/.sdk/src/cmp/py-data/Main_py-data.ts +9 -43
  373. package/project/.sdk/src/cmp/rb/Config_rb.ts +0 -56
  374. package/project/.sdk/src/cmp/rb/EntityTypes_rb.ts +0 -58
  375. package/project/.sdk/src/cmp/rb/Entity_rb.ts +0 -3
  376. package/project/.sdk/src/cmp/rb/Main_rb.ts +2 -10
  377. package/project/.sdk/src/cmp/rb/Package_rb.ts +0 -5
  378. package/project/.sdk/src/cmp/rb/PrepareAuth_rb.ts +0 -81
  379. package/project/.sdk/src/cmp/rb/ReadmeEntity_rb.ts +0 -7
  380. package/project/.sdk/src/cmp/rb/ReadmeExamplesTest_rb.ts +0 -32
  381. package/project/.sdk/src/cmp/rb/ReadmeExplanation_rb.ts +1 -0
  382. package/project/.sdk/src/cmp/rb/ReadmeHowto_rb.ts +0 -9
  383. package/project/.sdk/src/cmp/rb/ReadmeQuick_rb.ts +0 -23
  384. package/project/.sdk/src/cmp/rb/ReadmeRef_rb.ts +2 -10
  385. package/project/.sdk/src/cmp/rb/ReadmeTopQuick_rb.ts +0 -5
  386. package/project/.sdk/src/cmp/rb/ReadmeTopTest_rb.ts +0 -3
  387. package/project/.sdk/src/cmp/rb/Schema_rb.ts +55 -0
  388. package/project/.sdk/src/cmp/rb/TestDirect_rb.ts +0 -2
  389. package/project/.sdk/src/cmp/rb/utility_rb.ts +0 -22
  390. package/project/.sdk/src/cmp/rust/Config_rust.ts +0 -35
  391. package/project/.sdk/src/cmp/rust/EntityTypes_rust.ts +0 -34
  392. package/project/.sdk/src/cmp/rust/Entity_rust.ts +0 -9
  393. package/project/.sdk/src/cmp/rust/Main_rust.ts +3 -58
  394. package/project/.sdk/src/cmp/rust/Package_rust.ts +0 -30
  395. package/project/.sdk/src/cmp/rust/PrepareAuth_rust.ts +0 -84
  396. package/project/.sdk/src/cmp/rust/ReadmeExamplesTest_rust.ts +0 -16
  397. package/project/.sdk/src/cmp/rust/ReadmeRef_rust.ts +2 -5
  398. package/project/.sdk/src/cmp/rust/Schema_rust.ts +89 -0
  399. package/project/.sdk/src/cmp/rust/TestDirect_rust.ts +0 -7
  400. package/project/.sdk/src/cmp/rust/TestEntity_rust.ts +0 -9
  401. package/project/.sdk/src/cmp/rust/fragment/Entity.fragment.rs +0 -14
  402. package/project/.sdk/src/cmp/rust/fragment/EntityRemoveOp.fragment.rs +0 -4
  403. package/project/.sdk/src/cmp/rust/fragment/Main.fragment.rs +0 -20
  404. package/project/.sdk/src/cmp/rust/fragment/SdkError.fragment.rs +0 -6
  405. package/project/.sdk/src/cmp/rust/utility_rust.ts +0 -47
  406. package/project/.sdk/src/cmp/scala/Config_scala.ts +0 -31
  407. package/project/.sdk/src/cmp/scala/EntityTypes_scala.ts +0 -51
  408. package/project/.sdk/src/cmp/scala/Main_scala.ts +3 -78
  409. package/project/.sdk/src/cmp/scala/PrepareAuth_scala.ts +0 -102
  410. package/project/.sdk/src/cmp/scala/ReadmeEntity_scala.ts +0 -1
  411. package/project/.sdk/src/cmp/scala/ReadmeExamplesTest_scala.ts +0 -23
  412. package/project/.sdk/src/cmp/scala/ReadmeRef_scala.ts +2 -5
  413. package/project/.sdk/src/cmp/scala/ReadmeTopQuick_scala.ts +0 -5
  414. package/project/.sdk/src/cmp/scala/Schema_scala.ts +89 -0
  415. package/project/.sdk/src/cmp/scala/TestEntity_scala.ts +0 -8
  416. package/project/.sdk/src/cmp/scala/Test_scala.ts +0 -3
  417. package/project/.sdk/src/cmp/scala/utility_scala.ts +0 -31
  418. package/project/.sdk/src/cmp/swift/Config_swift.ts +0 -62
  419. package/project/.sdk/src/cmp/swift/EntityOperation_swift.ts +0 -3
  420. package/project/.sdk/src/cmp/swift/EntityTypes_swift.ts +0 -39
  421. package/project/.sdk/src/cmp/swift/Main_swift.ts +3 -42
  422. package/project/.sdk/src/cmp/swift/Package_swift.ts +0 -69
  423. package/project/.sdk/src/cmp/swift/PrepareAuth_swift.ts +0 -134
  424. package/project/.sdk/src/cmp/swift/ReadmeEntity_swift.ts +0 -2
  425. package/project/.sdk/src/cmp/swift/ReadmeExamplesTest_swift.ts +0 -22
  426. package/project/.sdk/src/cmp/swift/ReadmeRef_swift.ts +2 -5
  427. package/project/.sdk/src/cmp/swift/Schema_swift.ts +74 -0
  428. package/project/.sdk/src/cmp/swift/TestEntity_swift.ts +0 -4
  429. package/project/.sdk/src/cmp/swift/utility_swift.ts +0 -51
  430. package/project/.sdk/src/cmp/ts/Config_ts.ts +0 -46
  431. package/project/.sdk/src/cmp/ts/EntityTypes_ts.ts +0 -34
  432. package/project/.sdk/src/cmp/ts/Entity_ts.ts +0 -6
  433. package/project/.sdk/src/cmp/ts/Main_ts.ts +0 -28
  434. package/project/.sdk/src/cmp/ts/Package_ts.ts +2 -26
  435. package/project/.sdk/src/cmp/ts/PrepareAuth_ts.ts +0 -55
  436. package/project/.sdk/src/cmp/ts/ReadmeEntity_ts.ts +0 -9
  437. package/project/.sdk/src/cmp/ts/ReadmeExampleTest_ts.ts +0 -6
  438. package/project/.sdk/src/cmp/ts/ReadmeExamplesTest_ts.ts +0 -25
  439. package/project/.sdk/src/cmp/ts/ReadmeHowto_ts.ts +4 -9
  440. package/project/.sdk/src/cmp/ts/ReadmeIntro_ts.ts +0 -7
  441. package/project/.sdk/src/cmp/ts/ReadmeModel_ts.ts +0 -3
  442. package/project/.sdk/src/cmp/ts/ReadmeQuick_ts.ts +0 -43
  443. package/project/.sdk/src/cmp/ts/ReadmeRef_ts.ts +2 -20
  444. package/project/.sdk/src/cmp/ts/ReadmeTopQuick_ts.ts +0 -11
  445. package/project/.sdk/src/cmp/ts/ReadmeTopTest_ts.ts +6 -9
  446. package/project/.sdk/src/cmp/ts/Schema_ts.ts +0 -21
  447. package/project/.sdk/src/cmp/ts/TestDirect_ts.ts +2 -53
  448. package/project/.sdk/src/cmp/ts/TestEntity_ts.ts +3 -31
  449. package/project/.sdk/src/cmp/ts/TestLive_ts.ts +10 -4
  450. package/project/.sdk/src/cmp/ts/Test_ts.ts +0 -4
  451. package/project/.sdk/src/cmp/ts/fragment/Config.data.fragment.ts +0 -27
  452. package/project/.sdk/src/cmp/ts/fragment/Config.fragment.ts +0 -7
  453. package/project/.sdk/src/cmp/ts/fragment/Direct.test.fragment.ts +0 -7
  454. package/project/.sdk/src/cmp/ts/fragment/Entity.fragment.ts +0 -1
  455. package/project/.sdk/src/cmp/ts/fragment/Entity.test.fragment.ts +0 -4
  456. package/project/.sdk/src/cmp/ts/fragment/EntityBase.fragment.ts +0 -20
  457. package/project/.sdk/src/cmp/ts/fragment/EntityCreateOp.fragment.ts +0 -6
  458. package/project/.sdk/src/cmp/ts/fragment/EntityLoadOp.fragment.ts +0 -6
  459. package/project/.sdk/src/cmp/ts/fragment/EntityRemoveOp.fragment.ts +0 -15
  460. package/project/.sdk/src/cmp/ts/fragment/EntityUpdateOp.fragment.ts +0 -6
  461. package/project/.sdk/src/cmp/ts/fragment/Main.fragment.ts +0 -15
  462. package/project/.sdk/src/cmp/ts/fragment/MainStation.fragment.ts +0 -12
  463. package/project/.sdk/src/cmp/ts/fragment/SdkError.fragment.ts +0 -9
  464. package/project/.sdk/src/cmp/ts/utility_ts.ts +0 -59
  465. package/project/.sdk/src/cmp/zig/Config_zig.ts +0 -70
  466. package/project/.sdk/src/cmp/zig/Entity_zig.ts +0 -3
  467. package/project/.sdk/src/cmp/zig/Main_zig.ts +3 -83
  468. package/project/.sdk/src/cmp/zig/Package_zig.ts +0 -22
  469. package/project/.sdk/src/cmp/zig/PrepareAuth_zig.ts +0 -136
  470. package/project/.sdk/src/cmp/zig/ReadmeExamplesTest_zig.ts +0 -18
  471. package/project/.sdk/src/cmp/zig/ReadmeQuick_zig.ts +0 -3
  472. package/project/.sdk/src/cmp/zig/ReadmeRef_zig.ts +2 -5
  473. package/project/.sdk/src/cmp/zig/Schema_zig.ts +91 -0
  474. package/project/.sdk/src/cmp/zig/TestDirect_zig.ts +0 -11
  475. package/project/.sdk/src/cmp/zig/TestEntity_zig.ts +0 -8
  476. package/project/.sdk/src/cmp/zig/Test_zig.ts +0 -11
  477. package/project/.sdk/src/cmp/zig/utility_zig.ts +0 -47
  478. package/project/.sdk/tm/c/core/context.c +3 -0
  479. package/project/.sdk/tm/c/core/sdk.h +14 -0
  480. package/project/.sdk/tm/c/feature/secrets/plugin/capability.c +2 -2
  481. package/project/.sdk/tm/c/feature/secrets/plugin/capability.h +2 -2
  482. package/project/.sdk/tm/c/feature/secrets/plugin/catalog.c +2 -2
  483. package/project/.sdk/tm/c/feature/secrets/plugin/catalog.h +2 -2
  484. package/project/.sdk/tm/c/feature/secrets/plugin/config.c +2 -2
  485. package/project/.sdk/tm/c/feature/secrets/plugin/config.h +2 -2
  486. package/project/.sdk/tm/c/feature/secrets/plugin/depend.c +2 -2
  487. package/project/.sdk/tm/c/feature/secrets/plugin/depend.h +2 -2
  488. package/project/.sdk/tm/c/feature/secrets/plugin/env.c +2 -2
  489. package/project/.sdk/tm/c/feature/secrets/plugin/env.h +2 -2
  490. package/project/.sdk/tm/c/feature/secrets/plugin/export.c +3 -3
  491. package/project/.sdk/tm/c/feature/secrets/plugin/export.h +2 -2
  492. package/project/.sdk/tm/c/feature/secrets/plugin/graph.c +2 -2
  493. package/project/.sdk/tm/c/feature/secrets/plugin/graph.h +2 -2
  494. package/project/.sdk/tm/c/feature/secrets/plugin/host.c +25 -2
  495. package/project/.sdk/tm/c/feature/secrets/plugin/host.h +3 -2
  496. package/project/.sdk/tm/c/feature/secrets/plugin/order.c +2 -2
  497. package/project/.sdk/tm/c/feature/secrets/plugin/order.h +2 -2
  498. package/project/.sdk/tm/c/feature/secrets/plugin/point.c +2 -2
  499. package/project/.sdk/tm/c/feature/secrets/plugin/point.h +2 -2
  500. package/project/.sdk/tm/c/feature/secrets/plugin/ref.c +2 -2
  501. package/project/.sdk/tm/c/feature/secrets/plugin/ref.h +2 -2
  502. package/project/.sdk/tm/c/feature/secrets/plugin/resolve.c +2 -2
  503. package/project/.sdk/tm/c/feature/secrets/plugin/resolve.h +2 -2
  504. package/project/.sdk/tm/c/feature/secrets/plugin/types.c +2 -2
  505. package/project/.sdk/tm/c/feature/secrets/plugin/types.h +2 -2
  506. package/project/.sdk/tm/c/feature/secrets/plugin/value.c +2 -2
  507. package/project/.sdk/tm/c/feature/secrets/plugin/value.h +2 -2
  508. package/project/.sdk/tm/c/feature/secrets/plugin/version.c +2 -2
  509. package/project/.sdk/tm/c/feature/secrets/plugin/version.h +2 -2
  510. package/project/.sdk/tm/c/feature/secrets/plugins/aws.c +2 -2
  511. package/project/.sdk/tm/c/feature/secrets/plugins/azuresecrets.c +2 -2
  512. package/project/.sdk/tm/c/feature/secrets/plugins/boru.c +2 -2
  513. package/project/.sdk/tm/c/feature/secrets/plugins/clock.c +2 -2
  514. package/project/.sdk/tm/c/feature/secrets/plugins/doppler.c +2 -2
  515. package/project/.sdk/tm/c/feature/secrets/plugins/encode.c +2 -2
  516. package/project/.sdk/tm/c/feature/secrets/plugins/gcpsecrets.c +2 -2
  517. package/project/.sdk/tm/c/feature/secrets/plugins/hashicorp.c +2 -2
  518. package/project/.sdk/tm/c/feature/secrets/plugins/httpjson.c +2 -2
  519. package/project/.sdk/tm/c/feature/secrets/plugins/infisical.c +2 -2
  520. package/project/.sdk/tm/c/feature/secrets/plugins/minivault.c +2072 -0
  521. package/project/.sdk/tm/c/feature/secrets/plugins/onepassword.c +2 -2
  522. package/project/.sdk/tm/c/feature/secrets/plugins/proc.c +2 -2
  523. package/project/.sdk/tm/c/feature/secrets/plugins/secretspec.c +2 -2
  524. package/project/.sdk/tm/c/feature/secrets/plugins/sekretoplugins.h +151 -10
  525. package/project/.sdk/tm/c/feature/secrets/plugins/sha256.c +16 -10
  526. package/project/.sdk/tm/c/feature/secrets/plugins/sigv4.c +2 -2
  527. package/project/.sdk/tm/c/feature/secrets/plugins/support.h +12 -8
  528. package/project/.sdk/tm/c/feature/secrets/plugins/tls.c +2 -2
  529. package/project/.sdk/tm/c/feature/secrets/sekreto/internal.h +17 -2
  530. package/project/.sdk/tm/c/feature/secrets/sekreto/json.c +5 -5
  531. package/project/.sdk/tm/c/feature/secrets/sekreto/providers.c +37 -9
  532. package/project/.sdk/tm/c/feature/secrets/sekreto/sekreto.c +2 -2
  533. package/project/.sdk/tm/c/feature/secrets/sekreto/sekreto.h +17 -2
  534. package/project/.sdk/tm/c/feature/secrets/sekreto/util.c +16 -2
  535. package/project/.sdk/tm/c/feature/validate.c +364 -0
  536. package/project/.sdk/tm/c/feature/validate.h +29 -0
  537. package/project/.sdk/tm/c/src/feature/validate/.gitkeep +0 -0
  538. package/project/.sdk/tm/c/tests/vendor/omni/json.c +2 -2
  539. package/project/.sdk/tm/c/tests/vendor/omni/omni.h +2 -2
  540. package/project/.sdk/tm/c/tests/vendor/omni/runner.c +2 -2
  541. package/project/.sdk/tm/c/tests/vendor/omni/util.c +2 -2
  542. package/project/.sdk/tm/c/utility/make_options.c +12 -24
  543. package/project/.sdk/tm/c/utility/make_spec.c +8 -0
  544. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin/capability.clj +2 -2
  545. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin/catalog.clj +2 -2
  546. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin/config.clj +2 -2
  547. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin/depend.clj +2 -2
  548. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin/env.clj +2 -2
  549. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin/export.clj +3 -3
  550. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin/graph.clj +2 -2
  551. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin/host.clj +17 -2
  552. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin/json.clj +2 -2
  553. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin/order.clj +2 -2
  554. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin/point.clj +2 -2
  555. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin/ref.clj +2 -2
  556. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin/resolve.clj +2 -2
  557. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin/types.clj +2 -2
  558. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin/version.clj +2 -2
  559. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin.clj +2 -2
  560. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/addr.clj +2 -2
  561. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/chain.clj +2 -2
  562. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/core.clj +2 -2
  563. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/json.clj +2 -2
  564. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/plugins/aws.clj +2 -2
  565. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/plugins/azuresecrets.clj +2 -2
  566. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/plugins/boru.clj +2 -2
  567. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/plugins/doppler.clj +2 -2
  568. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/plugins/gcpsecrets.clj +2 -2
  569. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/plugins/hashicorp.clj +2 -2
  570. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/plugins/httpjson.clj +2 -2
  571. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/plugins/infisical.clj +2 -2
  572. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/plugins/minivault.clj +837 -0
  573. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/plugins/onepassword.clj +2 -2
  574. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/plugins/proc.clj +2 -2
  575. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/plugins/secretspec.clj +2 -2
  576. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/plugins/sigv4.clj +2 -2
  577. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/provider.clj +2 -2
  578. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/providers.clj +6 -4
  579. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto.clj +2 -2
  580. package/project/.sdk/tm/clojure/src/feature/validate/.gitkeep +0 -0
  581. package/project/.sdk/tm/clojure/src/sdk/core.clj +31 -41
  582. package/project/.sdk/tm/clojure/src/sdk/features.clj +202 -0
  583. package/project/.sdk/tm/clojure/test/vendor/omni/voxgig/omni/json.clj +2 -2
  584. package/project/.sdk/tm/clojure/test/vendor/omni/voxgig/omni/runner.clj +2 -2
  585. package/project/.sdk/tm/clojure/test/vendor/omni/voxgig/omni/util.clj +2 -2
  586. package/project/.sdk/tm/cpp/core/types.hpp +4 -0
  587. package/project/.sdk/tm/cpp/feature/secrets/plugin/capability.cpp +2 -2
  588. package/project/.sdk/tm/cpp/feature/secrets/plugin/capability.hpp +2 -2
  589. package/project/.sdk/tm/cpp/feature/secrets/plugin/catalog.cpp +2 -2
  590. package/project/.sdk/tm/cpp/feature/secrets/plugin/catalog.hpp +2 -2
  591. package/project/.sdk/tm/cpp/feature/secrets/plugin/config.cpp +2 -2
  592. package/project/.sdk/tm/cpp/feature/secrets/plugin/config.hpp +2 -2
  593. package/project/.sdk/tm/cpp/feature/secrets/plugin/depend.cpp +2 -2
  594. package/project/.sdk/tm/cpp/feature/secrets/plugin/depend.hpp +2 -2
  595. package/project/.sdk/tm/cpp/feature/secrets/plugin/env.cpp +2 -2
  596. package/project/.sdk/tm/cpp/feature/secrets/plugin/env.hpp +2 -2
  597. package/project/.sdk/tm/cpp/feature/secrets/plugin/export.cpp +3 -3
  598. package/project/.sdk/tm/cpp/feature/secrets/plugin/export.hpp +2 -2
  599. package/project/.sdk/tm/cpp/feature/secrets/plugin/graph.cpp +2 -2
  600. package/project/.sdk/tm/cpp/feature/secrets/plugin/graph.hpp +2 -2
  601. package/project/.sdk/tm/cpp/feature/secrets/plugin/host.cpp +21 -2
  602. package/project/.sdk/tm/cpp/feature/secrets/plugin/host.hpp +3 -2
  603. package/project/.sdk/tm/cpp/feature/secrets/plugin/order.cpp +2 -2
  604. package/project/.sdk/tm/cpp/feature/secrets/plugin/order.hpp +2 -2
  605. package/project/.sdk/tm/cpp/feature/secrets/plugin/point.cpp +2 -2
  606. package/project/.sdk/tm/cpp/feature/secrets/plugin/point.hpp +2 -2
  607. package/project/.sdk/tm/cpp/feature/secrets/plugin/ref.cpp +2 -2
  608. package/project/.sdk/tm/cpp/feature/secrets/plugin/ref.hpp +2 -2
  609. package/project/.sdk/tm/cpp/feature/secrets/plugin/resolve.cpp +2 -2
  610. package/project/.sdk/tm/cpp/feature/secrets/plugin/resolve.hpp +2 -2
  611. package/project/.sdk/tm/cpp/feature/secrets/plugin/types.cpp +2 -2
  612. package/project/.sdk/tm/cpp/feature/secrets/plugin/types.hpp +2 -2
  613. package/project/.sdk/tm/cpp/feature/secrets/plugin/value.cpp +2 -2
  614. package/project/.sdk/tm/cpp/feature/secrets/plugin/value.hpp +2 -2
  615. package/project/.sdk/tm/cpp/feature/secrets/plugin/version.cpp +2 -2
  616. package/project/.sdk/tm/cpp/feature/secrets/plugin/version.hpp +2 -2
  617. package/project/.sdk/tm/cpp/feature/secrets/plugins/Aws.cpp +2 -2
  618. package/project/.sdk/tm/cpp/feature/secrets/plugins/Aws.hpp +2 -2
  619. package/project/.sdk/tm/cpp/feature/secrets/plugins/Azuresecrets.cpp +2 -2
  620. package/project/.sdk/tm/cpp/feature/secrets/plugins/Azuresecrets.hpp +2 -2
  621. package/project/.sdk/tm/cpp/feature/secrets/plugins/Boru.cpp +2 -2
  622. package/project/.sdk/tm/cpp/feature/secrets/plugins/Boru.hpp +2 -2
  623. package/project/.sdk/tm/cpp/feature/secrets/plugins/Crypto.cpp +2 -2
  624. package/project/.sdk/tm/cpp/feature/secrets/plugins/Crypto.hpp +9 -7
  625. package/project/.sdk/tm/cpp/feature/secrets/plugins/Doppler.cpp +2 -2
  626. package/project/.sdk/tm/cpp/feature/secrets/plugins/Doppler.hpp +2 -2
  627. package/project/.sdk/tm/cpp/feature/secrets/plugins/Gcpsecrets.cpp +2 -2
  628. package/project/.sdk/tm/cpp/feature/secrets/plugins/Gcpsecrets.hpp +2 -2
  629. package/project/.sdk/tm/cpp/feature/secrets/plugins/Hashicorp.cpp +2 -2
  630. package/project/.sdk/tm/cpp/feature/secrets/plugins/Hashicorp.hpp +2 -2
  631. package/project/.sdk/tm/cpp/feature/secrets/plugins/Httpjson.cpp +2 -2
  632. package/project/.sdk/tm/cpp/feature/secrets/plugins/Httpjson.hpp +2 -2
  633. package/project/.sdk/tm/cpp/feature/secrets/plugins/Infisical.cpp +2 -2
  634. package/project/.sdk/tm/cpp/feature/secrets/plugins/Infisical.hpp +2 -2
  635. package/project/.sdk/tm/cpp/feature/secrets/plugins/Minivault.cpp +1345 -0
  636. package/project/.sdk/tm/cpp/feature/secrets/plugins/Minivault.hpp +219 -0
  637. package/project/.sdk/tm/cpp/feature/secrets/plugins/Onepassword.cpp +2 -2
  638. package/project/.sdk/tm/cpp/feature/secrets/plugins/Onepassword.hpp +2 -2
  639. package/project/.sdk/tm/cpp/feature/secrets/plugins/Proc.cpp +2 -2
  640. package/project/.sdk/tm/cpp/feature/secrets/plugins/Proc.hpp +2 -2
  641. package/project/.sdk/tm/cpp/feature/secrets/plugins/Secretspec.cpp +2 -2
  642. package/project/.sdk/tm/cpp/feature/secrets/plugins/Secretspec.hpp +2 -2
  643. package/project/.sdk/tm/cpp/feature/secrets/plugins/Sigv4.cpp +2 -2
  644. package/project/.sdk/tm/cpp/feature/secrets/plugins/Sigv4.hpp +2 -2
  645. package/project/.sdk/tm/cpp/feature/secrets/plugins/Tls.cpp +2 -2
  646. package/project/.sdk/tm/cpp/feature/secrets/plugins/Tls.hpp +2 -2
  647. package/project/.sdk/tm/cpp/feature/secrets/sekreto/Json.cpp +2 -2
  648. package/project/.sdk/tm/cpp/feature/secrets/sekreto/Json.hpp +2 -2
  649. package/project/.sdk/tm/cpp/feature/secrets/sekreto/Provider.cpp +22 -2
  650. package/project/.sdk/tm/cpp/feature/secrets/sekreto/Provider.hpp +12 -2
  651. package/project/.sdk/tm/cpp/feature/secrets/sekreto/Providers.cpp +3 -3
  652. package/project/.sdk/tm/cpp/feature/secrets/sekreto/Providers.hpp +2 -2
  653. package/project/.sdk/tm/cpp/feature/secrets/sekreto/Sekreto.cpp +2 -2
  654. package/project/.sdk/tm/cpp/feature/secrets/sekreto/Sekreto.hpp +2 -2
  655. package/project/.sdk/tm/cpp/feature/validate.hpp +301 -0
  656. package/project/.sdk/tm/cpp/src/feature/validate/.gitkeep +0 -0
  657. package/project/.sdk/tm/cpp/test/vendor/omni/json.hpp +2 -2
  658. package/project/.sdk/tm/cpp/test/vendor/omni/omni.hpp +2 -2
  659. package/project/.sdk/tm/cpp/test/vendor/omni/util.hpp +2 -2
  660. package/project/.sdk/tm/cpp/utility/pipeline.hpp +24 -41
  661. package/project/.sdk/tm/csharp/feature/FeatureOptions.cs +18 -5
  662. package/project/.sdk/tm/csharp/feature/ValidateFeature.cs +343 -0
  663. package/project/.sdk/tm/csharp/feature/secrets/plugin/Capability.cs +2 -2
  664. package/project/.sdk/tm/csharp/feature/secrets/plugin/Catalog.cs +2 -2
  665. package/project/.sdk/tm/csharp/feature/secrets/plugin/Config.cs +2 -2
  666. package/project/.sdk/tm/csharp/feature/secrets/plugin/Definition.cs +2 -2
  667. package/project/.sdk/tm/csharp/feature/secrets/plugin/Depend.cs +2 -2
  668. package/project/.sdk/tm/csharp/feature/secrets/plugin/Entry.cs +2 -2
  669. package/project/.sdk/tm/csharp/feature/secrets/plugin/Env.cs +2 -2
  670. package/project/.sdk/tm/csharp/feature/secrets/plugin/Export.cs +3 -3
  671. package/project/.sdk/tm/csharp/feature/secrets/plugin/Graph.cs +2 -2
  672. package/project/.sdk/tm/csharp/feature/secrets/plugin/Host.cs +9 -2
  673. package/project/.sdk/tm/csharp/feature/secrets/plugin/Inst.cs +21 -2
  674. package/project/.sdk/tm/csharp/feature/secrets/plugin/Json.cs +2 -2
  675. package/project/.sdk/tm/csharp/feature/secrets/plugin/Order.cs +2 -2
  676. package/project/.sdk/tm/csharp/feature/secrets/plugin/Plugin.cs +2 -2
  677. package/project/.sdk/tm/csharp/feature/secrets/plugin/Point.cs +2 -2
  678. package/project/.sdk/tm/csharp/feature/secrets/plugin/Refs.cs +2 -2
  679. package/project/.sdk/tm/csharp/feature/secrets/plugin/Resolve.cs +2 -2
  680. package/project/.sdk/tm/csharp/feature/secrets/plugin/Types.cs +2 -2
  681. package/project/.sdk/tm/csharp/feature/secrets/plugin/Version.cs +2 -2
  682. package/project/.sdk/tm/csharp/feature/secrets/plugins/Aws.cs +2 -2
  683. package/project/.sdk/tm/csharp/feature/secrets/plugins/AzureSecrets.cs +2 -2
  684. package/project/.sdk/tm/csharp/feature/secrets/plugins/Boru.cs +2 -2
  685. package/project/.sdk/tm/csharp/feature/secrets/plugins/Child.cs +2 -2
  686. package/project/.sdk/tm/csharp/feature/secrets/plugins/Doppler.cs +2 -2
  687. package/project/.sdk/tm/csharp/feature/secrets/plugins/GcpSecrets.cs +2 -2
  688. package/project/.sdk/tm/csharp/feature/secrets/plugins/Hashicorp.cs +2 -2
  689. package/project/.sdk/tm/csharp/feature/secrets/plugins/HttpJson.cs +2 -2
  690. package/project/.sdk/tm/csharp/feature/secrets/plugins/Infisical.cs +2 -2
  691. package/project/.sdk/tm/csharp/feature/secrets/plugins/MiniVault.cs +1572 -0
  692. package/project/.sdk/tm/csharp/feature/secrets/plugins/OnePassword.cs +2 -2
  693. package/project/.sdk/tm/csharp/feature/secrets/plugins/SecretSpec.cs +2 -2
  694. package/project/.sdk/tm/csharp/feature/secrets/plugins/Sigv4.cs +2 -2
  695. package/project/.sdk/tm/csharp/feature/secrets/sekreto/Json.cs +2 -2
  696. package/project/.sdk/tm/csharp/feature/secrets/sekreto/Providers.cs +3 -2
  697. package/project/.sdk/tm/csharp/feature/secrets/sekreto/Sekreto.cs +2 -2
  698. package/project/.sdk/tm/csharp/src/feature/validate/.gitkeep +0 -0
  699. package/project/.sdk/tm/csharp/test/vendor/omni/Runner.cs +2 -2
  700. package/project/.sdk/tm/csharp/test/vendor/omni/Util.cs +2 -2
  701. package/project/.sdk/tm/csharp/utility/MakeOptions.cs +12 -85
  702. package/project/.sdk/tm/csharp/utility/struct/Struct.cs +24 -3
  703. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/capability.ex +2 -2
  704. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/catalog.ex +2 -2
  705. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/config.ex +2 -2
  706. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/depend.ex +2 -2
  707. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/env.ex +2 -2
  708. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/error.ex +2 -2
  709. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/export.ex +7 -4
  710. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/graph.ex +2 -2
  711. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/host.ex +13 -2
  712. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/inst.ex +15 -2
  713. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/json.ex +2 -2
  714. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/order.ex +2 -2
  715. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/point.ex +2 -2
  716. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/ref.ex +2 -2
  717. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/resolve.ex +2 -2
  718. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/types.ex +2 -2
  719. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/version.ex +2 -2
  720. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/voxgig_plugin.ex +2 -2
  721. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/json.ex +2 -2
  722. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/plugins/aws.ex +2 -2
  723. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/plugins/azuresecrets.ex +2 -2
  724. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/plugins/boru.ex +2 -2
  725. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/plugins/doppler.ex +2 -2
  726. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/plugins/gcpsecrets.ex +2 -2
  727. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/plugins/hashicorp.ex +2 -2
  728. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/plugins/http.ex +3 -3
  729. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/plugins/httpjson.ex +3 -3
  730. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/plugins/infisical.ex +2 -2
  731. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/plugins/minivault.ex +1033 -0
  732. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/plugins/onepassword.ex +2 -2
  733. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/plugins/proc.ex +2 -2
  734. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/plugins/secretspec.ex +2 -2
  735. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/plugins/sigv4.ex +2 -2
  736. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/provider.ex +2 -2
  737. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/providers.ex +17 -5
  738. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/sekreto.ex +2 -2
  739. package/project/.sdk/tm/elixir/lib/projectname/feature/validate.ex +320 -0
  740. package/project/.sdk/tm/elixir/lib/projectname/utility.ex +10 -46
  741. package/project/.sdk/tm/elixir/src/feature/validate/.gitkeep +0 -0
  742. package/project/.sdk/tm/elixir/test/vendor/omni/json.ex +2 -2
  743. package/project/.sdk/tm/elixir/test/vendor/omni/runner.ex +2 -2
  744. package/project/.sdk/tm/elixir/test/vendor/omni/util.ex +2 -2
  745. package/project/.sdk/tm/go/core/context.go +0 -9
  746. package/project/.sdk/tm/go/core/types.go +0 -3
  747. package/project/.sdk/tm/go/feature/audit_feature.go +0 -9
  748. package/project/.sdk/tm/go/feature/cache_feature.go +0 -8
  749. package/project/.sdk/tm/go/feature/clienttrack_feature.go +0 -7
  750. package/project/.sdk/tm/go/feature/cost_feature.go +0 -51
  751. package/project/.sdk/tm/go/feature/debug_feature.go +0 -6
  752. package/project/.sdk/tm/go/feature/feature_options.go +108 -21
  753. package/project/.sdk/tm/go/feature/idempotency_feature.go +0 -6
  754. package/project/.sdk/tm/go/feature/metrics_feature.go +0 -6
  755. package/project/.sdk/tm/go/feature/netsim_feature.go +0 -8
  756. package/project/.sdk/tm/go/feature/paging_feature.go +0 -9
  757. package/project/.sdk/tm/go/feature/proxy_feature.go +0 -7
  758. package/project/.sdk/tm/go/feature/ratelimit_feature.go +0 -6
  759. package/project/.sdk/tm/go/feature/rbac_feature.go +0 -10
  760. package/project/.sdk/tm/go/feature/retry_feature.go +0 -6
  761. package/project/.sdk/tm/go/feature/secrets/plugin/capability.go +1 -1
  762. package/project/.sdk/tm/go/feature/secrets/plugin/catalog.go +1 -1
  763. package/project/.sdk/tm/go/feature/secrets/plugin/config.go +1 -1
  764. package/project/.sdk/tm/go/feature/secrets/plugin/depend.go +1 -1
  765. package/project/.sdk/tm/go/feature/secrets/plugin/env.go +1 -1
  766. package/project/.sdk/tm/go/feature/secrets/plugin/export.go +2 -2
  767. package/project/.sdk/tm/go/feature/secrets/plugin/graph.go +1 -1
  768. package/project/.sdk/tm/go/feature/secrets/plugin/host.go +25 -1
  769. package/project/.sdk/tm/go/feature/secrets/plugin/order.go +1 -1
  770. package/project/.sdk/tm/go/feature/secrets/plugin/point.go +1 -1
  771. package/project/.sdk/tm/go/feature/secrets/plugin/ref.go +1 -1
  772. package/project/.sdk/tm/go/feature/secrets/plugin/resolve.go +1 -1
  773. package/project/.sdk/tm/go/feature/secrets/plugin/types.go +1 -1
  774. package/project/.sdk/tm/go/feature/secrets/plugin/util.go +1 -1
  775. package/project/.sdk/tm/go/feature/secrets/plugin/version.go +1 -1
  776. package/project/.sdk/tm/go/feature/secrets/plugins/aws/aws.go +2 -2
  777. package/project/.sdk/tm/go/feature/secrets/plugins/aws/sigv4.go +2 -2
  778. package/project/.sdk/tm/go/feature/secrets/plugins/azuresecrets/azuresecrets.go +2 -2
  779. package/project/.sdk/tm/go/feature/secrets/plugins/boru/boru.go +2 -2
  780. package/project/.sdk/tm/go/feature/secrets/plugins/doppler/doppler.go +2 -2
  781. package/project/.sdk/tm/go/feature/secrets/plugins/gcpsecrets/gcpsecrets.go +2 -2
  782. package/project/.sdk/tm/go/feature/secrets/plugins/hashicorp/hashicorp.go +2 -2
  783. package/project/.sdk/tm/go/feature/secrets/plugins/httpjson/httpjson.go +2 -2
  784. package/project/.sdk/tm/go/feature/secrets/plugins/infisical/infisical.go +2 -2
  785. package/project/.sdk/tm/go/feature/secrets/plugins/minivault/format.go +493 -0
  786. package/project/.sdk/tm/go/feature/secrets/plugins/minivault/minivault.go +1131 -0
  787. package/project/.sdk/tm/go/feature/secrets/plugins/onepassword/onepassword.go +2 -2
  788. package/project/.sdk/tm/go/feature/secrets/plugins/secretspec/secretspec.go +2 -2
  789. package/project/.sdk/tm/go/feature/secrets/sekreto/addr.go +2 -2
  790. package/project/.sdk/tm/go/feature/secrets/sekreto/providers.go +14 -2
  791. package/project/.sdk/tm/go/feature/secrets/sekreto/sekreto.go +2 -2
  792. package/project/.sdk/tm/go/feature/secrets_feature.go +0 -173
  793. package/project/.sdk/tm/go/feature/streaming_feature.go +0 -7
  794. package/project/.sdk/tm/go/feature/telemetry_feature.go +0 -8
  795. package/project/.sdk/tm/go/feature/test_feature.go +0 -23
  796. package/project/.sdk/tm/go/feature/validate_feature.go +280 -0
  797. package/project/.sdk/tm/go/src/feature/validate/.gitkeep +0 -0
  798. package/project/.sdk/tm/go/test/custom_utility_test.go +0 -29
  799. package/project/.sdk/tm/go/test/feature/secrets/secrets_feature_test.go +0 -100
  800. package/project/.sdk/tm/go/test/feature_corpus_test.go +1 -60
  801. package/project/.sdk/tm/go/test/feature_harness_test.go +0 -10
  802. package/project/.sdk/tm/go/test/feature_test.go +107 -9
  803. package/project/.sdk/tm/go/test/omni/omni.go +2 -2
  804. package/project/.sdk/tm/go/test/omni/util.go +2 -2
  805. package/project/.sdk/tm/go/test/omniresolver_test.go +0 -74
  806. package/project/.sdk/tm/go/test/omnismoke_test.go +0 -4
  807. package/project/.sdk/tm/go/test/pipeline_test.go +0 -10
  808. package/project/.sdk/tm/go/test/primary_utility_test.go +0 -32
  809. package/project/.sdk/tm/go/test/struct_utility_test.go +0 -38
  810. package/project/.sdk/tm/go/test/testsupport_test.go +0 -25
  811. package/project/.sdk/tm/go/utility/feature_add.go +0 -6
  812. package/project/.sdk/tm/go/utility/fetcher.go +0 -6
  813. package/project/.sdk/tm/go/utility/graphql.go +1 -31
  814. package/project/.sdk/tm/go/utility/make_options.go +39 -91
  815. package/project/.sdk/tm/go/utility/make_point.go +0 -11
  816. package/project/.sdk/tm/go/utility/make_spec.go +0 -15
  817. package/project/.sdk/tm/go/utility/register.go +0 -28
  818. package/project/.sdk/tm/go/utility/struct/voxgigstruct.go +24 -8
  819. package/project/.sdk/tm/go/utility/transform_request.go +0 -20
  820. package/project/.sdk/tm/go/utility/transform_response.go +0 -8
  821. package/project/.sdk/tm/java/feature/ValidateFeature.java +330 -0
  822. package/project/.sdk/tm/java/feature/secrets/plugin/Capability.java +2 -2
  823. package/project/.sdk/tm/java/feature/secrets/plugin/Catalog.java +2 -2
  824. package/project/.sdk/tm/java/feature/secrets/plugin/Config.java +2 -2
  825. package/project/.sdk/tm/java/feature/secrets/plugin/Definition.java +2 -2
  826. package/project/.sdk/tm/java/feature/secrets/plugin/Depend.java +2 -2
  827. package/project/.sdk/tm/java/feature/secrets/plugin/Entry.java +2 -2
  828. package/project/.sdk/tm/java/feature/secrets/plugin/Env.java +2 -2
  829. package/project/.sdk/tm/java/feature/secrets/plugin/Export.java +3 -3
  830. package/project/.sdk/tm/java/feature/secrets/plugin/Graph.java +2 -2
  831. package/project/.sdk/tm/java/feature/secrets/plugin/Host.java +3 -3
  832. package/project/.sdk/tm/java/feature/secrets/plugin/Inst.java +21 -2
  833. package/project/.sdk/tm/java/feature/secrets/plugin/Json.java +2 -2
  834. package/project/.sdk/tm/java/feature/secrets/plugin/Order.java +2 -2
  835. package/project/.sdk/tm/java/feature/secrets/plugin/Plugin.java +2 -2
  836. package/project/.sdk/tm/java/feature/secrets/plugin/PluginException.java +2 -2
  837. package/project/.sdk/tm/java/feature/secrets/plugin/Point.java +2 -2
  838. package/project/.sdk/tm/java/feature/secrets/plugin/Refs.java +2 -2
  839. package/project/.sdk/tm/java/feature/secrets/plugin/Resolve.java +2 -2
  840. package/project/.sdk/tm/java/feature/secrets/plugin/Types.java +2 -2
  841. package/project/.sdk/tm/java/feature/secrets/plugin/Version.java +2 -2
  842. package/project/.sdk/tm/java/feature/secrets/sekreto/Addr.java +2 -2
  843. package/project/.sdk/tm/java/feature/secrets/sekreto/Builtins.java +4 -3
  844. package/project/.sdk/tm/java/feature/secrets/sekreto/Json.java +2 -2
  845. package/project/.sdk/tm/java/feature/secrets/sekreto/Provider.java +2 -2
  846. package/project/.sdk/tm/java/feature/secrets/sekreto/Sekreto.java +2 -2
  847. package/project/.sdk/tm/java/feature/secrets/sekreto/Support.java +2 -2
  848. package/project/.sdk/tm/java/feature/secrets/sekreto/plugins/Aws.java +2 -2
  849. package/project/.sdk/tm/java/feature/secrets/sekreto/plugins/Azuresecrets.java +2 -2
  850. package/project/.sdk/tm/java/feature/secrets/sekreto/plugins/Boru.java +2 -2
  851. package/project/.sdk/tm/java/feature/secrets/sekreto/plugins/Doppler.java +2 -2
  852. package/project/.sdk/tm/java/feature/secrets/sekreto/plugins/Gcpsecrets.java +2 -2
  853. package/project/.sdk/tm/java/feature/secrets/sekreto/plugins/Hashicorp.java +2 -2
  854. package/project/.sdk/tm/java/feature/secrets/sekreto/plugins/Httpjson.java +2 -2
  855. package/project/.sdk/tm/java/feature/secrets/sekreto/plugins/Infisical.java +2 -2
  856. package/project/.sdk/tm/java/feature/secrets/sekreto/plugins/Minivault.java +1448 -0
  857. package/project/.sdk/tm/java/feature/secrets/sekreto/plugins/Onepassword.java +2 -2
  858. package/project/.sdk/tm/java/feature/secrets/sekreto/plugins/Proc.java +2 -2
  859. package/project/.sdk/tm/java/feature/secrets/sekreto/plugins/Secretspec.java +2 -2
  860. package/project/.sdk/tm/java/feature/secrets/sekreto/plugins/Sigv4.java +2 -2
  861. package/project/.sdk/tm/java/src/feature/validate/.gitkeep +0 -0
  862. package/project/.sdk/tm/java/test/vendor/omni/Json.java +2 -2
  863. package/project/.sdk/tm/java/test/vendor/omni/Runner.java +2 -2
  864. package/project/.sdk/tm/java/test/vendor/omni/Util.java +2 -2
  865. package/project/.sdk/tm/java/utility/MakeOptions.java +13 -45
  866. package/project/.sdk/tm/java/utility/struct/Struct.java +1 -1
  867. package/project/.sdk/tm/js/src/feature/secrets/plugin/capability.js +2 -2
  868. package/project/.sdk/tm/js/src/feature/secrets/plugin/catalog.js +2 -2
  869. package/project/.sdk/tm/js/src/feature/secrets/plugin/config.js +2 -2
  870. package/project/.sdk/tm/js/src/feature/secrets/plugin/depend.js +2 -2
  871. package/project/.sdk/tm/js/src/feature/secrets/plugin/env.js +2 -2
  872. package/project/.sdk/tm/js/src/feature/secrets/plugin/export.js +3 -3
  873. package/project/.sdk/tm/js/src/feature/secrets/plugin/graph.js +2 -2
  874. package/project/.sdk/tm/js/src/feature/secrets/plugin/host.js +17 -2
  875. package/project/.sdk/tm/js/src/feature/secrets/plugin/index.js +2 -2
  876. package/project/.sdk/tm/js/src/feature/secrets/plugin/order.js +2 -2
  877. package/project/.sdk/tm/js/src/feature/secrets/plugin/point.js +2 -2
  878. package/project/.sdk/tm/js/src/feature/secrets/plugin/ref.js +2 -2
  879. package/project/.sdk/tm/js/src/feature/secrets/plugin/resolve.js +2 -2
  880. package/project/.sdk/tm/js/src/feature/secrets/plugin/types.js +2 -2
  881. package/project/.sdk/tm/js/src/feature/secrets/plugin/version.js +2 -2
  882. package/project/.sdk/tm/js/src/feature/secrets/sekreto/Sekreto.js +2 -2
  883. package/project/.sdk/tm/js/src/feature/secrets/sekreto/index.js +2 -2
  884. package/project/.sdk/tm/js/src/feature/secrets/sekreto/plugins/aws.js +2 -2
  885. package/project/.sdk/tm/js/src/feature/secrets/sekreto/plugins/azuresecrets.js +2 -2
  886. package/project/.sdk/tm/js/src/feature/secrets/sekreto/plugins/boru.js +2 -2
  887. package/project/.sdk/tm/js/src/feature/secrets/sekreto/plugins/doppler.js +2 -2
  888. package/project/.sdk/tm/js/src/feature/secrets/sekreto/plugins/gcpsecrets.js +2 -2
  889. package/project/.sdk/tm/js/src/feature/secrets/sekreto/plugins/hashicorp.js +2 -2
  890. package/project/.sdk/tm/js/src/feature/secrets/sekreto/plugins/httpjson.js +2 -2
  891. package/project/.sdk/tm/js/src/feature/secrets/sekreto/plugins/infisical.js +2 -2
  892. package/project/.sdk/tm/js/src/feature/secrets/sekreto/plugins/minivault.js +866 -0
  893. package/project/.sdk/tm/js/src/feature/secrets/sekreto/plugins/onepassword.js +2 -2
  894. package/project/.sdk/tm/js/src/feature/secrets/sekreto/plugins/secretspec.js +2 -2
  895. package/project/.sdk/tm/js/src/feature/secrets/sekreto/plugins/sigv4.js +2 -2
  896. package/project/.sdk/tm/js/src/feature/secrets/sekreto/provider/addr.js +2 -2
  897. package/project/.sdk/tm/js/src/feature/secrets/sekreto/provider/builtin.js +3 -2
  898. package/project/.sdk/tm/js/src/feature/secrets/sekreto/provider/dotenv.js +2 -2
  899. package/project/.sdk/tm/js/src/feature/secrets/sekreto/provider/env.js +2 -2
  900. package/project/.sdk/tm/js/src/feature/secrets/sekreto/provider/file.js +2 -2
  901. package/project/.sdk/tm/js/src/feature/secrets/sekreto/provider/memory.js +2 -2
  902. package/project/.sdk/tm/js/src/feature/secrets/sekreto/provider/support.js +2 -2
  903. package/project/.sdk/tm/js/src/feature/test/TestFeature.js +12 -4
  904. package/project/.sdk/tm/js/src/utility/StructUtility.js +1 -1
  905. package/project/.sdk/tm/js/test/vendor/omni/index.js +1 -1
  906. package/project/.sdk/tm/js/test/vendor/omni/runner.js +1 -1
  907. package/project/.sdk/tm/js/test/vendor/omni/util.js +1 -1
  908. package/project/.sdk/tm/kotlin/feature/ValidateFeature.kt +297 -0
  909. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Capability.kt +2 -2
  910. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Catalog.kt +2 -2
  911. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Config.kt +2 -2
  912. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Depend.kt +2 -2
  913. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Env.kt +2 -2
  914. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Export.kt +3 -3
  915. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Graph.kt +2 -2
  916. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Host.kt +21 -2
  917. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Json.kt +2 -2
  918. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Order.kt +2 -2
  919. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Plugin.kt +2 -2
  920. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Point.kt +2 -2
  921. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Refs.kt +2 -2
  922. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Resolve.kt +2 -2
  923. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Types.kt +2 -2
  924. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Version.kt +2 -2
  925. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/Json.kt +2 -2
  926. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/Provider.kt +2 -2
  927. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/Providers.kt +3 -2
  928. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/Sekreto.kt +2 -2
  929. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/Spec.kt +14 -2
  930. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/Support.kt +10 -2
  931. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/plugins/Aws.kt +2 -2
  932. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/plugins/Azuresecrets.kt +2 -2
  933. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/plugins/Boru.kt +2 -2
  934. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/plugins/Doppler.kt +2 -2
  935. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/plugins/Gcpsecrets.kt +2 -2
  936. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/plugins/Hashicorp.kt +2 -2
  937. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/plugins/Httpjson.kt +2 -2
  938. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/plugins/Infisical.kt +2 -2
  939. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/plugins/Minivault.kt +1095 -0
  940. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/plugins/Onepassword.kt +2 -2
  941. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/plugins/Secretspec.kt +2 -2
  942. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/plugins/Sigv4.kt +2 -2
  943. package/project/.sdk/tm/kotlin/src/feature/validate/.gitkeep +0 -0
  944. package/project/.sdk/tm/kotlin/test/vendor/omni/Json.kt +2 -2
  945. package/project/.sdk/tm/kotlin/test/vendor/omni/Runner.kt +2 -2
  946. package/project/.sdk/tm/kotlin/test/vendor/omni/Util.kt +2 -2
  947. package/project/.sdk/tm/kotlin/utility/MakeOptions.kt +13 -35
  948. package/project/.sdk/tm/kotlin/utility/MakeSpecUrl.kt +6 -0
  949. package/project/.sdk/tm/kotlin/utility/struct/Struct.kt +1 -1
  950. package/project/.sdk/tm/lua/feature/secrets/native/sekretonet.c +2 -2
  951. package/project/.sdk/tm/lua/feature/secrets/native/sekretovault.c +240 -0
  952. package/project/.sdk/tm/lua/feature/secrets/plugin/capability.lua +2 -2
  953. package/project/.sdk/tm/lua/feature/secrets/plugin/catalog.lua +2 -2
  954. package/project/.sdk/tm/lua/feature/secrets/plugin/config.lua +2 -2
  955. package/project/.sdk/tm/lua/feature/secrets/plugin/depend.lua +2 -2
  956. package/project/.sdk/tm/lua/feature/secrets/plugin/env.lua +2 -2
  957. package/project/.sdk/tm/lua/feature/secrets/plugin/export.lua +12 -3
  958. package/project/.sdk/tm/lua/feature/secrets/plugin/graph.lua +2 -2
  959. package/project/.sdk/tm/lua/feature/secrets/plugin/host.lua +18 -2
  960. package/project/.sdk/tm/lua/feature/secrets/plugin/json.lua +2 -2
  961. package/project/.sdk/tm/lua/feature/secrets/plugin/order.lua +2 -2
  962. package/project/.sdk/tm/lua/feature/secrets/plugin/point.lua +2 -2
  963. package/project/.sdk/tm/lua/feature/secrets/plugin/ref.lua +2 -2
  964. package/project/.sdk/tm/lua/feature/secrets/plugin/resolve.lua +2 -2
  965. package/project/.sdk/tm/lua/feature/secrets/plugin/types.lua +2 -2
  966. package/project/.sdk/tm/lua/feature/secrets/plugin/version.lua +2 -2
  967. package/project/.sdk/tm/lua/feature/secrets/plugin.lua +2 -2
  968. package/project/.sdk/tm/lua/feature/secrets/sekreto/addr.lua +2 -2
  969. package/project/.sdk/tm/lua/feature/secrets/sekreto/err.lua +2 -2
  970. package/project/.sdk/tm/lua/feature/secrets/sekreto/name.lua +2 -2
  971. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/aws.lua +2 -2
  972. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/azuresecrets.lua +2 -2
  973. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/boru.lua +2 -2
  974. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/crypto.lua +2 -2
  975. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/doppler.lua +2 -2
  976. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/gcpsecrets.lua +2 -2
  977. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/hashicorp.lua +2 -2
  978. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/httpjson.lua +2 -2
  979. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/infisical.lua +2 -2
  980. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/json.lua +2 -2
  981. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/minivault.lua +1227 -0
  982. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/net.lua +2 -2
  983. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/onepassword.lua +2 -2
  984. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/secretspec.lua +2 -2
  985. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/sigv4.lua +2 -2
  986. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/support.lua +2 -2
  987. package/project/.sdk/tm/lua/feature/secrets/sekreto/providers.lua +3 -2
  988. package/project/.sdk/tm/lua/feature/secrets/sekreto.lua +2 -2
  989. package/project/.sdk/tm/lua/feature/validate_feature.lua +333 -0
  990. package/project/.sdk/tm/lua/src/feature/validate/.gitkeep +0 -0
  991. package/project/.sdk/tm/lua/test/vendor/omni/json.lua +2 -2
  992. package/project/.sdk/tm/lua/test/vendor/omni/regex.lua +2 -2
  993. package/project/.sdk/tm/lua/test/vendor/omni/runner.lua +2 -2
  994. package/project/.sdk/tm/lua/test/vendor/omni/util.lua +2 -2
  995. package/project/.sdk/tm/lua/utility/make_options.lua +74 -55
  996. package/project/.sdk/tm/lua/utility/make_spec.lua +8 -1
  997. package/project/.sdk/tm/lua/utility/struct/regex.lua +1 -1
  998. package/project/.sdk/tm/lua/utility/struct/struct.lua +1 -1
  999. package/project/.sdk/tm/ocaml/Makefile +12 -7
  1000. package/project/.sdk/tm/ocaml/feature/secrets/plugin/capability.ml +2 -2
  1001. package/project/.sdk/tm/ocaml/feature/secrets/plugin/catalog.ml +2 -2
  1002. package/project/.sdk/tm/ocaml/feature/secrets/plugin/config.ml +2 -2
  1003. package/project/.sdk/tm/ocaml/feature/secrets/plugin/defs.ml +2 -2
  1004. package/project/.sdk/tm/ocaml/feature/secrets/plugin/depend.ml +2 -2
  1005. package/project/.sdk/tm/ocaml/feature/secrets/plugin/env.ml +2 -2
  1006. package/project/.sdk/tm/ocaml/feature/secrets/plugin/export.ml +5 -3
  1007. package/project/.sdk/tm/ocaml/feature/secrets/plugin/graph.ml +2 -2
  1008. package/project/.sdk/tm/ocaml/feature/secrets/plugin/host.ml +18 -2
  1009. package/project/.sdk/tm/ocaml/feature/secrets/plugin/order.ml +2 -2
  1010. package/project/.sdk/tm/ocaml/feature/secrets/plugin/point.ml +2 -2
  1011. package/project/.sdk/tm/ocaml/feature/secrets/plugin/ref.ml +2 -2
  1012. package/project/.sdk/tm/ocaml/feature/secrets/plugin/resolve.ml +2 -2
  1013. package/project/.sdk/tm/ocaml/feature/secrets/plugin/types.ml +2 -2
  1014. package/project/.sdk/tm/ocaml/feature/secrets/plugin/value.ml +2 -2
  1015. package/project/.sdk/tm/ocaml/feature/secrets/plugin/version.ml +2 -2
  1016. package/project/.sdk/tm/ocaml/feature/secrets/plugins/aws.ml +2 -2
  1017. package/project/.sdk/tm/ocaml/feature/secrets/plugins/azuresecrets.ml +2 -2
  1018. package/project/.sdk/tm/ocaml/feature/secrets/plugins/boru.ml +2 -2
  1019. package/project/.sdk/tm/ocaml/feature/secrets/plugins/crypto.ml +2 -2
  1020. package/project/.sdk/tm/ocaml/feature/secrets/plugins/doppler.ml +2 -2
  1021. package/project/.sdk/tm/ocaml/feature/secrets/plugins/gcpsecrets.ml +2 -2
  1022. package/project/.sdk/tm/ocaml/feature/secrets/plugins/hashicorp.ml +2 -2
  1023. package/project/.sdk/tm/ocaml/feature/secrets/plugins/http.ml +2 -2
  1024. package/project/.sdk/tm/ocaml/feature/secrets/plugins/httpjson.ml +2 -2
  1025. package/project/.sdk/tm/ocaml/feature/secrets/plugins/infisical.ml +2 -2
  1026. package/project/.sdk/tm/ocaml/feature/secrets/plugins/minivault.ml +1086 -0
  1027. package/project/.sdk/tm/ocaml/feature/secrets/plugins/minivault_stubs.c +222 -0
  1028. package/project/.sdk/tm/ocaml/feature/secrets/plugins/onepassword.ml +2 -2
  1029. package/project/.sdk/tm/ocaml/feature/secrets/plugins/runcmd.ml +2 -2
  1030. package/project/.sdk/tm/ocaml/feature/secrets/plugins/secretspec.ml +2 -2
  1031. package/project/.sdk/tm/ocaml/feature/secrets/plugins/sigv4.ml +2 -2
  1032. package/project/.sdk/tm/ocaml/feature/secrets/plugins/tls.ml +2 -2
  1033. package/project/.sdk/tm/ocaml/feature/secrets/plugins/tls_stubs.c +2 -2
  1034. package/project/.sdk/tm/ocaml/feature/secrets/sekreto/json.ml +2 -2
  1035. package/project/.sdk/tm/ocaml/feature/secrets/sekreto/provider.ml +33 -3
  1036. package/project/.sdk/tm/ocaml/feature/secrets/sekreto/secret.ml +2 -2
  1037. package/project/.sdk/tm/ocaml/feature/secrets/sekreto/sekreto.ml +4 -3
  1038. package/project/.sdk/tm/ocaml/sdk_features.ml +174 -0
  1039. package/project/.sdk/tm/ocaml/sdk_runtime.ml +12 -37
  1040. package/project/.sdk/tm/ocaml/src/feature/validate/.gitkeep +0 -0
  1041. package/project/.sdk/tm/ocaml/test/vendor/omni/omni.ml +2 -2
  1042. package/project/.sdk/tm/perl/core/helpers.pm +64 -16
  1043. package/project/.sdk/tm/perl/feature/secrets/plugin/Voxgig/Plugin/Capability.pm +2 -2
  1044. package/project/.sdk/tm/perl/feature/secrets/plugin/Voxgig/Plugin/Catalog.pm +2 -2
  1045. package/project/.sdk/tm/perl/feature/secrets/plugin/Voxgig/Plugin/Config.pm +2 -2
  1046. package/project/.sdk/tm/perl/feature/secrets/plugin/Voxgig/Plugin/Depend.pm +2 -2
  1047. package/project/.sdk/tm/perl/feature/secrets/plugin/Voxgig/Plugin/Env.pm +2 -2
  1048. package/project/.sdk/tm/perl/feature/secrets/plugin/Voxgig/Plugin/Export.pm +3 -3
  1049. package/project/.sdk/tm/perl/feature/secrets/plugin/Voxgig/Plugin/Graph.pm +2 -2
  1050. package/project/.sdk/tm/perl/feature/secrets/plugin/Voxgig/Plugin/Host.pm +19 -2
  1051. package/project/.sdk/tm/perl/feature/secrets/plugin/Voxgig/Plugin/Order.pm +2 -2
  1052. package/project/.sdk/tm/perl/feature/secrets/plugin/Voxgig/Plugin/Point.pm +2 -2
  1053. package/project/.sdk/tm/perl/feature/secrets/plugin/Voxgig/Plugin/Ref.pm +2 -2
  1054. package/project/.sdk/tm/perl/feature/secrets/plugin/Voxgig/Plugin/Resolve.pm +2 -2
  1055. package/project/.sdk/tm/perl/feature/secrets/plugin/Voxgig/Plugin/Types.pm +2 -2
  1056. package/project/.sdk/tm/perl/feature/secrets/plugin/Voxgig/Plugin/Version.pm +2 -2
  1057. package/project/.sdk/tm/perl/feature/secrets/plugin/Voxgig/Plugin.pm +2 -2
  1058. package/project/.sdk/tm/perl/feature/secrets/plugins/Voxgig/Sekreto/Plugins/Aws.pm +2 -2
  1059. package/project/.sdk/tm/perl/feature/secrets/plugins/Voxgig/Sekreto/Plugins/Azuresecrets.pm +2 -2
  1060. package/project/.sdk/tm/perl/feature/secrets/plugins/Voxgig/Sekreto/Plugins/Boru.pm +2 -2
  1061. package/project/.sdk/tm/perl/feature/secrets/plugins/Voxgig/Sekreto/Plugins/Doppler.pm +2 -2
  1062. package/project/.sdk/tm/perl/feature/secrets/plugins/Voxgig/Sekreto/Plugins/Gcpsecrets.pm +2 -2
  1063. package/project/.sdk/tm/perl/feature/secrets/plugins/Voxgig/Sekreto/Plugins/Hashicorp.pm +2 -2
  1064. package/project/.sdk/tm/perl/feature/secrets/plugins/Voxgig/Sekreto/Plugins/Httpjson.pm +2 -2
  1065. package/project/.sdk/tm/perl/feature/secrets/plugins/Voxgig/Sekreto/Plugins/Infisical.pm +2 -2
  1066. package/project/.sdk/tm/perl/feature/secrets/plugins/Voxgig/Sekreto/Plugins/Minivault.pm +1380 -0
  1067. package/project/.sdk/tm/perl/feature/secrets/plugins/Voxgig/Sekreto/Plugins/Onepassword.pm +2 -2
  1068. package/project/.sdk/tm/perl/feature/secrets/plugins/Voxgig/Sekreto/Plugins/Proc.pm +2 -2
  1069. package/project/.sdk/tm/perl/feature/secrets/plugins/Voxgig/Sekreto/Plugins/Secretspec.pm +2 -2
  1070. package/project/.sdk/tm/perl/feature/secrets/plugins/Voxgig/Sekreto/Plugins/Sigv4.pm +2 -2
  1071. package/project/.sdk/tm/perl/feature/secrets/sekreto/Voxgig/Sekreto/Addr.pm +2 -2
  1072. package/project/.sdk/tm/perl/feature/secrets/sekreto/Voxgig/Sekreto/Providers.pm +4 -3
  1073. package/project/.sdk/tm/perl/feature/secrets/sekreto/Voxgig/Sekreto.pm +2 -2
  1074. package/project/.sdk/tm/perl/feature/validate_feature.pm +319 -0
  1075. package/project/.sdk/tm/perl/lib/Voxgig/Struct.pm +1 -1
  1076. package/project/.sdk/tm/perl/src/feature/validate/.gitkeep +0 -0
  1077. package/project/.sdk/tm/perl/t/vendor/omni/Voxgig/Omni/Runner.pm +1 -1
  1078. package/project/.sdk/tm/perl/t/vendor/omni/Voxgig/Omni/Util.pm +1 -1
  1079. package/project/.sdk/tm/perl/t/vendor/omni/Voxgig/Omni.pm +1 -1
  1080. package/project/.sdk/tm/perl/utility/make_options.pm +25 -43
  1081. package/project/.sdk/tm/php/feature/ValidateFeature.php +361 -0
  1082. package/project/.sdk/tm/php/feature/secrets/plugin/Capability.php +2 -2
  1083. package/project/.sdk/tm/php/feature/secrets/plugin/Catalog.php +2 -2
  1084. package/project/.sdk/tm/php/feature/secrets/plugin/Config.php +2 -2
  1085. package/project/.sdk/tm/php/feature/secrets/plugin/Depend.php +2 -2
  1086. package/project/.sdk/tm/php/feature/secrets/plugin/Env.php +2 -2
  1087. package/project/.sdk/tm/php/feature/secrets/plugin/Export.php +3 -3
  1088. package/project/.sdk/tm/php/feature/secrets/plugin/Graph.php +2 -2
  1089. package/project/.sdk/tm/php/feature/secrets/plugin/Host.php +26 -2
  1090. package/project/.sdk/tm/php/feature/secrets/plugin/Order.php +2 -2
  1091. package/project/.sdk/tm/php/feature/secrets/plugin/Point.php +2 -2
  1092. package/project/.sdk/tm/php/feature/secrets/plugin/Ref.php +2 -2
  1093. package/project/.sdk/tm/php/feature/secrets/plugin/Resolve.php +2 -2
  1094. package/project/.sdk/tm/php/feature/secrets/plugin/Types.php +2 -2
  1095. package/project/.sdk/tm/php/feature/secrets/plugin/Version.php +2 -2
  1096. package/project/.sdk/tm/php/feature/secrets/plugin/plugin.php +2 -2
  1097. package/project/.sdk/tm/php/feature/secrets/sekreto/plugins/aws.php +2 -2
  1098. package/project/.sdk/tm/php/feature/secrets/sekreto/plugins/azuresecrets.php +2 -2
  1099. package/project/.sdk/tm/php/feature/secrets/sekreto/plugins/boru.php +2 -2
  1100. package/project/.sdk/tm/php/feature/secrets/sekreto/plugins/doppler.php +2 -2
  1101. package/project/.sdk/tm/php/feature/secrets/sekreto/plugins/gcpsecrets.php +2 -2
  1102. package/project/.sdk/tm/php/feature/secrets/sekreto/plugins/hashicorp.php +2 -2
  1103. package/project/.sdk/tm/php/feature/secrets/sekreto/plugins/httpjson.php +2 -2
  1104. package/project/.sdk/tm/php/feature/secrets/sekreto/plugins/infisical.php +2 -2
  1105. package/project/.sdk/tm/php/feature/secrets/sekreto/plugins/minivault.php +1250 -0
  1106. package/project/.sdk/tm/php/feature/secrets/sekreto/plugins/onepassword.php +2 -2
  1107. package/project/.sdk/tm/php/feature/secrets/sekreto/plugins/runcmd.php +2 -2
  1108. package/project/.sdk/tm/php/feature/secrets/sekreto/plugins/secretspec.php +2 -2
  1109. package/project/.sdk/tm/php/feature/secrets/sekreto/plugins/sigv4.php +2 -2
  1110. package/project/.sdk/tm/php/feature/secrets/sekreto/src/Addr.php +2 -2
  1111. package/project/.sdk/tm/php/feature/secrets/sekreto/src/Providers.php +5 -3
  1112. package/project/.sdk/tm/php/feature/secrets/sekreto/src/Sekreto.php +2 -2
  1113. package/project/.sdk/tm/php/src/feature/validate/.gitkeep +0 -0
  1114. package/project/.sdk/tm/php/test/vendor/omni/Runner.php +2 -2
  1115. package/project/.sdk/tm/php/test/vendor/omni/Util.php +2 -2
  1116. package/project/.sdk/tm/php/utility/MakeOptions.php +15 -31
  1117. package/project/.sdk/tm/php/utility/struct/Struct.php +56 -7
  1118. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_plugin/__init__.py +1 -1
  1119. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_plugin/capability.py +1 -1
  1120. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_plugin/catalog.py +1 -1
  1121. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_plugin/config.py +1 -1
  1122. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_plugin/depend.py +1 -1
  1123. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_plugin/env.py +1 -1
  1124. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_plugin/export.py +2 -2
  1125. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_plugin/graph.py +1 -1
  1126. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_plugin/host.py +17 -1
  1127. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_plugin/order.py +1 -1
  1128. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_plugin/point.py +1 -1
  1129. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_plugin/ref.py +1 -1
  1130. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_plugin/resolve.py +1 -1
  1131. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_plugin/types.py +1 -1
  1132. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_plugin/version.py +1 -1
  1133. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/__init__.py +1 -1
  1134. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/addr.py +1 -1
  1135. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/plugins/aws.py +1 -1
  1136. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/plugins/azuresecrets.py +1 -1
  1137. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/plugins/boru.py +1 -1
  1138. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/plugins/doppler.py +1 -1
  1139. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/plugins/gcpsecrets.py +1 -1
  1140. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/plugins/hashicorp.py +1 -1
  1141. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/plugins/httpjson.py +1 -1
  1142. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/plugins/infisical.py +1 -1
  1143. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/plugins/minivault.py +1202 -0
  1144. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/plugins/onepassword.py +1 -1
  1145. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/plugins/secretspec.py +1 -1
  1146. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/plugins/sigv4.py +1 -1
  1147. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/providers.py +2 -1
  1148. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/sekreto.py +1 -1
  1149. package/project/.sdk/tm/py/pkg/feature/validate_feature.py +273 -0
  1150. package/project/.sdk/tm/py/pkg/utility/make_options.py +14 -53
  1151. package/project/.sdk/tm/py/pkg/utility/voxgig_struct/voxgig_struct.py +1 -1
  1152. package/project/.sdk/tm/py/src/feature/validate/.gitkeep +0 -0
  1153. package/project/.sdk/tm/py/test/voxgig_omni/__init__.py +1 -1
  1154. package/project/.sdk/tm/py/test/voxgig_omni/runner.py +1 -1
  1155. package/project/.sdk/tm/py/test/voxgig_omni/util.py +1 -1
  1156. package/project/.sdk/tm/rb/feature/secrets/voxgig_plugin/capability.rb +2 -2
  1157. package/project/.sdk/tm/rb/feature/secrets/voxgig_plugin/catalog.rb +2 -2
  1158. package/project/.sdk/tm/rb/feature/secrets/voxgig_plugin/config.rb +2 -2
  1159. package/project/.sdk/tm/rb/feature/secrets/voxgig_plugin/depend.rb +2 -2
  1160. package/project/.sdk/tm/rb/feature/secrets/voxgig_plugin/env.rb +2 -2
  1161. package/project/.sdk/tm/rb/feature/secrets/voxgig_plugin/export.rb +3 -3
  1162. package/project/.sdk/tm/rb/feature/secrets/voxgig_plugin/graph.rb +2 -2
  1163. package/project/.sdk/tm/rb/feature/secrets/voxgig_plugin/host.rb +16 -2
  1164. package/project/.sdk/tm/rb/feature/secrets/voxgig_plugin/order.rb +2 -2
  1165. package/project/.sdk/tm/rb/feature/secrets/voxgig_plugin/point.rb +2 -2
  1166. package/project/.sdk/tm/rb/feature/secrets/voxgig_plugin/ref.rb +2 -2
  1167. package/project/.sdk/tm/rb/feature/secrets/voxgig_plugin/resolve.rb +2 -2
  1168. package/project/.sdk/tm/rb/feature/secrets/voxgig_plugin/types.rb +2 -2
  1169. package/project/.sdk/tm/rb/feature/secrets/voxgig_plugin/version.rb +2 -2
  1170. package/project/.sdk/tm/rb/feature/secrets/voxgig_plugin.rb +2 -2
  1171. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto/addr.rb +2 -2
  1172. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto/plugins/aws.rb +2 -2
  1173. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto/plugins/azuresecrets.rb +2 -2
  1174. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto/plugins/boru.rb +2 -2
  1175. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto/plugins/doppler.rb +2 -2
  1176. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto/plugins/gcpsecrets.rb +2 -2
  1177. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto/plugins/hashicorp.rb +2 -2
  1178. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto/plugins/httpjson.rb +2 -2
  1179. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto/plugins/infisical.rb +2 -2
  1180. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto/plugins/minivault.rb +979 -0
  1181. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto/plugins/onepassword.rb +2 -2
  1182. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto/plugins/secretspec.rb +2 -2
  1183. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto/plugins/sigv4.rb +2 -2
  1184. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto/providers.rb +6 -5
  1185. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto/sekreto.rb +2 -2
  1186. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto.rb +2 -2
  1187. package/project/.sdk/tm/rb/feature/validate_feature.rb +265 -0
  1188. package/project/.sdk/tm/rb/src/feature/validate/.gitkeep +0 -0
  1189. package/project/.sdk/tm/rb/test/vendor/omni/runner.rb +2 -2
  1190. package/project/.sdk/tm/rb/test/vendor/omni/util.rb +2 -2
  1191. package/project/.sdk/tm/rb/test/vendor/omni/voxgig_omni.rb +2 -2
  1192. package/project/.sdk/tm/rb/utility/make_options.rb +15 -32
  1193. package/project/.sdk/tm/rb/utility/struct/voxgig_struct.rb +24 -1
  1194. package/project/.sdk/tm/rust/core/context.rs +0 -5
  1195. package/project/.sdk/tm/rust/core/control.rs +0 -1
  1196. package/project/.sdk/tm/rust/core/helpers.rs +0 -15
  1197. package/project/.sdk/tm/rust/core/mod.rs +3 -2
  1198. package/project/.sdk/tm/rust/core/operation.rs +0 -1
  1199. package/project/.sdk/tm/rust/core/point.rs +0 -3
  1200. package/project/.sdk/tm/rust/core/response.rs +0 -2
  1201. package/project/.sdk/tm/rust/core/result.rs +0 -1
  1202. package/project/.sdk/tm/rust/core/spec.rs +0 -1
  1203. package/project/.sdk/tm/rust/core/types.rs +0 -20
  1204. package/project/.sdk/tm/rust/core/utility_type.rs +0 -5
  1205. package/project/.sdk/tm/rust/feature/audit.rs +0 -9
  1206. package/project/.sdk/tm/rust/feature/base.rs +0 -3
  1207. package/project/.sdk/tm/rust/feature/cache.rs +0 -9
  1208. package/project/.sdk/tm/rust/feature/clienttrack.rs +0 -7
  1209. package/project/.sdk/tm/rust/feature/cost.rs +0 -48
  1210. package/project/.sdk/tm/rust/feature/debug.rs +0 -7
  1211. package/project/.sdk/tm/rust/feature/idempotency.rs +0 -7
  1212. package/project/.sdk/tm/rust/feature/log.rs +0 -3
  1213. package/project/.sdk/tm/rust/feature/metrics.rs +0 -7
  1214. package/project/.sdk/tm/rust/feature/netsim.rs +0 -9
  1215. package/project/.sdk/tm/rust/feature/paging.rs +0 -10
  1216. package/project/.sdk/tm/rust/feature/proxy.rs +0 -8
  1217. package/project/.sdk/tm/rust/feature/ratelimit.rs +0 -6
  1218. package/project/.sdk/tm/rust/feature/rbac.rs +0 -10
  1219. package/project/.sdk/tm/rust/feature/retry.rs +0 -6
  1220. package/project/.sdk/tm/rust/feature/secrets/plugin/capability.rs +2 -2
  1221. package/project/.sdk/tm/rust/feature/secrets/plugin/catalog.rs +2 -2
  1222. package/project/.sdk/tm/rust/feature/secrets/plugin/config.rs +2 -2
  1223. package/project/.sdk/tm/rust/feature/secrets/plugin/depend.rs +2 -2
  1224. package/project/.sdk/tm/rust/feature/secrets/plugin/env.rs +2 -2
  1225. package/project/.sdk/tm/rust/feature/secrets/plugin/export.rs +3 -3
  1226. package/project/.sdk/tm/rust/feature/secrets/plugin/graph.rs +2 -2
  1227. package/project/.sdk/tm/rust/feature/secrets/plugin/host.rs +24 -2
  1228. package/project/.sdk/tm/rust/feature/secrets/plugin/mod.rs +2 -2
  1229. package/project/.sdk/tm/rust/feature/secrets/plugin/order.rs +2 -2
  1230. package/project/.sdk/tm/rust/feature/secrets/plugin/point.rs +2 -2
  1231. package/project/.sdk/tm/rust/feature/secrets/plugin/refs.rs +2 -2
  1232. package/project/.sdk/tm/rust/feature/secrets/plugin/resolve.rs +2 -2
  1233. package/project/.sdk/tm/rust/feature/secrets/plugin/types.rs +2 -2
  1234. package/project/.sdk/tm/rust/feature/secrets/plugin/value.rs +2 -2
  1235. package/project/.sdk/tm/rust/feature/secrets/plugin/version.rs +2 -2
  1236. package/project/.sdk/tm/rust/feature/secrets/plugins/aws/crypto.rs +2 -2
  1237. package/project/.sdk/tm/rust/feature/secrets/plugins/aws/sigv4.rs +2 -2
  1238. package/project/.sdk/tm/rust/feature/secrets/plugins/aws.rs +2 -2
  1239. package/project/.sdk/tm/rust/feature/secrets/plugins/azuresecrets.rs +2 -2
  1240. package/project/.sdk/tm/rust/feature/secrets/plugins/boru.rs +2 -2
  1241. package/project/.sdk/tm/rust/feature/secrets/plugins/doppler.rs +2 -2
  1242. package/project/.sdk/tm/rust/feature/secrets/plugins/gcpsecrets.rs +2 -2
  1243. package/project/.sdk/tm/rust/feature/secrets/plugins/hashicorp.rs +2 -2
  1244. package/project/.sdk/tm/rust/feature/secrets/plugins/httpjson/http.rs +2 -2
  1245. package/project/.sdk/tm/rust/feature/secrets/plugins/httpjson/json.rs +2 -2
  1246. package/project/.sdk/tm/rust/feature/secrets/plugins/httpjson.rs +2 -2
  1247. package/project/.sdk/tm/rust/feature/secrets/plugins/infisical.rs +2 -2
  1248. package/project/.sdk/tm/rust/feature/secrets/plugins/minivault/format.rs +425 -0
  1249. package/project/.sdk/tm/rust/feature/secrets/plugins/minivault.rs +1076 -0
  1250. package/project/.sdk/tm/rust/feature/secrets/plugins/onepassword.rs +2 -2
  1251. package/project/.sdk/tm/rust/feature/secrets/plugins/secretspec.rs +2 -2
  1252. package/project/.sdk/tm/rust/feature/secrets/sekreto/addr.rs +2 -2
  1253. package/project/.sdk/tm/rust/feature/secrets/sekreto/mod.rs +2 -2
  1254. package/project/.sdk/tm/rust/feature/secrets/sekreto/providers.rs +30 -4
  1255. package/project/.sdk/tm/rust/feature/secrets/sekreto/sekreto.rs +2 -2
  1256. package/project/.sdk/tm/rust/feature/secrets.rs +1 -187
  1257. package/project/.sdk/tm/rust/feature/streaming.rs +0 -7
  1258. package/project/.sdk/tm/rust/feature/support.rs +0 -6
  1259. package/project/.sdk/tm/rust/feature/telemetry.rs +0 -9
  1260. package/project/.sdk/tm/rust/feature/test.rs +0 -19
  1261. package/project/.sdk/tm/rust/feature/timeout.rs +0 -7
  1262. package/project/.sdk/tm/rust/feature/validate.rs +306 -0
  1263. package/project/.sdk/tm/rust/src/feature/validate/.gitkeep +0 -0
  1264. package/project/.sdk/tm/rust/tests/common/mod.rs +0 -35
  1265. package/project/.sdk/tm/rust/tests/custom_utility_test.rs +0 -2
  1266. package/project/.sdk/tm/rust/tests/feature/secrets/main.rs +0 -95
  1267. package/project/.sdk/tm/rust/tests/feature_test.rs +0 -16
  1268. package/project/.sdk/tm/rust/tests/netsim_test.rs +0 -6
  1269. package/project/.sdk/tm/rust/tests/omni_resolver/mod.rs +0 -135
  1270. package/project/.sdk/tm/rust/tests/omni_smoke_test.rs +0 -15
  1271. package/project/.sdk/tm/rust/tests/pipeline_test.rs +0 -6
  1272. package/project/.sdk/tm/rust/tests/primary_utility_test.rs +0 -22
  1273. package/project/.sdk/tm/rust/tests/struct_utility_test.rs +0 -25
  1274. package/project/.sdk/tm/rust/tests/vendor/omni/json.rs +2 -2
  1275. package/project/.sdk/tm/rust/tests/vendor/omni/mod.rs +2 -2
  1276. package/project/.sdk/tm/rust/tests/vendor/omni/regex.rs +2 -2
  1277. package/project/.sdk/tm/rust/tests/vendor/omni/runner.rs +2 -2
  1278. package/project/.sdk/tm/rust/tests/vendor/omni/util.rs +2 -2
  1279. package/project/.sdk/tm/rust/utility/fetcher.rs +0 -5
  1280. package/project/.sdk/tm/rust/utility/graphql.rs +1 -30
  1281. package/project/.sdk/tm/rust/utility/make_error.rs +0 -2
  1282. package/project/.sdk/tm/rust/utility/make_options.rs +1 -98
  1283. package/project/.sdk/tm/rust/utility/make_point.rs +0 -12
  1284. package/project/.sdk/tm/rust/utility/make_spec.rs +10 -7
  1285. package/project/.sdk/tm/rust/utility/voxgigstruct/consts.rs +14 -20
  1286. package/project/.sdk/tm/rust/utility/voxgigstruct/major.rs +0 -13
  1287. package/project/.sdk/tm/rust/utility/voxgigstruct/mini.rs +0 -14
  1288. package/project/.sdk/tm/rust/utility/voxgigstruct/mod.rs +0 -2
  1289. package/project/.sdk/tm/rust/utility/voxgigstruct/ordered_map.rs +0 -18
  1290. package/project/.sdk/tm/rust/utility/voxgigstruct/re.rs +0 -11
  1291. package/project/.sdk/tm/rust/utility/voxgigstruct/value.rs +0 -3
  1292. package/project/.sdk/tm/scala/feature/ValidateFeature.scala +286 -0
  1293. package/project/.sdk/tm/scala/feature/secrets/plugin/Capability.scala +2 -2
  1294. package/project/.sdk/tm/scala/feature/secrets/plugin/Config.scala +2 -2
  1295. package/project/.sdk/tm/scala/feature/secrets/plugin/Depend.scala +2 -2
  1296. package/project/.sdk/tm/scala/feature/secrets/plugin/Env.scala +2 -2
  1297. package/project/.sdk/tm/scala/feature/secrets/plugin/Export.scala +3 -3
  1298. package/project/.sdk/tm/scala/feature/secrets/plugin/Graph.scala +2 -2
  1299. package/project/.sdk/tm/scala/feature/secrets/plugin/Host.scala +19 -2
  1300. package/project/.sdk/tm/scala/feature/secrets/plugin/Json.scala +2 -2
  1301. package/project/.sdk/tm/scala/feature/secrets/plugin/Order.scala +2 -2
  1302. package/project/.sdk/tm/scala/feature/secrets/plugin/Plugin.scala +2 -2
  1303. package/project/.sdk/tm/scala/feature/secrets/plugin/Point.scala +2 -2
  1304. package/project/.sdk/tm/scala/feature/secrets/plugin/Refs.scala +2 -2
  1305. package/project/.sdk/tm/scala/feature/secrets/plugin/Resolve.scala +2 -2
  1306. package/project/.sdk/tm/scala/feature/secrets/plugin/Types.scala +2 -2
  1307. package/project/.sdk/tm/scala/feature/secrets/plugin/Value.scala +2 -2
  1308. package/project/.sdk/tm/scala/feature/secrets/plugin/Version.scala +2 -2
  1309. package/project/.sdk/tm/scala/feature/secrets/sekreto/Json.scala +2 -2
  1310. package/project/.sdk/tm/scala/feature/secrets/sekreto/Provider.scala +2 -2
  1311. package/project/.sdk/tm/scala/feature/secrets/sekreto/Providers.scala +3 -2
  1312. package/project/.sdk/tm/scala/feature/secrets/sekreto/Sekreto.scala +2 -2
  1313. package/project/.sdk/tm/scala/feature/secrets/sekreto/Spec.scala +13 -2
  1314. package/project/.sdk/tm/scala/feature/secrets/sekreto/Support.scala +11 -2
  1315. package/project/.sdk/tm/scala/feature/secrets/sekreto/plugins/Aws.scala +2 -2
  1316. package/project/.sdk/tm/scala/feature/secrets/sekreto/plugins/Azuresecrets.scala +2 -2
  1317. package/project/.sdk/tm/scala/feature/secrets/sekreto/plugins/Boru.scala +2 -2
  1318. package/project/.sdk/tm/scala/feature/secrets/sekreto/plugins/Doppler.scala +2 -2
  1319. package/project/.sdk/tm/scala/feature/secrets/sekreto/plugins/Gcpsecrets.scala +2 -2
  1320. package/project/.sdk/tm/scala/feature/secrets/sekreto/plugins/Hashicorp.scala +2 -2
  1321. package/project/.sdk/tm/scala/feature/secrets/sekreto/plugins/Httpjson.scala +2 -2
  1322. package/project/.sdk/tm/scala/feature/secrets/sekreto/plugins/Infisical.scala +2 -2
  1323. package/project/.sdk/tm/scala/feature/secrets/sekreto/plugins/Minivault.scala +979 -0
  1324. package/project/.sdk/tm/scala/feature/secrets/sekreto/plugins/Onepassword.scala +2 -2
  1325. package/project/.sdk/tm/scala/feature/secrets/sekreto/plugins/Secretspec.scala +2 -2
  1326. package/project/.sdk/tm/scala/feature/secrets/sekreto/plugins/Sigv4.scala +2 -2
  1327. package/project/.sdk/tm/scala/sdktest/vendor/omni/Json.scala +2 -2
  1328. package/project/.sdk/tm/scala/sdktest/vendor/omni/Runner.scala +2 -2
  1329. package/project/.sdk/tm/scala/sdktest/vendor/omni/Util.scala +2 -2
  1330. package/project/.sdk/tm/scala/src/feature/validate/.gitkeep +0 -0
  1331. package/project/.sdk/tm/scala/utility/Make.scala +12 -41
  1332. package/project/.sdk/tm/scala/utility/MakeSpec.scala +8 -1
  1333. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/ValidateFeature.swift +273 -0
  1334. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Capability.swift +2 -2
  1335. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Catalog.swift +2 -2
  1336. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Config.swift +2 -2
  1337. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Depend.swift +2 -2
  1338. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Env.swift +2 -2
  1339. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Export.swift +3 -3
  1340. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Graph.swift +2 -2
  1341. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Host.swift +17 -2
  1342. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Json.swift +2 -2
  1343. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Order.swift +2 -2
  1344. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Point.swift +2 -2
  1345. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Refs.swift +2 -2
  1346. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Resolve.swift +2 -2
  1347. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Types.swift +2 -2
  1348. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Value.swift +2 -2
  1349. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Version.swift +2 -2
  1350. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugins/Aws.swift +2 -2
  1351. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugins/Azuresecrets.swift +2 -2
  1352. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugins/Boru.swift +2 -2
  1353. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugins/Crypto.swift +2 -2
  1354. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugins/Doppler.swift +2 -2
  1355. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugins/Gcpsecrets.swift +2 -2
  1356. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugins/Hashicorp.swift +2 -2
  1357. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugins/Httpjson.swift +2 -2
  1358. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugins/Infisical.swift +2 -2
  1359. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugins/Onepassword.swift +2 -2
  1360. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugins/Proc.swift +2 -2
  1361. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugins/Secretspec.swift +2 -2
  1362. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugins/Sigv4.swift +2 -2
  1363. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/sekreto/Addr.swift +2 -2
  1364. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/sekreto/Json.swift +2 -2
  1365. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/sekreto/Provider.swift +2 -2
  1366. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/sekreto/Providers.swift +2 -2
  1367. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/sekreto/Sekreto.swift +2 -2
  1368. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/utility/Make.swift +9 -3
  1369. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/utility/MakeOptions.swift +12 -87
  1370. package/project/.sdk/tm/swift/Tests/ProjectNameSDKTests/PrimaryUtilityTest.swift +3 -3
  1371. package/project/.sdk/tm/swift/Tests/vendor/omni/Json.swift +2 -2
  1372. package/project/.sdk/tm/swift/Tests/vendor/omni/Runner.swift +2 -2
  1373. package/project/.sdk/tm/swift/Tests/vendor/omni/Util.swift +2 -2
  1374. package/project/.sdk/tm/swift/src/feature/validate/.gitkeep +0 -0
  1375. package/project/.sdk/tm/ts/src/Context.ts +0 -5
  1376. package/project/.sdk/tm/ts/src/feature/audit/AuditFeature.ts +0 -7
  1377. package/project/.sdk/tm/ts/src/feature/cache/CacheFeature.ts +0 -8
  1378. package/project/.sdk/tm/ts/src/feature/clienttrack/ClienttrackFeature.ts +0 -7
  1379. package/project/.sdk/tm/ts/src/feature/cost/CostFeature.ts +0 -52
  1380. package/project/.sdk/tm/ts/src/feature/debug/DebugFeature.ts +0 -6
  1381. package/project/.sdk/tm/ts/src/feature/metrics/MetricsFeature.ts +0 -6
  1382. package/project/.sdk/tm/ts/src/feature/netsim/NetsimFeature.ts +0 -8
  1383. package/project/.sdk/tm/ts/src/feature/paging/PagingFeature.ts +0 -13
  1384. package/project/.sdk/tm/ts/src/feature/proxy/ProxyFeature.ts +0 -8
  1385. package/project/.sdk/tm/ts/src/feature/ratelimit/RatelimitFeature.ts +0 -6
  1386. package/project/.sdk/tm/ts/src/feature/rbac/RbacFeature.ts +0 -9
  1387. package/project/.sdk/tm/ts/src/feature/retry/RetryFeature.ts +0 -6
  1388. package/project/.sdk/tm/ts/src/feature/secrets/SecretsFeature.ts +0 -136
  1389. package/project/.sdk/tm/ts/src/feature/secrets/plugin/Capability.ts +1 -1
  1390. package/project/.sdk/tm/ts/src/feature/secrets/plugin/Catalog.ts +1 -1
  1391. package/project/.sdk/tm/ts/src/feature/secrets/plugin/Config.ts +1 -1
  1392. package/project/.sdk/tm/ts/src/feature/secrets/plugin/Depend.ts +1 -1
  1393. package/project/.sdk/tm/ts/src/feature/secrets/plugin/Env.ts +1 -1
  1394. package/project/.sdk/tm/ts/src/feature/secrets/plugin/Export.ts +13 -2
  1395. package/project/.sdk/tm/ts/src/feature/secrets/plugin/FeatureHost.ts +1 -1
  1396. package/project/.sdk/tm/ts/src/feature/secrets/plugin/Graph.ts +1 -1
  1397. package/project/.sdk/tm/ts/src/feature/secrets/plugin/Host.ts +27 -1
  1398. package/project/.sdk/tm/ts/src/feature/secrets/plugin/Order.ts +1 -1
  1399. package/project/.sdk/tm/ts/src/feature/secrets/plugin/Point.ts +1 -1
  1400. package/project/.sdk/tm/ts/src/feature/secrets/plugin/Ref.ts +1 -1
  1401. package/project/.sdk/tm/ts/src/feature/secrets/plugin/Resolve.ts +1 -1
  1402. package/project/.sdk/tm/ts/src/feature/secrets/plugin/Types.ts +1 -1
  1403. package/project/.sdk/tm/ts/src/feature/secrets/plugin/Version.ts +1 -1
  1404. package/project/.sdk/tm/ts/src/feature/secrets/plugin/index.ts +1 -1
  1405. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/Sekreto.ts +1 -1
  1406. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/index.ts +1 -1
  1407. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/plugins/aws.ts +1 -1
  1408. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/plugins/azuresecrets.ts +1 -1
  1409. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/plugins/boru.ts +1 -1
  1410. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/plugins/doppler.ts +1 -1
  1411. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/plugins/gcpsecrets.ts +1 -1
  1412. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/plugins/hashicorp.ts +1 -1
  1413. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/plugins/httpjson.ts +1 -1
  1414. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/plugins/infisical.ts +1 -1
  1415. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/plugins/minivault.ts +1034 -0
  1416. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/plugins/onepassword.ts +1 -1
  1417. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/plugins/secretspec.ts +1 -1
  1418. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/plugins/sigv4.ts +1 -1
  1419. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/provider/addr.ts +1 -1
  1420. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/provider/builtin.ts +2 -1
  1421. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/provider/dotenv.ts +1 -1
  1422. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/provider/env.ts +1 -1
  1423. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/provider/file.ts +1 -1
  1424. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/provider/memory.ts +1 -1
  1425. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/provider/support.ts +11 -1
  1426. package/project/.sdk/tm/ts/src/feature/streaming/StreamingFeature.ts +0 -7
  1427. package/project/.sdk/tm/ts/src/feature/telemetry/TelemetryFeature.ts +0 -7
  1428. package/project/.sdk/tm/ts/src/feature/test/TestFeature.ts +13 -88
  1429. package/project/.sdk/tm/ts/src/feature/validate/ValidateFeature.ts +0 -87
  1430. package/project/.sdk/tm/ts/src/utility/CleanUtility.ts +0 -12
  1431. package/project/.sdk/tm/ts/src/utility/FeatureAddUtility.ts +0 -1
  1432. package/project/.sdk/tm/ts/src/utility/GraphqlUtility.ts +2 -30
  1433. package/project/.sdk/tm/ts/src/utility/MakeErrorUtility.ts +0 -4
  1434. package/project/.sdk/tm/ts/src/utility/MakeOptionsUtility.ts +0 -46
  1435. package/project/.sdk/tm/ts/src/utility/MakePointUtility.ts +0 -34
  1436. package/project/.sdk/tm/ts/src/utility/MakeRequestUtility.ts +0 -1
  1437. package/project/.sdk/tm/ts/src/utility/MakeSpecUtility.ts +0 -5
  1438. package/project/.sdk/tm/ts/src/utility/MakeUrlUtility.ts +0 -1
  1439. package/project/.sdk/tm/ts/src/utility/ParamUtility.ts +0 -8
  1440. package/project/.sdk/tm/ts/src/utility/PrepareBodyUtility.ts +0 -3
  1441. package/project/.sdk/tm/ts/src/utility/PrepareParamsUtility.ts +0 -6
  1442. package/project/.sdk/tm/ts/src/utility/ResultBasicUtility.ts +0 -1
  1443. package/project/.sdk/tm/ts/src/utility/StructUtility.ts +1 -1
  1444. package/project/.sdk/tm/ts/src/utility/TransformRequestUtility.ts +0 -20
  1445. package/project/.sdk/tm/ts/src/utility/TransformResponseUtility.ts +0 -4
  1446. package/project/.sdk/tm/ts/test/exists.test.ts +0 -10
  1447. package/project/.sdk/tm/ts/test/feature/Corpus.test.ts +0 -56
  1448. package/project/.sdk/tm/ts/test/feature/harness.ts +0 -9
  1449. package/project/.sdk/tm/ts/test/feature/secrets/Secrets.test.ts +0 -106
  1450. package/project/.sdk/tm/ts/test/live-contract.ts +0 -2
  1451. package/project/.sdk/tm/ts/test/omni.ts +0 -32
  1452. package/project/.sdk/tm/ts/test/pipeline.test.ts +45 -28
  1453. package/project/.sdk/tm/ts/test/utility/Corpus.test.ts +0 -13
  1454. package/project/.sdk/tm/ts/test/utility/PrimaryUtility.test.ts +56 -29
  1455. package/project/.sdk/tm/ts/test/utility/StructUtility.test.ts +0 -7
  1456. package/project/.sdk/tm/ts/test/utility.ts +0 -55
  1457. package/project/.sdk/tm/ts/test/vendor/omni/Runner.ts +1 -1
  1458. package/project/.sdk/tm/ts/test/vendor/omni/Util.ts +1 -1
  1459. package/project/.sdk/tm/ts/test/vendor/omni/index.ts +1 -1
  1460. package/project/.sdk/tm/zig/core/utility.zig +20 -44
  1461. package/project/.sdk/tm/zig/feature/secrets/plugin/capability.zig +2 -2
  1462. package/project/.sdk/tm/zig/feature/secrets/plugin/catalog.zig +2 -2
  1463. package/project/.sdk/tm/zig/feature/secrets/plugin/config.zig +2 -2
  1464. package/project/.sdk/tm/zig/feature/secrets/plugin/depend.zig +2 -2
  1465. package/project/.sdk/tm/zig/feature/secrets/plugin/env.zig +2 -2
  1466. package/project/.sdk/tm/zig/feature/secrets/plugin/export.zig +3 -3
  1467. package/project/.sdk/tm/zig/feature/secrets/plugin/graph.zig +2 -2
  1468. package/project/.sdk/tm/zig/feature/secrets/plugin/host.zig +18 -2
  1469. package/project/.sdk/tm/zig/feature/secrets/plugin/inst.zig +2 -2
  1470. package/project/.sdk/tm/zig/feature/secrets/plugin/order.zig +2 -2
  1471. package/project/.sdk/tm/zig/feature/secrets/plugin/plugin.zig +2 -2
  1472. package/project/.sdk/tm/zig/feature/secrets/plugin/point.zig +2 -2
  1473. package/project/.sdk/tm/zig/feature/secrets/plugin/ref.zig +2 -2
  1474. package/project/.sdk/tm/zig/feature/secrets/plugin/resolve.zig +2 -2
  1475. package/project/.sdk/tm/zig/feature/secrets/plugin/types.zig +2 -2
  1476. package/project/.sdk/tm/zig/feature/secrets/plugin/value.zig +2 -2
  1477. package/project/.sdk/tm/zig/feature/secrets/plugin/version.zig +2 -2
  1478. package/project/.sdk/tm/zig/feature/secrets/plugins/aws.zig +2 -2
  1479. package/project/.sdk/tm/zig/feature/secrets/plugins/azuresecrets.zig +2 -2
  1480. package/project/.sdk/tm/zig/feature/secrets/plugins/boru.zig +2 -2
  1481. package/project/.sdk/tm/zig/feature/secrets/plugins/doppler.zig +2 -2
  1482. package/project/.sdk/tm/zig/feature/secrets/plugins/gcpsecrets.zig +2 -2
  1483. package/project/.sdk/tm/zig/feature/secrets/plugins/hashicorp.zig +2 -2
  1484. package/project/.sdk/tm/zig/feature/secrets/plugins/httpjson.zig +2 -2
  1485. package/project/.sdk/tm/zig/feature/secrets/plugins/infisical.zig +2 -2
  1486. package/project/.sdk/tm/zig/feature/secrets/plugins/minivault.zig +1930 -0
  1487. package/project/.sdk/tm/zig/feature/secrets/plugins/onepassword.zig +2 -2
  1488. package/project/.sdk/tm/zig/feature/secrets/plugins/secretspec.zig +2 -2
  1489. package/project/.sdk/tm/zig/feature/secrets/plugins/sigv4.zig +2 -2
  1490. package/project/.sdk/tm/zig/feature/secrets/sekreto/addr.zig +2 -2
  1491. package/project/.sdk/tm/zig/feature/secrets/sekreto/builtins.zig +3 -2
  1492. package/project/.sdk/tm/zig/feature/secrets/sekreto/provider.zig +19 -2
  1493. package/project/.sdk/tm/zig/feature/secrets/sekreto/sekreto.zig +2 -2
  1494. package/project/.sdk/tm/zig/feature/validate.zig +293 -0
  1495. package/project/.sdk/tm/zig/src/feature/validate/.gitkeep +0 -0
  1496. package/project/.sdk/tm/zig/test/vendor/omni/omni.zig +2 -2
  1497. package/project/.sdk/tm/zig/test/vendor/omni/regex.zig +2 -2
  1498. package/project/.sdk/tm/zig/utility/voxgigstruct/regex.zig +2 -2
  1499. package/project/.sdk/tm/zig/utility/voxgigstruct/struct.zig +2 -2
  1500. package/project/sdkgen-package.json +1 -1
  1501. package/src/action/action.ts +0 -65
  1502. package/src/action/check.ts +0 -88
  1503. package/src/action/dispatch.ts +0 -27
  1504. package/src/action/doctor.ts +69 -329
  1505. package/src/action/edition.ts +1 -87
  1506. package/src/action/feature.ts +1 -49
  1507. package/src/action/kind.ts +0 -149
  1508. package/src/action/package.ts +0 -228
  1509. package/src/action/resolve.ts +0 -148
  1510. package/src/action/target.ts +0 -177
  1511. package/src/cmp/AgentGuide.ts +0 -7
  1512. package/src/cmp/AgentGuideContent.ts +0 -24
  1513. package/src/cmp/AgentGuideTop.ts +0 -7
  1514. package/src/cmp/Changelog.ts +0 -14
  1515. package/src/cmp/Deploy.ts +1 -31
  1516. package/src/cmp/Entity.ts +0 -4
  1517. package/src/cmp/ExternalTarget.ts +0 -36
  1518. package/src/cmp/Feature.ts +0 -14
  1519. package/src/cmp/FeatureDocs.ts +0 -37
  1520. package/src/cmp/PublishWorkflow.ts +0 -60
  1521. package/src/cmp/ReadmeErrors.ts +0 -17
  1522. package/src/cmp/ReadmeExplanation.ts +2 -11
  1523. package/src/cmp/ReadmeFeatures.ts +0 -10
  1524. package/src/cmp/ReadmeRefFeatures.ts +0 -19
  1525. package/src/cmp/ReadmeStation.ts +0 -19
  1526. package/src/cmp/ReadmeTop.ts +0 -80
  1527. package/src/cmp/ReadmeUnions.ts +0 -15
  1528. package/src/cmp/Registered.ts +0 -30
  1529. package/src/cmp/Security.ts +0 -2
  1530. package/src/cmp/Test.ts +3 -1
  1531. package/src/cmp/TestControl.ts +0 -25
  1532. package/src/helpers/applicability.ts +0 -55
  1533. package/src/helpers/buildIdNames.ts +0 -12
  1534. package/src/helpers/canonSpec.ts +0 -114
  1535. package/src/helpers/canonType.ts +0 -87
  1536. package/src/helpers/collectDeps.ts +21 -23
  1537. package/src/helpers/definition.ts +0 -29
  1538. package/src/helpers/dryrun.ts +0 -8
  1539. package/src/helpers/featureSource.ts +0 -152
  1540. package/src/helpers/getMatchEntries.ts +0 -4
  1541. package/src/helpers/junk.ts +13 -89
  1542. package/src/helpers/manifest.ts +0 -169
  1543. package/src/helpers/modelNames.ts +0 -81
  1544. package/src/helpers/modelcheck.ts +0 -106
  1545. package/src/helpers/naming.ts +2 -305
  1546. package/src/helpers/opExample.ts +0 -56
  1547. package/src/helpers/opShape.ts +0 -200
  1548. package/src/helpers/optspec.ts +0 -77
  1549. package/src/helpers/packageMeta.ts +1 -200
  1550. package/src/helpers/pointPath.ts +0 -55
  1551. package/src/helpers/resolved.ts +50 -0
  1552. package/src/helpers/semver.ts +0 -61
  1553. package/src/helpers/serverVars.ts +0 -44
  1554. package/src/helpers/shipped.ts +0 -14
  1555. package/src/helpers/station.ts +0 -32
  1556. package/src/helpers/stdrep.ts +0 -52
  1557. package/src/helpers/testPolicy.ts +0 -4
  1558. package/src/sdkgen.ts +15 -263
  1559. package/src/testkit.ts +6 -312
  1560. package/src/types.ts +1 -30
  1561. package/src/utility.ts +0 -243
@@ -0,0 +1,1250 @@
1
+ <?php
2
+ // VENDORED: @voxgig/sekreto sdk-20260917-1242-0 (php/plugins/minivault.php)
3
+ // Source: https://github.com/voxgig/sekreto @ 108c4a914bee7b6534c30d1c68c25cd1b9377696 [tag: sdk-20260917-1242-0]
4
+ // License: MIT (c) voxgig - see repository LICENSE. Do not edit: resync from upstream.
5
+
6
+ /**
7
+ * The mini vault, as a voxgig/plugin definition.
8
+ *
9
+ * A port of typescript/plugins/minivault.ts, which is canonical.
10
+ *
11
+ * A PLUGIN, not a built-in: it needs crypto, which is the line the four
12
+ * built-ins stay behind.
13
+ *
14
+ * THE KEY DECIDES WHAT THE VAULT HOLDS. A master key reads and writes
15
+ * every name and mints restricted keys. A restricted key reads the names
16
+ * it was granted and CANNOT DERIVE ANY OTHER - the restriction is the
17
+ * cryptography rather than a check this code performs. What that does and
18
+ * does not protect is set out in DOCS.md under "What the mini vault
19
+ * protects".
20
+ *
21
+ * ext-openssl and ext-hash carry all four primitives, so nothing here is
22
+ * hand-rolled (AGENTS.md rule 3).
23
+ */
24
+
25
+ declare(strict_types=1);
26
+
27
+ namespace Voxgig\Sekreto\Plugins;
28
+
29
+ require_once __DIR__ . '/../src/Providers.php';
30
+
31
+ use Voxgig\Plugin\PluginError;
32
+ use Voxgig\Plugin\Inst;
33
+ use Voxgig\Sekreto\Name;
34
+ use Voxgig\Sekreto\Provider;
35
+ use Voxgig\Sekreto\SekretoError;
36
+
37
+ use const Voxgig\Sekreto\ERROR_CODE;
38
+ use const Voxgig\Sekreto\PROVIDER_EXPORT;
39
+
40
+ /*
41
+ * --- the format ------------------------------------------------------
42
+ *
43
+ * magic 4 'SKMV'
44
+ * version 1 FORMAT
45
+ * kdf 1 1 = PBKDF2-HMAC-SHA256
46
+ * cipher 1 1 = AES-256-GCM
47
+ * reserved 1 0
48
+ * keycount 4 uint32
49
+ * per key:
50
+ * id 1 + bytes the key id, PLAINTEXT
51
+ * salt 1 + bytes
52
+ * iters 4 PBKDF2 rounds for this key
53
+ * ring 1 + iv, 4 + bytes sealed under the passphrase
54
+ * meta 1 + iv, 4 + bytes sealed under the vault's meta key
55
+ * entrycount 4 uint32
56
+ * per entry:
57
+ * id 1 + bytes the blinded lookup id
58
+ * name 1 + iv, 4 + bytes sealed under the vault's name key
59
+ * value 1 + iv, 4 + bytes sealed under that secret's own key
60
+ *
61
+ * Integers are big-endian, and every length precedes its bytes. A file
62
+ * one port writes is read by every other; `test/fixture` pins that with a
63
+ * committed vault rather than with agreement.
64
+ */
65
+
66
+ const MV_MAGIC = 'SKMV';
67
+ const MV_FORMAT = 1;
68
+ const MV_KDF_PBKDF2 = 1;
69
+ const MV_CIPHER_AESGCM = 1;
70
+
71
+ /** AES-256-GCM: 32-byte keys, 12-byte nonces, 16-byte tags. */
72
+ const MV_KEYLEN = 32;
73
+ const MV_IVLEN = 12;
74
+ const MV_TAGLEN = 16;
75
+ const MV_SALTLEN = 16;
76
+
77
+ /** PBKDF2-HMAC-SHA256 rounds when a caller names none. */
78
+ const MV_ITERATIONS = 210000;
79
+
80
+ /** The key id a vault gets when a caller names none. */
81
+ const MV_MASTERKEY = 'master';
82
+
83
+ /*
84
+ * Additional authenticated data. Every blob is bound to its PLACE in the
85
+ * file, so no ciphertext can be moved.
86
+ */
87
+ const MV_AAD_RING = 'skmv1:ring:';
88
+ const MV_AAD_META = 'skmv1:meta:';
89
+ const MV_AAD_NAME = 'skmv1:name';
90
+ const MV_AAD_SECRET = 'skmv1:secret:';
91
+
92
+ /*
93
+ * Everything a master can reach is derived from the root key, so a
94
+ * rotation is one new random value rather than a re-wrap of each part.
95
+ */
96
+ const MV_LABEL_NAMES = 'skmv1:names';
97
+ const MV_LABEL_META = 'skmv1:meta';
98
+ const MV_LABEL_ID = 'skmv1:id';
99
+
100
+ /**
101
+ * The largest key id the format can record.
102
+ *
103
+ * `small` writes a length in ONE byte. A longer id wrapped that byte and
104
+ * the writer then appended the whole thing, so every field after it
105
+ * shifted. Checked where an id is ACCEPTED, so the refusal names the id
106
+ * rather than the file.
107
+ */
108
+ const MV_IDMAX = 255;
109
+
110
+ /**
111
+ * The export key the vault API is published under, beside the `provider`
112
+ * key every kind publishes.
113
+ */
114
+ const VAULT_EXPORT = 'vault';
115
+
116
+ /** @return never */
117
+ function mvfail(string $text): void
118
+ {
119
+ throw new SekretoError('sekreto: minivault: ' . $text);
120
+ }
121
+
122
+ function mvcheckid(mixed $id, string $what): string
123
+ {
124
+ if (!is_string($id) || '' === $id) {
125
+ mvfail($what);
126
+ }
127
+ if (strlen($id) > MV_IDMAX) {
128
+ mvfail('key id is longer than ' . MV_IDMAX . ' bytes: ' . substr($id, 0, 32) . '...');
129
+ }
130
+
131
+ return $id;
132
+ }
133
+
134
+ // --- keys ------------------------------------------------------------
135
+
136
+ function mvhmac(string $key, string $text): string
137
+ {
138
+ return hash_hmac('sha256', $text, $key, true);
139
+ }
140
+
141
+ /** The key-encryption key a passphrase unwraps a ring with. */
142
+ function mvkek(string $passphrase, string $salt, int $iters): string
143
+ {
144
+ return hash_pbkdf2('sha256', $passphrase, $salt, $iters, MV_KEYLEN, true);
145
+ }
146
+
147
+ /**
148
+ * The key one named secret's value is encrypted with.
149
+ *
150
+ * DERIVED, never stored, for a master: it holds the root key and so
151
+ * reaches every name, including ones written after it was made. A
152
+ * restricted key holds the derived keys it was granted and nothing that
153
+ * produces another.
154
+ */
155
+ function mvsecretkey(string $root, string $name): string
156
+ {
157
+ return mvhmac($root, MV_AAD_SECRET . $name);
158
+ }
159
+
160
+ /**
161
+ * Where a secret lives in the file, derived from its own key so that
162
+ * finding it needs no plaintext name.
163
+ */
164
+ function mventryid(string $key): string
165
+ {
166
+ return mvhmac($key, MV_LABEL_ID);
167
+ }
168
+
169
+ function mvrandom(int $len): string
170
+ {
171
+ return random_bytes($len);
172
+ }
173
+
174
+ // --- sealing ---------------------------------------------------------
175
+
176
+ /** @return array{iv: string, blob: string} */
177
+ function mvseal(string $key, string $plain, string $aad): array
178
+ {
179
+ $iv = mvrandom(MV_IVLEN);
180
+ $tag = '';
181
+ $body = openssl_encrypt($plain, 'aes-256-gcm', $key, OPENSSL_RAW_DATA, $iv,
182
+ $tag, $aad, MV_TAGLEN);
183
+
184
+ if (false === $body) {
185
+ mvfail('cannot seal');
186
+ }
187
+
188
+ return ['iv' => $iv, 'blob' => $body . $tag];
189
+ }
190
+
191
+ /**
192
+ * The plaintext, or a refusal. A GCM tag that fails to verify is the only
193
+ * evidence there is, and it cannot tell a wrong passphrase from a damaged
194
+ * file, so `what` names the attempt and the message admits both.
195
+ *
196
+ * @param array{iv: string, blob: string} $sealed
197
+ */
198
+ function mvunseal(string $key, array $sealed, string $aad, string $what): string
199
+ {
200
+ $blob = $sealed['blob'];
201
+ $iv = $sealed['iv'];
202
+
203
+ if (strlen($blob) < MV_TAGLEN || MV_IVLEN !== strlen($iv)) {
204
+ mvfail($what . ': truncated');
205
+ }
206
+
207
+ $tag = substr($blob, -MV_TAGLEN);
208
+ $body = substr($blob, 0, strlen($blob) - MV_TAGLEN);
209
+
210
+ // openssl_decrypt answers false rather than raising when the tag does
211
+ // not verify, and it also warns on a nonce of the wrong length; both
212
+ // are the same refusal to a caller.
213
+ $plain = @openssl_decrypt($body, 'aes-256-gcm', $key, OPENSSL_RAW_DATA, $iv, $tag, $aad);
214
+
215
+ if (false === $plain) {
216
+ mvfail($what);
217
+ }
218
+
219
+ return $plain;
220
+ }
221
+
222
+ /** @return array<string, mixed> */
223
+ function mvjsonof(string $plain, string $what): array
224
+ {
225
+ $out = json_decode($plain, true);
226
+
227
+ if (!is_array($out)) {
228
+ mvfail('unreadable ' . $what);
229
+ }
230
+
231
+ return $out;
232
+ }
233
+
234
+ function mvb64(string $bytes): string
235
+ {
236
+ return base64_encode($bytes);
237
+ }
238
+
239
+ function mvunb64(mixed $text, string $what): string
240
+ {
241
+ if (!is_string($text)) {
242
+ mvfail('missing ' . $what);
243
+ }
244
+ $out = base64_decode($text, false);
245
+
246
+ if (false === $out) {
247
+ mvfail('missing ' . $what);
248
+ }
249
+
250
+ return $out;
251
+ }
252
+
253
+ // --- the file --------------------------------------------------------
254
+
255
+ /**
256
+ * A cursor, so that every length check is in one place: a truncated vault
257
+ * is refused rather than read as a short one.
258
+ */
259
+ final class MvReader
260
+ {
261
+ private int $at = 0;
262
+
263
+ public function __construct(private readonly string $bytes)
264
+ {
265
+ }
266
+
267
+ public function take(int $len): string
268
+ {
269
+ if (strlen($this->bytes) < $this->at + $len) {
270
+ mvfail('the vault file is truncated');
271
+ }
272
+ $out = substr($this->bytes, $this->at, $len);
273
+ $this->at += $len;
274
+
275
+ return $out;
276
+ }
277
+
278
+ public function u8(): int
279
+ {
280
+ return ord($this->take(1));
281
+ }
282
+
283
+ public function u32(): int
284
+ {
285
+ /** @var array{1: int} $out */
286
+ $out = unpack('N', $this->take(4));
287
+
288
+ return $out[1];
289
+ }
290
+
291
+ public function small(): string
292
+ {
293
+ return $this->take($this->u8());
294
+ }
295
+
296
+ public function large(): string
297
+ {
298
+ return $this->take($this->u32());
299
+ }
300
+
301
+ public function magic(): string
302
+ {
303
+ return $this->take(4);
304
+ }
305
+
306
+ /** @return array{iv: string, blob: string} */
307
+ public function sealed(): array
308
+ {
309
+ return ['iv' => $this->small(), 'blob' => $this->large()];
310
+ }
311
+
312
+ public function done(): bool
313
+ {
314
+ return $this->at === strlen($this->bytes);
315
+ }
316
+ }
317
+
318
+ /** @return array{keys: array<int, array<string, mixed>>, entries: array<int, array<string, mixed>>} */
319
+ function mvreadfile(string $bytes): array
320
+ {
321
+ $read = new MvReader($bytes);
322
+
323
+ if (MV_MAGIC !== $read->magic()) {
324
+ mvfail('not a vault file');
325
+ }
326
+
327
+ $version = $read->u8();
328
+ if (MV_FORMAT !== $version) {
329
+ mvfail('unsupported format version: ' . $version);
330
+ }
331
+
332
+ $kdf = $read->u8();
333
+ $cipher = $read->u8();
334
+ if (MV_KDF_PBKDF2 !== $kdf || MV_CIPHER_AESGCM !== $cipher) {
335
+ mvfail('unsupported kdf or cipher: ' . $kdf . '/' . $cipher);
336
+ }
337
+ $read->u8();
338
+
339
+ $keys = [];
340
+ $keycount = $read->u32();
341
+ for ($index = 0; $index < $keycount; $index++) {
342
+ $id = $read->small();
343
+ $salt = $read->small();
344
+ $iters = $read->u32();
345
+ $keys[] = ['id' => $id, 'salt' => $salt, 'iters' => $iters,
346
+ 'ring' => $read->sealed(), 'meta' => $read->sealed()];
347
+ }
348
+
349
+ $entries = [];
350
+ $entrycount = $read->u32();
351
+ for ($index = 0; $index < $entrycount; $index++) {
352
+ $entries[] = ['id' => $read->small(), 'name' => $read->sealed(),
353
+ 'value' => $read->sealed()];
354
+ }
355
+
356
+ if (!$read->done()) {
357
+ mvfail('the vault file has trailing bytes');
358
+ }
359
+
360
+ return ['keys' => $keys, 'entries' => $entries];
361
+ }
362
+
363
+ /** @param array{keys: array<int, array<string, mixed>>, entries: array<int, array<string, mixed>>} $vault */
364
+ function mvwritefile(array $vault): string
365
+ {
366
+ $out = '';
367
+
368
+ $u8 = function (int $value) use (&$out): void {
369
+ $out .= chr($value);
370
+ };
371
+ $u32 = function (int $value) use (&$out): void {
372
+ $out .= pack('N', $value);
373
+ };
374
+ $small = function (string $bytes) use (&$out, $u8): void {
375
+ $u8(strlen($bytes));
376
+ $out .= $bytes;
377
+ };
378
+ $large = function (string $bytes) use (&$out, $u32): void {
379
+ $u32(strlen($bytes));
380
+ $out .= $bytes;
381
+ };
382
+ $sealed = function (array $value) use ($small, $large): void {
383
+ $small($value['iv']);
384
+ $large($value['blob']);
385
+ };
386
+
387
+ $out .= MV_MAGIC;
388
+ $u8(MV_FORMAT);
389
+ $u8(MV_KDF_PBKDF2);
390
+ $u8(MV_CIPHER_AESGCM);
391
+ $u8(0);
392
+
393
+ $u32(count($vault['keys']));
394
+ foreach ($vault['keys'] as $key) {
395
+ $small($key['id']);
396
+ $small($key['salt']);
397
+ $u32($key['iters']);
398
+ $sealed($key['ring']);
399
+ $sealed($key['meta']);
400
+ }
401
+
402
+ // SORTED BY ID, which is a blinded value: the file therefore records
403
+ // nothing about the order secrets were written in.
404
+ $entries = $vault['entries'];
405
+ usort($entries, fn(array $left, array $right) => strcmp($left['id'], $right['id']));
406
+
407
+ $u32(count($entries));
408
+ foreach ($entries as $entry) {
409
+ $small($entry['id']);
410
+ $sealed($entry['name']);
411
+ $sealed($entry['value']);
412
+ }
413
+
414
+ return $out;
415
+ }
416
+
417
+ // --- creating --------------------------------------------------------
418
+
419
+ /** A new vault: one master key, no secrets. */
420
+ function mvnew(string $keyid, string $passphrase, int $iterations): array
421
+ {
422
+ $root = mvrandom(MV_KEYLEN);
423
+ $salt = mvrandom(MV_SALTLEN);
424
+
425
+ $ring = ['v' => MV_FORMAT, 'write' => true, 'root' => mvb64($root)];
426
+ $meta = ['v' => MV_FORMAT, 'master' => true, 'write' => true, 'grants' => []];
427
+
428
+ return [
429
+ 'keys' => [[
430
+ 'id' => $keyid,
431
+ 'salt' => $salt,
432
+ 'iters' => $iterations,
433
+ 'ring' => mvseal(mvkek($passphrase, $salt, $iterations),
434
+ mvjson($ring), MV_AAD_RING . $keyid),
435
+ 'meta' => mvseal(mvhmac($root, MV_LABEL_META),
436
+ mvjson($meta), MV_AAD_META . $keyid),
437
+ ]],
438
+ 'entries' => [],
439
+ ];
440
+ }
441
+
442
+ /**
443
+ * JSON the way every other port writes it: a ring's `grants` is an OBJECT
444
+ * keyed by secret name, and a meta record's is an ARRAY of names. PHP has
445
+ * one `[]` for both, so the ring's is forced to `stdClass` and the meta's
446
+ * is left as the list it already is. A ring is the one with no `master`.
447
+ *
448
+ * FORCED WHATEVER IS IN IT, not only when it is empty, and that is the
449
+ * whole of the bug this once had. `api.token` is a valid secret name and
450
+ * so is `0`: PHP turns the string key `"0"` into the integer key `0`, and
451
+ * `json_encode` writes an array for any map whose keys are `0..n`. So one
452
+ * grant named `0` wrote `"grants":["..."]`, which PHP reads back as its
453
+ * own map and no other port can read at all - java sees an array where it
454
+ * wants an object and the restricted key reaches nothing.
455
+ *
456
+ * @param array<string, mixed> $value
457
+ */
458
+ function mvjson(array $value): string
459
+ {
460
+ if (isset($value['grants']) && !isset($value['master'])) {
461
+ $value['grants'] = (object) $value['grants'];
462
+ }
463
+
464
+ return json_encode($value, JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE);
465
+ }
466
+
467
+ /**
468
+ * `fopen` under `x` — O_CREAT|O_EXCL — with the umask set so the kernel
469
+ * creates the file 0600 and no wider.
470
+ *
471
+ * WHY NOT fopen-THEN-chmod, which this used to do: between the two calls
472
+ * the file exists at 0666 & ~umask, and another local user watching a
473
+ * shared directory can open it for writing and keep that descriptor after
474
+ * the chmod lands. PHP has no way to pass a mode to `fopen`, so the umask
475
+ * is the only way to ask the kernel for the mode AT CREATION. It is
476
+ * process-global for the width of this call, which is what every PHP
477
+ * program that needs a private file does.
478
+ */
479
+ function mvcreate(string $path)
480
+ {
481
+ $was = umask(0o077);
482
+
483
+ try {
484
+ return @fopen($path, 'xb');
485
+ } finally {
486
+ umask($was);
487
+ }
488
+ }
489
+
490
+ /**
491
+ * Write a vault file that is not there yet, and REFUSE one that is.
492
+ *
493
+ * Straight to the target under `x` — `O_CREAT|O_EXCL` — rather than
494
+ * through a temporary and a rename. `rename` REPLACES its destination, so
495
+ * two processes creating the same vault both succeeded and the second
496
+ * discarded the first one's secrets.
497
+ */
498
+ function mvputnew(string $file, array $vault): void
499
+ {
500
+ $handle = mvcreate($file);
501
+
502
+ if (false === $handle) {
503
+ if (file_exists($file)) {
504
+ mvfail('vault file already exists: ' . $file);
505
+ }
506
+ mvfail('cannot write ' . $file);
507
+ }
508
+
509
+ try {
510
+ // A SHORT WRITE IS NOT A WRITE. `fwrite` answers the byte count,
511
+ // and under a quota or a full disk that count is positive and less
512
+ // than what it was handed - which `false ===` took for success.
513
+ $raw = mvwritefile($vault);
514
+ if (strlen($raw) !== fwrite($handle, $raw)) {
515
+ mvfail('cannot write ' . $file);
516
+ }
517
+ } finally {
518
+ fclose($handle);
519
+ }
520
+ }
521
+
522
+ /** Is this the same sealed blob, byte for byte? */
523
+ function mvsameseal(array $left, array $right): bool
524
+ {
525
+ return $left['iv'] === $right['iv'] && $left['blob'] === $right['blob'];
526
+ }
527
+
528
+ /**
529
+ * A handle on one vault file, opened as ONE key.
530
+ *
531
+ * Every method answers as that key: `list` shows the names it may read,
532
+ * `get` answers for those and misses on the rest, and the master-only
533
+ * methods refuse for any other key. Nothing is read or derived until the
534
+ * first call that needs the file.
535
+ */
536
+ final class MiniVault
537
+ {
538
+ private readonly string $file;
539
+ private readonly string $keyid;
540
+ private readonly string $passphrase;
541
+ private readonly int $iterations;
542
+ private readonly bool $create;
543
+
544
+ /** @var array<string, mixed>|null */
545
+ private ?array $opened = null;
546
+
547
+ /** @param array<string, mixed> $options */
548
+ public function __construct(array $options)
549
+ {
550
+ $file = $options['file'] ?? null;
551
+ $passphrase = $options['passphrase'] ?? null;
552
+
553
+ if (!is_string($file) || '' === $file) {
554
+ mvfail('a vault needs a file');
555
+ }
556
+ if (!is_string($passphrase) || '' === $passphrase) {
557
+ mvfail('a vault needs a passphrase');
558
+ }
559
+
560
+ $this->file = $file;
561
+ $this->passphrase = $passphrase;
562
+ // AN EMPTY KEY IS NO KEY, so it means `master` - `??` answers for
563
+ // null alone, and the canonical's `opts.key || MASTERKEY` answers
564
+ // for both. A CLI reaches this with SEKRETO_VAULT_KEY set and
565
+ // empty, which is what an unset shell variable expands to.
566
+ $wantkey = (string) ($options['key'] ?? '');
567
+ $this->keyid = mvcheckid('' === $wantkey ? MV_MASTERKEY : $wantkey,
568
+ 'a vault needs a key id');
569
+ $this->iterations = (int) ($options['iterations'] ?? MV_ITERATIONS);
570
+ $this->create = true === ($options['create'] ?? false);
571
+ }
572
+
573
+ /** The file this handle reads. */
574
+ public function file(): string
575
+ {
576
+ return $this->file;
577
+ }
578
+
579
+ /** The key id this handle opens with. */
580
+ public function key(): string
581
+ {
582
+ return $this->keyid;
583
+ }
584
+
585
+ /**
586
+ * Derive the key and read the file NOW rather than at first use.
587
+ *
588
+ * A COPY. `set` reads `write` to decide whether this key may write, so
589
+ * handing the caller the live record let it flip its own permission.
590
+ * Authorization state does not leave this object.
591
+ *
592
+ * @return array<string, mixed>
593
+ */
594
+ public function open(): array
595
+ {
596
+ [, $opened] = $this->load();
597
+ $info = $opened['info'];
598
+
599
+ return ['key' => $info['key'], 'master' => $info['master'],
600
+ 'write' => $info['write'], 'grants' => array_values($info['grants'])];
601
+ }
602
+
603
+ /** Forget the derived keys. The next call opens again. */
604
+ public function close(): void
605
+ {
606
+ $this->opened = null;
607
+ }
608
+
609
+ /**
610
+ * The names this key can read, sorted.
611
+ *
612
+ * @return array<int, string>
613
+ */
614
+ public function list(): array
615
+ {
616
+ [$vault, $opened] = $this->load();
617
+
618
+ if (null !== $opened['root']) {
619
+ $namekey = mvhmac($opened['root'], MV_LABEL_NAMES);
620
+ $out = [];
621
+ foreach ($vault['entries'] as $entry) {
622
+ $out[] = mvunseal($namekey, $entry['name'], MV_AAD_NAME,
623
+ 'a secret name is damaged');
624
+ }
625
+ sort($out);
626
+
627
+ return $out;
628
+ }
629
+
630
+ // A restricted key has no name key, so it reports the grants it can
631
+ // actually find: the vault never tells it what else is in there.
632
+ $out = [];
633
+ foreach ($opened['info']['grants'] as $name) {
634
+ if (null !== $this->findentry($vault, $opened['grants'][$name])) {
635
+ $out[] = $name;
636
+ }
637
+ }
638
+ sort($out);
639
+
640
+ return $out;
641
+ }
642
+
643
+ public function has(string $name): bool
644
+ {
645
+ return null !== $this->get($name);
646
+ }
647
+
648
+ /**
649
+ * The value, or null when the vault does not hold that name or this
650
+ * key was not granted it.
651
+ */
652
+ public function get(string $name): ?string
653
+ {
654
+ Name::check($name);
655
+ [$vault, $opened] = $this->load();
656
+
657
+ $key = $this->keyfor($opened, $name);
658
+ if (null === $key) {
659
+ // OUTSIDE THE GRANT IS A MISS, deliberately. The vault answers
660
+ // as the key that opened it, so a name this key cannot read is
661
+ // a name this store does not hold for this caller.
662
+ return null;
663
+ }
664
+
665
+ $entry = $this->findentry($vault, $key);
666
+ if (null === $entry) {
667
+ return null;
668
+ }
669
+
670
+ return mvunseal($key, $entry['value'], MV_AAD_SECRET . $name,
671
+ 'the value of ' . $name . ' is damaged');
672
+ }
673
+
674
+ /**
675
+ * Write a value. A master writes any name; a restricted key holding
676
+ * `write` overwrites the names it was granted, and creates none.
677
+ */
678
+ public function set(string $name, string $value): void
679
+ {
680
+ Name::check($name);
681
+ [$vault, $opened] = $this->load();
682
+
683
+ if (!$opened['info']['write']) {
684
+ mvfail('key ' . $opened['info']['key'] . ' is read-only');
685
+ }
686
+
687
+ $key = $this->keyfor($opened, $name);
688
+ if (null === $key) {
689
+ mvfail('key ' . $opened['info']['key'] . ' was not granted ' . $name);
690
+ }
691
+
692
+ $sealedvalue = mvseal($key, $value, MV_AAD_SECRET . $name);
693
+ $id = mventryid($key);
694
+
695
+ $at = null;
696
+ foreach ($vault['entries'] as $index => $entry) {
697
+ if ($entry['id'] === $id) {
698
+ $at = $index;
699
+ break;
700
+ }
701
+ }
702
+
703
+ if (null !== $at) {
704
+ $vault['entries'][$at]['value'] = $sealedvalue;
705
+ } else {
706
+ // A NEW NAME NEEDS THE NAME KEY, which only a master holds. So
707
+ // a restricted key with `write` updates what it was granted and
708
+ // cannot grow the vault.
709
+ $root = $this->rootof($opened, 'creating the secret ' . $name);
710
+ $vault['entries'][] = [
711
+ 'id' => $id,
712
+ 'name' => mvseal(mvhmac($root, MV_LABEL_NAMES), $name, MV_AAD_NAME),
713
+ 'value' => $sealedvalue,
714
+ ];
715
+ }
716
+
717
+ $this->save($vault);
718
+ }
719
+
720
+ /** Drop a name. Master only. */
721
+ public function remove(string $name): void
722
+ {
723
+ Name::check($name);
724
+ [$vault, $opened] = $this->load();
725
+ $root = $this->rootof($opened, 'removing a secret');
726
+
727
+ $wanted = mventryid(mvsecretkey($root, $name));
728
+ $at = null;
729
+ foreach ($vault['entries'] as $index => $entry) {
730
+ if ($entry['id'] === $wanted) {
731
+ $at = $index;
732
+ break;
733
+ }
734
+ }
735
+ if (null === $at) {
736
+ mvfail('no such secret: ' . $name);
737
+ }
738
+
739
+ array_splice($vault['entries'], $at, 1);
740
+ $this->save($vault);
741
+ }
742
+
743
+ /**
744
+ * Every key in the file, with what it may do. Master only.
745
+ *
746
+ * @return array<int, array<string, mixed>>
747
+ */
748
+ public function keys(): array
749
+ {
750
+ [$vault, $opened] = $this->load();
751
+ $this->rootof($opened, 'listing the keys');
752
+
753
+ $out = [];
754
+ foreach ($vault['keys'] as $record) {
755
+ $meta = $this->metaof($opened, $record);
756
+ if (null === $meta) {
757
+ $out[] = ['key' => $record['id'], 'master' => false,
758
+ 'write' => false, 'grants' => []];
759
+ continue;
760
+ }
761
+ $grants = $meta['grants'] ?? [];
762
+ sort($grants);
763
+ $out[] = ['key' => $record['id'], 'master' => true === ($meta['master'] ?? false),
764
+ 'write' => true === ($meta['write'] ?? false), 'grants' => $grants];
765
+ }
766
+
767
+ return $out;
768
+ }
769
+
770
+ /**
771
+ * Mint a restricted key. Master only.
772
+ *
773
+ * @param array<string, mixed> $spec
774
+ */
775
+ public function grant(array $spec): void
776
+ {
777
+ [$vault, $opened] = $this->load();
778
+ $root = $this->rootof($opened, 'granting a key');
779
+
780
+ $id = mvcheckid($spec['key'] ?? null, 'a grant needs a key id');
781
+ $phrase = $spec['passphrase'] ?? null;
782
+ if (!is_string($phrase) || '' === $phrase) {
783
+ mvfail('a grant needs a passphrase');
784
+ }
785
+ foreach ($vault['keys'] as $key) {
786
+ if ($key['id'] === $id) {
787
+ mvfail('key already exists: ' . $id);
788
+ }
789
+ }
790
+
791
+ $names = $spec['names'] ?? [];
792
+ sort($names);
793
+ $grants = [];
794
+ foreach ($names as $name) {
795
+ Name::check($name);
796
+ $grants[$name] = mvb64(mvsecretkey($root, $name));
797
+ }
798
+
799
+ $write = true === ($spec['write'] ?? false);
800
+ $vault['keys'][] = $this->sealkey(
801
+ $root, $id, $phrase, (int) ($spec['iterations'] ?? $this->iterations),
802
+ ['v' => MV_FORMAT, 'write' => $write, 'grants' => $grants],
803
+ ['v' => MV_FORMAT, 'master' => false, 'write' => $write, 'grants' => $names]
804
+ );
805
+
806
+ $this->save($vault);
807
+ }
808
+
809
+ /**
810
+ * Drop a key. Master only.
811
+ *
812
+ * Anyone who already copied the file keeps whatever that key could
813
+ * read, so revoking bars future reads of the LIVE file and `rotate` is
814
+ * what takes a secret back.
815
+ */
816
+ public function revoke(string $key): void
817
+ {
818
+ [$vault, $opened] = $this->load();
819
+ $this->rootof($opened, 'revoking a key');
820
+
821
+ if ($key === $opened['info']['key']) {
822
+ mvfail('a key cannot revoke itself: ' . $key);
823
+ }
824
+
825
+ $at = null;
826
+ foreach ($vault['keys'] as $index => $record) {
827
+ if ($record['id'] === $key) {
828
+ $at = $index;
829
+ break;
830
+ }
831
+ }
832
+ if (null === $at) {
833
+ mvfail('no such key: ' . $key);
834
+ }
835
+
836
+ array_splice($vault['keys'], $at, 1);
837
+ $this->save($vault);
838
+ }
839
+
840
+ /**
841
+ * A new root key, every value re-encrypted under it, and EVERY OTHER
842
+ * KEY DROPPED. Master only.
843
+ *
844
+ * The other keys go because they must: their rings are sealed under
845
+ * passphrases this process does not have. Re-grant afterwards.
846
+ */
847
+ public function rotate(): void
848
+ {
849
+ [$vault, $opened] = $this->load();
850
+ $this->rootof($opened, 'rotating the vault');
851
+
852
+ // Read everything out under the old root before anything changes:
853
+ // once the root is replaced the old derived keys are unreachable.
854
+ $plain = [];
855
+ foreach ($this->list() as $name) {
856
+ $plain[$name] = $this->get($name);
857
+ }
858
+
859
+ $root = mvrandom(MV_KEYLEN);
860
+ $namekey = mvhmac($root, MV_LABEL_NAMES);
861
+
862
+ $entries = [];
863
+ foreach ($plain as $name => $value) {
864
+ $key = mvsecretkey($root, (string) $name);
865
+ $entries[] = [
866
+ 'id' => mventryid($key),
867
+ 'name' => mvseal($namekey, (string) $name, MV_AAD_NAME),
868
+ 'value' => mvseal($key, $value, MV_AAD_SECRET . $name),
869
+ ];
870
+ }
871
+
872
+ $iters = $this->iterations;
873
+ foreach ($vault['keys'] as $record) {
874
+ if ($record['id'] === $this->keyid) {
875
+ $iters = $record['iters'];
876
+ }
877
+ }
878
+
879
+ $fresh = $this->sealkey(
880
+ $root, $this->keyid, $this->passphrase, $iters,
881
+ ['v' => MV_FORMAT, 'write' => true, 'root' => mvb64($root)],
882
+ ['v' => MV_FORMAT, 'master' => true, 'write' => true, 'grants' => []]
883
+ );
884
+
885
+ // SAVE FIRST, adopt second. A handle holding the new root over a
886
+ // file that still holds the old one reads nothing and says the
887
+ // vault is damaged.
888
+ $this->save(['keys' => [$fresh], 'entries' => $entries]);
889
+
890
+ $this->opened = [
891
+ 'info' => ['key' => $this->keyid, 'master' => true, 'write' => true, 'grants' => []],
892
+ 'root' => $root,
893
+ 'grants' => [],
894
+ 'ring' => $fresh['ring'],
895
+ ];
896
+ }
897
+
898
+ private function bytes(): string
899
+ {
900
+ $raw = @file_get_contents($this->file);
901
+
902
+ if (false !== $raw) {
903
+ return $raw;
904
+ }
905
+
906
+ // A vault is configured deliberately, with a key. Its absence is a
907
+ // broken deployment and never "no secrets here": answering a miss
908
+ // would send the chain on to a weaker store.
909
+ if (!file_exists($this->file)) {
910
+ if (!$this->create) {
911
+ mvfail('no vault file: ' . $this->file);
912
+ }
913
+ mvputnew($this->file, mvnew($this->keyid, $this->passphrase, $this->iterations));
914
+ $raw = @file_get_contents($this->file);
915
+ if (false !== $raw) {
916
+ return $raw;
917
+ }
918
+ }
919
+
920
+ mvfail('cannot read ' . $this->file);
921
+ }
922
+
923
+ /** @return array{0: array<string, mixed>, 1: array<string, mixed>} */
924
+ private function load(): array
925
+ {
926
+ $vault = mvreadfile($this->bytes());
927
+
928
+ $record = null;
929
+ foreach ($vault['keys'] as $key) {
930
+ if ($key['id'] === $this->keyid) {
931
+ $record = $key;
932
+ break;
933
+ }
934
+ }
935
+ if (null === $record) {
936
+ // REVOKED, or never there. Either way this handle is finished,
937
+ // and dropping what it derived is what stops the next call
938
+ // answering from memory.
939
+ $this->opened = null;
940
+ mvfail('no such key: ' . $this->keyid);
941
+ }
942
+
943
+ // The file still holds this key, and holds the SAME ring: a key
944
+ // revoked and re-granted under another passphrase is a different
945
+ // key wearing the id, and re-deriving is what refuses it.
946
+ if (null !== $this->opened && mvsameseal($this->opened['ring'], $record['ring'])) {
947
+ return [$vault, $this->opened];
948
+ }
949
+ $this->opened = null;
950
+
951
+ $plain = mvunseal(
952
+ mvkek($this->passphrase, $record['salt'], $record['iters']),
953
+ $record['ring'], MV_AAD_RING . $this->keyid,
954
+ 'wrong passphrase for key ' . $this->keyid . ', or a damaged vault'
955
+ );
956
+
957
+ $ring = mvjsonof($plain, 'key ring for ' . $this->keyid);
958
+
959
+ $grants = [];
960
+ foreach (($ring['grants'] ?? []) as $name => $key) {
961
+ $grants[$name] = mvunb64($key, 'a granted key');
962
+ }
963
+ // `strval`, and it is the same PHP rule as the one `mvjson` fights
964
+ // on the way out: `array_keys` hands back an INTEGER for the key
965
+ // "0", so a grant on a numerically named secret would reach the
966
+ // caller as `[0]` where every other port answers `["0"]`.
967
+ $names = array_map('strval', array_keys($grants));
968
+ sort($names);
969
+
970
+ $this->opened = [
971
+ 'info' => [
972
+ 'key' => $this->keyid,
973
+ 'master' => isset($ring['root']),
974
+ 'write' => isset($ring['root']) || true === ($ring['write'] ?? false),
975
+ 'grants' => $names,
976
+ ],
977
+ 'root' => isset($ring['root']) ? mvunb64($ring['root'], 'the root key') : null,
978
+ 'grants' => $grants,
979
+ 'ring' => $record['ring'],
980
+ ];
981
+
982
+ return [$vault, $this->opened];
983
+ }
984
+
985
+ private function rootof(array $opened, string $what): string
986
+ {
987
+ if (null === $opened['root']) {
988
+ mvfail($what . ' needs a master key, and ' . $opened['info']['key'] .
989
+ ' is restricted');
990
+ }
991
+
992
+ return $opened['root'];
993
+ }
994
+
995
+ /** The key for one name, or null when this key cannot reach it. */
996
+ private function keyfor(array $opened, string $name): ?string
997
+ {
998
+ if (null !== $opened['root']) {
999
+ return mvsecretkey($opened['root'], $name);
1000
+ }
1001
+
1002
+ return $opened['grants'][$name] ?? null;
1003
+ }
1004
+
1005
+ private function findentry(array $vault, ?string $key): ?array
1006
+ {
1007
+ if (null === $key) {
1008
+ return null;
1009
+ }
1010
+ $id = mventryid($key);
1011
+ foreach ($vault['entries'] as $entry) {
1012
+ if ($entry['id'] === $id) {
1013
+ return $entry;
1014
+ }
1015
+ }
1016
+
1017
+ return null;
1018
+ }
1019
+
1020
+ private function metaof(array $opened, array $record): ?array
1021
+ {
1022
+ $root = $this->rootof($opened, 'reading key metadata');
1023
+ $what = 'metadata for key ' . $record['id'];
1024
+
1025
+ try {
1026
+ return mvjsonof(
1027
+ mvunseal(mvhmac($root, MV_LABEL_META), $record['meta'],
1028
+ MV_AAD_META . $record['id'], $what),
1029
+ $what
1030
+ );
1031
+ } catch (SekretoError) {
1032
+ // A record written under a root key this one has replaced. The
1033
+ // key is still in the file and still opens with its own
1034
+ // passphrase, so it is reported rather than hidden - with what
1035
+ // it can do unknown.
1036
+ return null;
1037
+ }
1038
+ }
1039
+
1040
+ private function sealkey(string $root, string $id, string $phrase, int $iters,
1041
+ array $ring, array $meta): array
1042
+ {
1043
+ $salt = mvrandom(MV_SALTLEN);
1044
+
1045
+ return [
1046
+ 'id' => $id,
1047
+ 'salt' => $salt,
1048
+ 'iters' => $iters,
1049
+ 'ring' => mvseal(mvkek($phrase, $salt, $iters), mvjson($ring), MV_AAD_RING . $id),
1050
+ 'meta' => mvseal(mvhmac($root, MV_LABEL_META), mvjson($meta), MV_AAD_META . $id),
1051
+ ];
1052
+ }
1053
+
1054
+ /**
1055
+ * Read, change, and REPLACE - never edit in place.
1056
+ *
1057
+ * THE TEMPORARY IS RANDOM AND EXCLUSIVE. `<vault>.<pid>.tmp` is a name
1058
+ * anyone can predict, so anyone who can write the vault's directory
1059
+ * could put a symlink there and have the next save truncate whatever
1060
+ * it pointed at.
1061
+ */
1062
+ private function save(array $vault): void
1063
+ {
1064
+ $temp = $this->file . '.' . bin2hex(mvrandom(8)) . '.tmp';
1065
+ $handle = mvcreate($temp);
1066
+
1067
+ if (false === $handle) {
1068
+ mvfail('cannot write ' . $this->file);
1069
+ }
1070
+
1071
+ // A SHORT WRITE IS NOT A WRITE; see mvputnew. Here it would be
1072
+ // worse: the rename would put a truncated file over a good vault.
1073
+ $raw = mvwritefile($vault);
1074
+ $ok = strlen($raw) === fwrite($handle, $raw);
1075
+ fclose($handle);
1076
+
1077
+ if ($ok) {
1078
+ $ok = @rename($temp, $this->file);
1079
+ }
1080
+
1081
+ if (!$ok) {
1082
+ // The vault is unchanged either way, and the write error is
1083
+ // what the caller needs to be told about.
1084
+ @unlink($temp);
1085
+ mvfail('cannot write ' . $this->file);
1086
+ }
1087
+ }
1088
+ }
1089
+
1090
+ /**
1091
+ * Open a vault file as one key.
1092
+ *
1093
+ * The handle is lazy. Nothing is read, and no passphrase is stretched,
1094
+ * until a method needs the file.
1095
+ *
1096
+ * @param array<string, mixed> $options
1097
+ */
1098
+ function openvault(array $options): MiniVault
1099
+ {
1100
+ return new MiniVault($options);
1101
+ }
1102
+
1103
+ /**
1104
+ * Make a vault file and return a handle on its master key.
1105
+ *
1106
+ * Refuses a file that is already there: a vault is created once, and
1107
+ * overwriting one discards every secret in it.
1108
+ *
1109
+ * @param array<string, mixed> $options
1110
+ */
1111
+ function createvault(array $options): MiniVault
1112
+ {
1113
+ $file = $options['file'] ?? null;
1114
+ $passphrase = $options['passphrase'] ?? null;
1115
+
1116
+ if (!is_string($file) || '' === $file) {
1117
+ mvfail('a vault needs a file');
1118
+ }
1119
+ if (!is_string($passphrase) || '' === $passphrase) {
1120
+ mvfail('a vault needs a passphrase');
1121
+ }
1122
+ $wantkey = (string) ($options['key'] ?? '');
1123
+ $keyid = mvcheckid('' === $wantkey ? MV_MASTERKEY : $wantkey, 'a vault needs a key id');
1124
+
1125
+ // No existence check first: the check and the write would be two
1126
+ // steps, and `mvputnew` refuses an existing file in ONE.
1127
+ mvputnew($file, mvnew($keyid, $passphrase, (int) ($options['iterations'] ?? MV_ITERATIONS)));
1128
+
1129
+ return new MiniVault($options);
1130
+ }
1131
+
1132
+ // --- the provider ----------------------------------------------------
1133
+
1134
+ /**
1135
+ * Read a vault as one store in a chain.
1136
+ *
1137
+ * The provider is the READ half and nothing more: a chain resolves
1138
+ * secrets, and writing one is a deliberate act with an API of its own.
1139
+ */
1140
+ final class MiniVaultProvider implements Provider
1141
+ {
1142
+ public function __construct(private readonly MiniVault $vault)
1143
+ {
1144
+ }
1145
+
1146
+ public function lookup(string $name): ?string
1147
+ {
1148
+ return $this->vault->get($name);
1149
+ }
1150
+
1151
+ public function describe(): string
1152
+ {
1153
+ return 'minivault:' . $this->vault->file();
1154
+ }
1155
+ }
1156
+
1157
+ function providerof(MiniVault $vault): Provider
1158
+ {
1159
+ return new MiniVaultProvider($vault);
1160
+ }
1161
+
1162
+ /**
1163
+ * A vault provider from options, for a chain built by hand.
1164
+ *
1165
+ * @param array<string, mixed> $options
1166
+ */
1167
+ function minivaultprovider(array $options): Provider
1168
+ {
1169
+ return providerof(openvault($options));
1170
+ }
1171
+
1172
+ /**
1173
+ * The vault options a provider spec describes.
1174
+ *
1175
+ * @param array<string, mixed> $spec
1176
+ * @return array<string, mixed>
1177
+ */
1178
+ function mvoptions(array $spec): array
1179
+ {
1180
+ return [
1181
+ 'file' => $spec['file'] ?? '',
1182
+ 'key' => $spec['vaultkey'] ?? null,
1183
+ 'passphrase' => $spec['passphrase'] ?? '',
1184
+ 'iterations' => $spec['iterations'] ?? null,
1185
+ 'create' => true === ($spec['create'] ?? false),
1186
+ ];
1187
+ }
1188
+
1189
+ /**
1190
+ * The `minivault` provider kind, as a voxgig/plugin definition.
1191
+ *
1192
+ * Written out rather than built by `providerplugin`, because this
1193
+ * definition publishes TWO exports: `provider`, the read half every kind
1194
+ * publishes, and `vault`, the programmatic API.
1195
+ *
1196
+ * @return array<string, mixed>
1197
+ */
1198
+ function minivault(): array
1199
+ {
1200
+ return [
1201
+ 'name' => 'minivault',
1202
+ 'define' => function (Inst $inst): void {
1203
+ $options = mvoptions($inst->options());
1204
+
1205
+ try {
1206
+ // `openvault` refuses bad configuration HERE, so a mistyped
1207
+ // chain fails at construction. Reaching the FILE is not
1208
+ // configuration: the handle is lazy.
1209
+ $vault = openvault($options);
1210
+ } catch (SekretoError $err) {
1211
+ throw new PluginError(ERROR_CODE, $err->getMessage(),
1212
+ ['ref' => $inst->ref, 'cause' => $err->getMessage()]);
1213
+ }
1214
+
1215
+ $inst->export(PROVIDER_EXPORT, providerof($vault));
1216
+ $inst->export(VAULT_EXPORT, $vault);
1217
+ },
1218
+ ];
1219
+ }
1220
+
1221
+ /**
1222
+ * The vault behind a store in a chain, as its programmatic API.
1223
+ *
1224
+ * With no store named, the unqualified alias answers: one vault in the
1225
+ * chain resolves whatever it is called, and two raise rather than picking
1226
+ * one.
1227
+ */
1228
+ function vaultof(object $secrets, ?string $store = null): MiniVault
1229
+ {
1230
+ if (null === $store) {
1231
+ $found = $secrets->host->exports('minivault/' . VAULT_EXPORT);
1232
+ if (null === $found) {
1233
+ mvfail('no minivault store in this chain');
1234
+ }
1235
+
1236
+ return $found;
1237
+ }
1238
+
1239
+ // A NAMED STORE MUST EXIST, and the alias must not stand in for it.
1240
+ // `host.exports` falls back to the alias when the exact ref misses, so
1241
+ // asking for `minivault` in a chain whose only vault is named `app`
1242
+ // used to hand back the `app` vault - and then write to it.
1243
+ $ref = 'minivault' === $store ? 'minivault' : 'minivault$' . $store;
1244
+
1245
+ if (null === $secrets->host->instance($ref)) {
1246
+ mvfail('no minivault store named ' . $store . ' in this chain');
1247
+ }
1248
+
1249
+ return $secrets->host->exports($ref . '/' . VAULT_EXPORT);
1250
+ }