@wavehouse/chtypes 2.0.0-dev.1 → 2.0.0-dev.10

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 (132) hide show
  1. package/CHANGELOG.md +85 -0
  2. package/README.md +5 -1
  3. package/dist/abi2/buildinfo.d.ts +1 -1
  4. package/dist/abi2/buildinfo.js +3 -3
  5. package/dist/abi2/buildinfo.js.map +1 -1
  6. package/dist/abi2/calls.gen.js +1 -1
  7. package/dist/abi2/decls.gen.d.ts +1 -1
  8. package/dist/abi2/decls.gen.d.ts.map +1 -1
  9. package/dist/abi2/decls.gen.js +3 -2
  10. package/dist/abi2/decls.gen.js.map +1 -1
  11. package/dist/abi2/errmap.gen.js +1 -1
  12. package/dist/abi2/errors.d.ts +16 -38
  13. package/dist/abi2/errors.d.ts.map +1 -1
  14. package/dist/abi2/errors.js +16 -42
  15. package/dist/abi2/errors.js.map +1 -1
  16. package/dist/abi2/index.d.ts +2 -2
  17. package/dist/abi2/index.d.ts.map +1 -1
  18. package/dist/abi2/index.js +1 -1
  19. package/dist/abi2/index.js.map +1 -1
  20. package/dist/abi2/libc.gen.d.ts +2 -0
  21. package/dist/abi2/libc.gen.d.ts.map +1 -1
  22. package/dist/abi2/libc.gen.js +11 -1
  23. package/dist/abi2/libc.gen.js.map +1 -1
  24. package/dist/abi2/loader.js +2 -2
  25. package/dist/abi2/loader.js.map +1 -1
  26. package/dist/abi2/vocab.gen.d.ts +41 -0
  27. package/dist/abi2/vocab.gen.d.ts.map +1 -1
  28. package/dist/abi2/vocab.gen.js +65 -1
  29. package/dist/abi2/vocab.gen.js.map +1 -1
  30. package/dist/cli.d.ts +11 -5
  31. package/dist/cli.d.ts.map +1 -1
  32. package/dist/cli.js +130 -20
  33. package/dist/cli.js.map +1 -1
  34. package/dist/documents.d.ts +63 -3
  35. package/dist/documents.d.ts.map +1 -1
  36. package/dist/documents.js +79 -4
  37. package/dist/documents.js.map +1 -1
  38. package/dist/env.d.ts +8 -1
  39. package/dist/env.d.ts.map +1 -1
  40. package/dist/env.js +17 -8
  41. package/dist/env.js.map +1 -1
  42. package/dist/index.d.ts +9 -7
  43. package/dist/index.d.ts.map +1 -1
  44. package/dist/index.js +7 -5
  45. package/dist/index.js.map +1 -1
  46. package/dist/library.d.ts +13 -2
  47. package/dist/library.d.ts.map +1 -1
  48. package/dist/library.js +23 -5
  49. package/dist/library.js.map +1 -1
  50. package/dist/ocifetch/channel.d.ts +84 -0
  51. package/dist/ocifetch/channel.d.ts.map +1 -1
  52. package/dist/ocifetch/channel.js +157 -2
  53. package/dist/ocifetch/channel.js.map +1 -1
  54. package/dist/ocifetch/constants.gen.d.ts +28 -0
  55. package/dist/ocifetch/constants.gen.d.ts.map +1 -1
  56. package/dist/ocifetch/constants.gen.js +30 -1
  57. package/dist/ocifetch/constants.gen.js.map +1 -1
  58. package/dist/ocifetch/dsse.d.ts +5 -1
  59. package/dist/ocifetch/dsse.d.ts.map +1 -1
  60. package/dist/ocifetch/dsse.js +10 -3
  61. package/dist/ocifetch/dsse.js.map +1 -1
  62. package/dist/ocifetch/ensure.d.ts +68 -8
  63. package/dist/ocifetch/ensure.d.ts.map +1 -1
  64. package/dist/ocifetch/ensure.js +305 -66
  65. package/dist/ocifetch/ensure.js.map +1 -1
  66. package/dist/ocifetch/errors.d.ts +101 -25
  67. package/dist/ocifetch/errors.d.ts.map +1 -1
  68. package/dist/ocifetch/errors.js +74 -36
  69. package/dist/ocifetch/errors.js.map +1 -1
  70. package/dist/ocifetch/hold.d.ts +66 -0
  71. package/dist/ocifetch/hold.d.ts.map +1 -0
  72. package/dist/ocifetch/hold.js +150 -0
  73. package/dist/ocifetch/hold.js.map +1 -0
  74. package/dist/ocifetch/http.d.ts +10 -2
  75. package/dist/ocifetch/http.d.ts.map +1 -1
  76. package/dist/ocifetch/http.js +31 -12
  77. package/dist/ocifetch/http.js.map +1 -1
  78. package/dist/ocifetch/index.d.ts +10 -5
  79. package/dist/ocifetch/index.d.ts.map +1 -1
  80. package/dist/ocifetch/index.js +8 -3
  81. package/dist/ocifetch/index.js.map +1 -1
  82. package/dist/ocifetch/localverify.d.ts +3 -1
  83. package/dist/ocifetch/localverify.d.ts.map +1 -1
  84. package/dist/ocifetch/localverify.js +6 -1
  85. package/dist/ocifetch/localverify.js.map +1 -1
  86. package/dist/ocifetch/lock.d.ts +2 -1
  87. package/dist/ocifetch/lock.d.ts.map +1 -1
  88. package/dist/ocifetch/lock.js +7 -5
  89. package/dist/ocifetch/lock.js.map +1 -1
  90. package/dist/ocifetch/oci.d.ts +45 -3
  91. package/dist/ocifetch/oci.d.ts.map +1 -1
  92. package/dist/ocifetch/oci.js +125 -58
  93. package/dist/ocifetch/oci.js.map +1 -1
  94. package/dist/ocifetch/prune.d.ts +48 -0
  95. package/dist/ocifetch/prune.d.ts.map +1 -0
  96. package/dist/ocifetch/prune.js +383 -0
  97. package/dist/ocifetch/prune.js.map +1 -0
  98. package/dist/ocifetch/referrers.d.ts +24 -0
  99. package/dist/ocifetch/referrers.d.ts.map +1 -1
  100. package/dist/ocifetch/referrers.js +92 -5
  101. package/dist/ocifetch/referrers.js.map +1 -1
  102. package/dist/ocifetch/resolve.d.ts +37 -0
  103. package/dist/ocifetch/resolve.d.ts.map +1 -0
  104. package/dist/ocifetch/resolve.js +90 -0
  105. package/dist/ocifetch/resolve.js.map +1 -0
  106. package/dist/ocifetch/retired.d.ts +61 -0
  107. package/dist/ocifetch/retired.d.ts.map +1 -0
  108. package/dist/ocifetch/retired.js +236 -0
  109. package/dist/ocifetch/retired.js.map +1 -0
  110. package/dist/ocifetch/revocation.d.ts +151 -0
  111. package/dist/ocifetch/revocation.d.ts.map +1 -0
  112. package/dist/ocifetch/revocation.js +481 -0
  113. package/dist/ocifetch/revocation.js.map +1 -0
  114. package/dist/ocifetch/types.d.ts +18 -2
  115. package/dist/ocifetch/types.d.ts.map +1 -1
  116. package/dist/ocifetch/types.js.map +1 -1
  117. package/dist/registry.d.ts +80 -3
  118. package/dist/registry.d.ts.map +1 -1
  119. package/dist/registry.js +168 -9
  120. package/dist/registry.js.map +1 -1
  121. package/dist/schema.d.ts +10 -0
  122. package/dist/schema.d.ts.map +1 -1
  123. package/dist/schema.js.map +1 -1
  124. package/dist/server.d.ts +27 -0
  125. package/dist/server.d.ts.map +1 -0
  126. package/dist/server.js +35 -0
  127. package/dist/server.js.map +1 -0
  128. package/dist/settings.d.ts +21 -0
  129. package/dist/settings.d.ts.map +1 -1
  130. package/dist/settings.js +35 -0
  131. package/dist/settings.js.map +1 -1
  132. package/package.json +1 -1
@@ -3,9 +3,20 @@
3
3
  * `listInstalled`, `verifyInstalled`, `fetchSigned`. This is the only file
4
4
  * that wires resolve (`oci.ts`), trust (`dsse.ts`), bytes (`unpack.ts`), the
5
5
  * cache (`layout.ts`) and the lock (`lock.ts`) together; nothing outside
6
- * `index.ts` calls into those modules directly.
6
+ * `index.ts` calls into those modules directly. `resolve.ts` (`chtypes
7
+ * resolve`) takes the same resolve and trust steps, through
8
+ * `verifyManifestTrust`, and `prune.ts` (`chtypes prune`) reads and removes
9
+ * cache entries under the in-use hold (`hold.ts`).
7
10
  */
8
- import type { FetchV1Options, PlatformKey, Resolved, TrustedKey, VerifyResult } from './types.js';
11
+ import { type TrustResult } from './dsse.js';
12
+ import { FetchV1Error } from './errors.js';
13
+ import { type RequestOptions } from './http.js';
14
+ import { type ReferrerListing } from './referrers.js';
15
+ import { type RevocationContext } from './revocation.js';
16
+ import { type ManifestInfo } from './oci.js';
17
+ import type { ArtifactPredicate, FetchV1Options, PlatformKey, Resolved, TrustedKey, VerifyResult } from './types.js';
18
+ /** The bases: the caller's or `CHTYPES_ARTIFACTS_URL` when the active contract honors them, else the contract's own (the staging dev channel alone, rule r6). */
19
+ export declare function resolveBases(options: FetchV1Options): readonly string[];
9
20
  /**
10
21
  * The bases, the trust list and the unsigned decision a call with `options`
11
22
  * reads under the active contract: exactly what `ensure`, `fetchSigned` and
@@ -17,6 +28,27 @@ export declare function effectiveFetchOptions(options: FetchV1Options): {
17
28
  readonly trustedKeys: readonly TrustedKey[];
18
29
  readonly allowUnsigned: boolean;
19
30
  };
31
+ /** The request options every fetch over `bases` sends: the clock, and the token for the configured base hosts only. */
32
+ export declare function requestOptionsFor(options: FetchV1Options, bases: readonly string[]): Omit<RequestOptions, 'maxBytes'>;
33
+ /**
34
+ * What one revocation check reads from `options` (`revocation.ts`). The override
35
+ * is per call and forensic: it never lets a lock or an update pin a revoked build.
36
+ */
37
+ export declare function revocationContext(options: FetchV1Options): RevocationContext;
38
+ /** What `checkInstalled` answers: the warnings an open prints, and the refusal, if any. */
39
+ export interface InstalledCheck {
40
+ readonly warnings: readonly string[];
41
+ /** `ArtifactRevokedError`, or in strict mode the transport's error; `undefined` when the build may be used. */
42
+ readonly error: FetchV1Error | undefined;
43
+ }
44
+ /**
45
+ * The installed-build revocation check a registry makes after `resolveInstalled`
46
+ * answers and before it loads the build (guide §9, `check_installed`): the stored
47
+ * record, then, unless offline, at most one check per build per process. The
48
+ * warnings the open prints are returned even when the build is refused, as Go
49
+ * returns them beside the error. Under the v1 contract it does nothing.
50
+ */
51
+ export declare function checkInstalled(res: Resolved, options?: FetchV1Options): Promise<InstalledCheck>;
20
52
  /**
21
53
  * Never touches the network (guide §9). The source of truth is the
22
54
  * immutable `unpacked/sha256/*\/verified.json` records (guide §6) — never
@@ -29,6 +61,8 @@ export declare function effectiveFetchOptions(options: FetchV1Options): {
29
61
  * `clickhouse_version` lies within `request`.
30
62
  */
31
63
  export declare function resolveInstalled(request: string, platform: PlatformKey, options?: FetchV1Options): Promise<Resolved | undefined>;
64
+ /** The directories every lookup reads, in order: the cache root, then each system directory (public issue #530). It reads and creates nothing. */
65
+ export declare function searchDirs(options?: FetchV1Options): readonly string[];
32
66
  /**
33
67
  * What a `CHTYPES_ARTIFACT_MISSING` answer from the cache `options` names adds
34
68
  * to its message, each a complete sentence: the 0.x hint when the cache is a
@@ -61,6 +95,31 @@ export declare function verifyInstalled(options?: FetchV1Options): Promise<reado
61
95
  * warning (spec/abi-v2/docs.md, rule r6).
62
96
  */
63
97
  export declare function ensure(request: string, options?: FetchV1Options): Promise<Resolved>;
98
+ /** What `verifyManifestTrust` established for one platform manifest. */
99
+ export interface ManifestTrust {
100
+ /** The verified signature, or `undefined` when the call proceeds unsigned (allow-unsigned). */
101
+ readonly trust: TrustResult | undefined;
102
+ /** The signed predicate, or under allow-unsigned the config blob's (`unsignedPredicateFallback`). */
103
+ readonly predicate: ArtifactPredicate;
104
+ /** The key id that verified the signature, `''` when unsigned. */
105
+ readonly signedBy: string;
106
+ readonly warnings: readonly string[];
107
+ /** The referrers listing the trust step read, whose revocation candidates an install, a lock and an update check at no extra listing request. */
108
+ readonly listing: ReferrerListing;
109
+ }
110
+ /**
111
+ * The trust step of a fetch for one platform manifest (guide §4), exactly as
112
+ * `ensure` takes it before anything is downloaded: a signature referrer of the
113
+ * manifest verified under the trust list, its statement checked against the
114
+ * manifest's layer, the platform and `request`; no signature that verifies is
115
+ * `ArtifactUntrustedError` unless allow-unsigned is honored, when the config
116
+ * blob's metadata stands in with a warning. A signed build is then checked by
117
+ * the dev channel's ahead-of-registry rule (public issue #578: the alias for
118
+ * its own fingerprint answered 404 on every base, and the tag's build is
119
+ * signed for another), refused from the signed statement, before any layer is
120
+ * requested. `chtypes resolve` takes the same step for every platform.
121
+ */
122
+ export declare function verifyManifestTrust(repositoryRoot: string, manifest: ManifestInfo, aliasAbsent: boolean, platform: PlatformKey, request: string, options: FetchV1Options, baseReqOptions: Omit<RequestOptions, 'maxBytes'>): Promise<ManifestTrust>;
64
123
  export interface FetchSignedResult {
65
124
  readonly path: string;
66
125
  readonly statement: unknown;
@@ -88,12 +147,13 @@ export interface FetchSignedResult {
88
147
  */
89
148
  export declare function fetchSigned(callerRepository: string, ref: string, predicateType: string, options?: FetchV1Options): Promise<FetchSignedResult>;
90
149
  /**
91
- * The version spellings a repository publishes: `GET tags/list` from the first
92
- * base that has the repository, every tag that is not a version spelling
93
- * (`SPELLING_REGEX`: the `sha256-<hex>` referrers fallback tags, symbolic tags)
94
- * dropped, the rest in ascending numeric order. A tag names a version, not a
95
- * platform: whether a platform is offered is that tag's index, which only a
96
- * resolve reads. A next page is followed through the `Link` header.
150
+ * The lines a repository publishes: `GET tags/list` from the first base that
151
+ * has the repository, every tag that is not a two-part line (three- and
152
+ * four-part versions, aliases, the `sha256-<hex>` referrers fallback tags,
153
+ * symbolic tags) dropped, the rest in ascending numeric order. A tag names a
154
+ * line, not a platform: whether a platform is offered is that tag's index,
155
+ * which only a resolve reads. A next page is followed through the `Link`
156
+ * header.
97
157
  */
98
158
  export declare function listTags(options?: FetchV1Options): Promise<readonly string[]>;
99
159
  //# sourceMappingURL=ensure.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ensure.d.ts","sourceRoot":"","sources":["../../src/ocifetch/ensure.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAyDH,OAAO,KAAK,EAAqB,cAAc,EAAE,WAAW,EAAE,QAAQ,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAyBrH;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,cAAc,GAAG;IAC9D,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,QAAQ,CAAC,WAAW,EAAE,SAAS,UAAU,EAAE,CAAC;IAC5C,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;CACjC,CAEA;AA2DD;;;;;;;;;;GAUG;AACH,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,WAAW,EACrB,OAAO,GAAE,cAAmB,GAC3B,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC,CA6B/B;AAkBD;;;;;GAKG;AACH,wBAAsB,YAAY,CAAC,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,SAAS,MAAM,EAAE,CAAC,CAO3F;AAED,uLAAuL;AACvL,wBAAsB,UAAU,CAAC,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,SAAS,MAAM,EAAE,CAAC,CAKzF;AAED,kEAAkE;AAClE,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAE3E;AAoCD;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAG1E;AA0DD,wBAAsB,aAAa,CAAC,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,SAAS,QAAQ,EAAE,CAAC,CAW9F;AAID,mGAAmG;AACnG,wBAAsB,eAAe,CAAC,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,SAAS,YAAY,EAAE,CAAC,CAgBpG;AAID;;;;;;;GAOG;AACH,wBAAsB,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,QAAQ,CAAC,CAU7F;AAoaD,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE;QAAE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CACzE;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,WAAW,CAC/B,gBAAgB,EAAE,MAAM,EACxB,GAAG,EAAE,MAAM,EACX,aAAa,EAAE,MAAM,EACrB,OAAO,GAAE,cAAmB,GAC3B,OAAO,CAAC,iBAAiB,CAAC,CAiC5B;AA0ID;;;;;;;GAOG;AACH,wBAAsB,QAAQ,CAAC,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,SAAS,MAAM,EAAE,CAAC,CA4CvF"}
1
+ {"version":3,"file":"ensure.d.ts","sourceRoot":"","sources":["../../src/ocifetch/ensure.ts"],"names":[],"mappings":"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"}