dsh-completion-guard 0.8.0 → 0.8.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +19 -1
- package/CHANGELOG.zh-CN.md +18 -0
- package/README.md +17 -12
- package/README.zh-CN.md +17 -12
- package/bin/dsh-completion-guard-host-lock.mjs +103 -7
- package/dist/domain/index.d.ts +2 -2
- package/dist/domain/index.js +2 -2
- package/dist/{domain-D0zTh3O_.js → domain-B-2fya9P.js} +22039 -13785
- package/dist/{index-DMr57AgL.d.ts → index-DqvBEsNc.d.ts} +345 -29
- package/dist/index.d.ts +23 -2
- package/dist/index.js +198 -80
- package/docs/COMPATIBILITY.md +65 -10
- package/docs/DEVELOPMENT_PLAN_DSH_0_2_0_RC2_DESKTOP.md +85 -0
- package/docs/HISTORICAL_INCIDENT_COVERAGE.md +148 -0
- package/docs/HOST_LOCK_UPGRADE.md +72 -22
- package/docs/LOCAL_ACCEPTANCE.md +12 -2
- package/docs/RELEASE_NOTES_0_8_2.md +21 -0
- package/docs/THIRD_PARTY_LICENSES.md +27 -0
- package/manifests/rc020-rc1-byte-audit.json +944 -0
- package/manifests/rc020-rc2-byte-audit.json +948 -0
- package/manifests/supported-host.v1.json +93 -93
- package/package.json +39 -38
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { Stats } from "node:fs";
|
|
2
|
+
|
|
1
3
|
//#region src/domain/canonicalize.d.ts
|
|
2
4
|
declare function normalizeClause(text: string): string;
|
|
3
5
|
/**
|
|
@@ -1727,11 +1729,26 @@ declare function authorityCaptureCounts(blocks: readonly AuthorityBlock[]): Reco
|
|
|
1727
1729
|
declare function currentContractDigest(projection: GuardProjection): string;
|
|
1728
1730
|
//#endregion
|
|
1729
1731
|
//#region src/domain/host-version.d.ts
|
|
1730
|
-
/**
|
|
1731
|
-
|
|
1732
|
-
|
|
1733
|
-
|
|
1732
|
+
/** Version admission floor. Since 0.8.2 the public DSH support range is
|
|
1733
|
+
* `>=0.2.0-rc.2` with NO implied upper bound: every host version at or above
|
|
1734
|
+
* this floor (including later RCs on any tuple, stable and future releases)
|
|
1735
|
+
* passes VERSION ADMISSION. The floor only rises when a future Guard release
|
|
1736
|
+
* actively adopts a newer DSH; the runtime never raises it from a remote
|
|
1737
|
+
* `latest`. Ordering is strict SemVer with prerelease comparison and build
|
|
1738
|
+
* metadata ignored. Version admission is one gate of several — it never
|
|
1739
|
+
* claims native validation of a not-yet-tested host, and the graph/byte/
|
|
1740
|
+
* contract audits below still run on every admission. */
|
|
1741
|
+
declare const MIN_SUPPORTED_HOST_VERSION = "0.2.0-rc.2";
|
|
1734
1742
|
declare const SUPPORTED_HOST_RANGE: string;
|
|
1743
|
+
/** Versions with recorded first-hand host evidence. This is an EVIDENCE
|
|
1744
|
+
* ledger, NOT an admission whitelist: a missing row never refuses a
|
|
1745
|
+
* version-above-floor host. rc.1 keeps its historical row after the floor
|
|
1746
|
+
* moved to rc.2; the row records past evidence, not current admission. */
|
|
1747
|
+
declare const HOST_VALIDATED_VERSIONS: readonly string[];
|
|
1748
|
+
/** Historical alias retained for evidence-list readers; the admission rule is
|
|
1749
|
+
* the floor above, never this list. */
|
|
1750
|
+
declare const SUPPORTED_HOST_VERSIONS: readonly string[];
|
|
1751
|
+
declare const LATEST_TESTED_HOST_VERSION: string;
|
|
1735
1752
|
interface ParsedHostVersion {
|
|
1736
1753
|
major: number;
|
|
1737
1754
|
minor: number;
|
|
@@ -1746,29 +1763,40 @@ declare function parseHostVersion(value: string): ParsedHostVersion | undefined;
|
|
|
1746
1763
|
* unparseable host version fails closed rather than sorting as "newer".
|
|
1747
1764
|
*/
|
|
1748
1765
|
declare function compareHostVersions(a: string, b: string): number | undefined;
|
|
1749
|
-
type HostVersionStatus = "supported" | "below_minimum" | "unparseable"
|
|
1766
|
+
type HostVersionStatus = "supported" | "below_minimum" | "unparseable";
|
|
1750
1767
|
interface HostVersionDecision {
|
|
1751
1768
|
status: HostVersionStatus;
|
|
1752
1769
|
version: string;
|
|
1753
1770
|
minimum: string;
|
|
1754
|
-
reasonCode: "host_version_supported" | "host_version_below_minimum" | "host_version_unparseable"
|
|
1771
|
+
reasonCode: "host_version_supported" | "host_version_below_minimum" | "host_version_unparseable";
|
|
1755
1772
|
}
|
|
1756
1773
|
/** Decide the version-policy half of host support. Never a substitute for the graph lock. */
|
|
1757
1774
|
declare function evaluateMinimumHostVersion(version: string, minimum?: string): HostVersionDecision;
|
|
1758
|
-
/**
|
|
1775
|
+
/** Version admission: at or above the floor by strict SemVer precedence
|
|
1776
|
+
* (prerelease-aware; build metadata ignored). `0.2.0-rc.1` and the whole
|
|
1777
|
+
* `0.1.7.x` line stay below the floor; `0.2.0-rc.2`, `0.2.0`,
|
|
1778
|
+
* later patch/minor RCs and releases all admit. */
|
|
1759
1779
|
declare function satisfiesSupportedHostRange(version: string): boolean;
|
|
1760
1780
|
//#endregion
|
|
1761
1781
|
//#region src/domain/host-lock.d.ts
|
|
1762
1782
|
type HostLockStatus = "supported" | "unsupported" | "unavailable";
|
|
1763
1783
|
type HostPlatform = "posix" | "windows";
|
|
1764
|
-
|
|
1784
|
+
/**
|
|
1785
|
+
* Host profile identity. `headless` and `web` are the explicitly managed CLI
|
|
1786
|
+
* runtime profiles. `desktop` is the official Desktop app's own profile
|
|
1787
|
+
* (name `dsh-profile-desktop`): its graph lives in the signed app bundle and
|
|
1788
|
+
* is evaluated through the dedicated Desktop adapter, never by the Web
|
|
1789
|
+
* bundle/market inference — a Desktop profile bundles the Web app too, so
|
|
1790
|
+
* bundle presence alone misidentifies it.
|
|
1791
|
+
*/
|
|
1792
|
+
type HostProfileKind = "headless" | "web" | "desktop";
|
|
1765
1793
|
/**
|
|
1766
1794
|
* How a cohort's package rows were established. Bound into every host-lock
|
|
1767
1795
|
* digest through the `host_audit_provenance` capability row, so a certificate
|
|
1768
1796
|
* records whether the exact graph it used was loaded on a native host or only
|
|
1769
1797
|
* resolved from the registry.
|
|
1770
1798
|
*/
|
|
1771
|
-
type HostAuditProvenance = "native-audited" | "registry-derived-pending-native-audit";
|
|
1799
|
+
type HostAuditProvenance = "native-audited" | "registry-derived-pending-native-audit" | "graph-derived-rebind-pending-native-audit";
|
|
1772
1800
|
interface HostCohort {
|
|
1773
1801
|
/** Stable cohort identity; bound into every hostLockDigest via `host_cohort`. */
|
|
1774
1802
|
id: string;
|
|
@@ -1793,7 +1821,7 @@ interface HostCohort {
|
|
|
1793
1821
|
capabilities: CapabilityRow[];
|
|
1794
1822
|
}
|
|
1795
1823
|
/** Baseline cohort retained for callers that need a default fixture. */
|
|
1796
|
-
declare const ACTIVE_HOST_COHORT_ID = "dsh-0.
|
|
1824
|
+
declare const ACTIVE_HOST_COHORT_ID = "dsh-0.2.0-rc.2";
|
|
1797
1825
|
declare const ACTIVE_HOST_COHORT_IDS: readonly string[];
|
|
1798
1826
|
/** Core-lock/v1 separates optional market identity from the rc.2 critical
|
|
1799
1827
|
* graph. Historical cohorts live only in test data. Version ordering cannot
|
|
@@ -1802,7 +1830,7 @@ declare const ACTIVE_HOST_COHORT_IDS: readonly string[];
|
|
|
1802
1830
|
*/
|
|
1803
1831
|
declare const HOST_COHORTS: readonly HostCohort[];
|
|
1804
1832
|
/**
|
|
1805
|
-
* Baseline fixture package identities (DSH 0.
|
|
1833
|
+
* Baseline fixture package identities (DSH 0.2.0-rc.2). The cohort
|
|
1806
1834
|
* is an atomic whole-graph contract (CG-DSH-001): any drifted, duplicated,
|
|
1807
1835
|
* unknown-version, unbound, OR MISSING row fails the whole lock closed
|
|
1808
1836
|
* (`host_lock_missing`); no capability inherits independence from a partially
|
|
@@ -1830,11 +1858,14 @@ interface HostCapabilityEvaluation {
|
|
|
1830
1858
|
interface HostLockEvaluation {
|
|
1831
1859
|
status: HostLockStatus;
|
|
1832
1860
|
digest: string;
|
|
1861
|
+
/** Qualified graph descriptor retained by capability consumers. */
|
|
1862
|
+
derivedCohort?: HostCohort;
|
|
1833
1863
|
/** Read-only byte attestation of the active foreground shell renderer and
|
|
1834
1864
|
* its shared terminal decoder. Set only by production active-graph readback;
|
|
1835
1865
|
* the package version/SRI graph alone does not establish renderer behavior. */
|
|
1836
1866
|
auditedForegroundRenderers?: Array<"bash" | "pwsh">;
|
|
1837
1867
|
goalAvailable: boolean;
|
|
1868
|
+
goalQualificationFailure?: "host_contract_goal_qualification_required";
|
|
1838
1869
|
reasonCode?: "host_lock_migration_required" | "host_lock_installed_graph_drift" | "host_lock_missing" | "host_lock_version_mismatch" | "host_lock_version_below_minimum" | "host_lock_version_unparseable" | "host_lock_integrity_mismatch" | "host_lock_unknown_package" | "host_lock_duplicate_package" | "host_lock_goal_graph_incomplete" | "host_lock_goal_capability_mismatch" | "host_lock_cohort_mixed_graph" | "host_lock_cohort_unbound_identity" | "host_lock_cohort_platform_not_audited";
|
|
1839
1870
|
packages: PackageRow[];
|
|
1840
1871
|
capabilities: Record<HostCapabilityId, HostCapabilityEvaluation>;
|
|
@@ -1870,6 +1901,8 @@ interface HostLockContext {
|
|
|
1870
1901
|
* it leaves the version question unanswered rather than assumed supported.
|
|
1871
1902
|
*/
|
|
1872
1903
|
hostVersion?: string;
|
|
1904
|
+
/** Trusted registry expectations, bound separately from version admission. */
|
|
1905
|
+
trustDigest?: string;
|
|
1873
1906
|
}
|
|
1874
1907
|
/**
|
|
1875
1908
|
* The host version a package graph records, for the version-policy decision.
|
|
@@ -1907,6 +1940,10 @@ interface HostCohortSelection {
|
|
|
1907
1940
|
* consistently.
|
|
1908
1941
|
*/
|
|
1909
1942
|
declare function selectHostCohort(rows: readonly PackageRow[], platform?: HostPlatform): HostCohortSelection;
|
|
1943
|
+
/** Evaluate a qualified graph against trusted registry identities. The callback
|
|
1944
|
+
* must authenticate rows against acquired published identities, not local YAML
|
|
1945
|
+
* alone. Production adds the byte/route audit and the adapter qualification. */
|
|
1946
|
+
declare function evaluateGraphDerivedHostLock(rows: readonly PackageRow[], context?: HostLockContext, verifyLockfileSri?: (row: PackageRow) => boolean): HostLockEvaluation;
|
|
1910
1947
|
declare function evaluateHostLock(rows: readonly PackageRow[], context?: HostLockContext): HostLockEvaluation;
|
|
1911
1948
|
interface HostCapabilityRequest {
|
|
1912
1949
|
action: SemanticAction;
|
|
@@ -2356,6 +2393,232 @@ declare function revalidateGitPrestate(resolved: GitPrestateEnvelope, manifest:
|
|
|
2356
2393
|
/** Execute the exact resolved argv only after the mandatory live recheck. */
|
|
2357
2394
|
declare function executeRevalidatedGitEffect(resolved: GitPrestateEnvelope, manifest: GitCommandManifest, target: GitTargetIdentity, currentStateTuple: Readonly<Record<string, string | Uint8Array>>, runner: GitEffectRunner): Promise<GitEffectExecution>;
|
|
2358
2395
|
//#endregion
|
|
2396
|
+
//#region src/domain/host-audit-session.d.ts
|
|
2397
|
+
/**
|
|
2398
|
+
* Memo table for ONE bounded host-lock validation operation.
|
|
2399
|
+
*
|
|
2400
|
+
* A full validation re-reads the same real paths, manifests, search paths and
|
|
2401
|
+
* export targets from several cooperating audits. Resolution results are
|
|
2402
|
+
* reused strictly inside this operation: the table lives and dies with one
|
|
2403
|
+
* audit call, is never shared across entries, and is never a substitute for
|
|
2404
|
+
* revalidation — a later entry always performs its own fresh reads. There are
|
|
2405
|
+
* deliberately no timestamps, mtimes, sizes or cross-call caches here.
|
|
2406
|
+
*
|
|
2407
|
+
* Every byte read funnels through ONE memo (`read:`): the raw file bytes are
|
|
2408
|
+
* read from disk exactly once per path per operation, and JSON parsing and
|
|
2409
|
+
* digesting both consume those shared bytes.
|
|
2410
|
+
*/
|
|
2411
|
+
interface HostAuditSession {
|
|
2412
|
+
/** Memoized `realpathSync`; identical inputs return the identical result. */
|
|
2413
|
+
realpath(path: string): string;
|
|
2414
|
+
/** Memoized `existsSync`, including the negative result. */
|
|
2415
|
+
exists(path: string): boolean;
|
|
2416
|
+
/** Memoized `statSync`. */
|
|
2417
|
+
stat(path: string): Stats;
|
|
2418
|
+
/** Memoized raw file bytes — the single physical-read channel. */
|
|
2419
|
+
readFile(path: string): Buffer;
|
|
2420
|
+
/** Memoized `JSON.parse` of an object file over the shared bytes; parse errors propagate. */
|
|
2421
|
+
readJson(path: string): Record<string, unknown>;
|
|
2422
|
+
/** Memoized SHA-256 over the shared bytes. */
|
|
2423
|
+
fileDigest(path: string): string;
|
|
2424
|
+
/** Memoized directory listing (names + kinds) for audit enumeration. */
|
|
2425
|
+
listDir?(dir: string): Array<{
|
|
2426
|
+
name: string;
|
|
2427
|
+
isFile: boolean;
|
|
2428
|
+
isDirectory: boolean;
|
|
2429
|
+
}>;
|
|
2430
|
+
/** Memoized `createRequire` for one importer path. */
|
|
2431
|
+
requireFor(importer: string): NodeRequire;
|
|
2432
|
+
/** Memoized `require.resolve.paths(name)` for one importer. */
|
|
2433
|
+
resolvePaths(importer: string, name: string): readonly string[];
|
|
2434
|
+
/** Memoized `require.resolve(request)` for one importer. */
|
|
2435
|
+
requireResolve(importer: string, request: string): string;
|
|
2436
|
+
/** Generic operation-scoped memo for derived structures (parsed graphs, indexes). */
|
|
2437
|
+
memo<T>(key: string, compute: () => T): T;
|
|
2438
|
+
}
|
|
2439
|
+
//#endregion
|
|
2440
|
+
//#region src/domain/host-dependency-audit.d.ts
|
|
2441
|
+
interface DependencyAuditGraph {
|
|
2442
|
+
modules: string;
|
|
2443
|
+
records: Record<string, {
|
|
2444
|
+
url?: unknown;
|
|
2445
|
+
dependencies?: unknown;
|
|
2446
|
+
}>;
|
|
2447
|
+
reachable: Set<string>;
|
|
2448
|
+
packages: Map<string, {
|
|
2449
|
+
root: string;
|
|
2450
|
+
manifest: Record<string, unknown>;
|
|
2451
|
+
files: string[];
|
|
2452
|
+
independentLanes?: boolean;
|
|
2453
|
+
}>;
|
|
2454
|
+
}
|
|
2455
|
+
//#endregion
|
|
2456
|
+
//#region src/domain/host-contract-probe.d.ts
|
|
2457
|
+
declare const HOST_CONTRACT_SCHEMA: "guard-host-contract/v2";
|
|
2458
|
+
//#endregion
|
|
2459
|
+
//#region src/domain/host-trust.d.ts
|
|
2460
|
+
interface HostTrustedPackage extends PackageRow {
|
|
2461
|
+
version: string;
|
|
2462
|
+
integrity: string;
|
|
2463
|
+
modules: Record<string, string>;
|
|
2464
|
+
}
|
|
2465
|
+
/** Operator-owned output of registry acquisition, never package self-report. */
|
|
2466
|
+
interface HostRebindTrust {
|
|
2467
|
+
schema: "dsh-host-registry-trust/v1";
|
|
2468
|
+
source: "https://registry.npmjs.org/";
|
|
2469
|
+
qualification: "guard-host-contract/v2";
|
|
2470
|
+
packages: HostTrustedPackage[];
|
|
2471
|
+
probeDependencies?: HostTrustedPackage[];
|
|
2472
|
+
contract: {
|
|
2473
|
+
schema: typeof HOST_CONTRACT_SCHEMA;
|
|
2474
|
+
receiptDigest: string;
|
|
2475
|
+
bindingDigest: string;
|
|
2476
|
+
conditionsDigest: string;
|
|
2477
|
+
};
|
|
2478
|
+
/** Recomputed qualification, not caller-reported compatibility. */
|
|
2479
|
+
unqualifiedOptionalPackages?: string[];
|
|
2480
|
+
}
|
|
2481
|
+
declare class HostTrustError extends Error {
|
|
2482
|
+
readonly code: string;
|
|
2483
|
+
constructor(code: string);
|
|
2484
|
+
}
|
|
2485
|
+
/** Validate generator-issued operator-owned authority. The descriptor cannot
|
|
2486
|
+
* assert compatibility: changed bytes require the independently issued cache
|
|
2487
|
+
* receipt, whose complete byte graph and startup conditions are bound. */
|
|
2488
|
+
declare function qualifyHostTrust(value: unknown, profileRoot?: string): HostRebindTrust;
|
|
2489
|
+
declare function parseHostTrust(text: string, profileRoot?: string): HostRebindTrust;
|
|
2490
|
+
declare function hostTrustDigest(trust: HostRebindTrust): string;
|
|
2491
|
+
/** Closed-world regular-file tar projection. Never extract or execute archives. */
|
|
2492
|
+
declare function registryArchiveFiles(bytes: Buffer, row: PackageRow): Record<string, Buffer>;
|
|
2493
|
+
declare function registryArchiveModules(bytes: Buffer, row: PackageRow): Record<string, string>;
|
|
2494
|
+
/** Fetch exact public registry identity at trusted inspect/rebind time.
|
|
2495
|
+
* Lockfile integrity is compared with HTTPS registry metadata AND archive bytes.
|
|
2496
|
+
* The production origin is fixed; tests can inject a fetch transport. */
|
|
2497
|
+
interface HostTrustAcquisitionOptions {
|
|
2498
|
+
profileRoot: string;
|
|
2499
|
+
dependencyIdentity?: (name: string, importer: string) => PackageRow;
|
|
2500
|
+
}
|
|
2501
|
+
declare function acquireHostTrust(rows: readonly PackageRow[], fetcher?: typeof fetch, options?: HostTrustAcquisitionOptions): Promise<HostRebindTrust>;
|
|
2502
|
+
//#endregion
|
|
2503
|
+
//#region src/domain/host-desktop.d.ts
|
|
2504
|
+
/**
|
|
2505
|
+
* Official Desktop adapter (CG-RC2-002).
|
|
2506
|
+
*
|
|
2507
|
+
* The Desktop app is the only authority for the `desktop` profile: its
|
|
2508
|
+
* `package.json` is named `dsh-profile-desktop`, its dependency graph lives
|
|
2509
|
+
* inside the signed `app.asar` of the installation, and there is no pnpm
|
|
2510
|
+
* package map or lockfile to read. This adapter therefore reads the official
|
|
2511
|
+
* graph IN PLACE from the asar container — it never unpacks the bundle and
|
|
2512
|
+
* never fabricates a map. The identities the manifest declares are qualified
|
|
2513
|
+
* through the same registry acquisition and host-contract probe as a CLI
|
|
2514
|
+
* graph rebind (`acquireDesktopHostTrust`), and the actually installed bytes
|
|
2515
|
+
* are verified file-by-file from the asar against that qualification
|
|
2516
|
+
* (`auditDesktopInstalledImplementation`). Every mismatch fails closed.
|
|
2517
|
+
*
|
|
2518
|
+
* The asar container format is a flat archive: a JSON header (with per-file
|
|
2519
|
+
* offsets) followed by the file bytes. Reading a file means header lookup +
|
|
2520
|
+
* one bounded positioned read, so an audited file set costs no more I/O than
|
|
2521
|
+
* reading the same files from a directory, and a tampered byte changes its
|
|
2522
|
+
* digest exactly as on disk.
|
|
2523
|
+
*/
|
|
2524
|
+
declare const DESKTOP_PROFILE_PACKAGE_NAME = "dsh-profile-desktop";
|
|
2525
|
+
declare const DESKTOP_RUNTIME_PACKAGE_NAME = "@deepseek-ai/dsh-desktop-runtime";
|
|
2526
|
+
interface AsarNode {
|
|
2527
|
+
files?: Record<string, AsarNode>;
|
|
2528
|
+
size?: number;
|
|
2529
|
+
offset?: string;
|
|
2530
|
+
unpacked?: boolean;
|
|
2531
|
+
integrity?: unknown;
|
|
2532
|
+
}
|
|
2533
|
+
interface AsarIndex {
|
|
2534
|
+
dataOffset: number;
|
|
2535
|
+
root: AsarNode;
|
|
2536
|
+
headerSha256: string;
|
|
2537
|
+
fileCount: number;
|
|
2538
|
+
}
|
|
2539
|
+
/** Read the asar header (the JSON index) without extracting any payload. */
|
|
2540
|
+
declare function readAsarIndex(archivePath: string): AsarIndex;
|
|
2541
|
+
/**
|
|
2542
|
+
* Read one file's exact bytes from the asar in place. Unpacked entries are
|
|
2543
|
+
* read from the sibling `app.asar.unpacked` tree, which is where the app
|
|
2544
|
+
* itself loads them; a path that escapes that tree fails closed.
|
|
2545
|
+
*/
|
|
2546
|
+
declare function readAsarFile(archivePath: string, index: AsarIndex, entryPath: string): Buffer;
|
|
2547
|
+
interface DesktopAppRuntime {
|
|
2548
|
+
/** Absolute path of the app bundle archive the rows were read from. */
|
|
2549
|
+
asarRealpath: string;
|
|
2550
|
+
headerSha256: string;
|
|
2551
|
+
manifestSha256: string;
|
|
2552
|
+
metadataSha256: string;
|
|
2553
|
+
/** DSH host version the official runtime manifest pins for `@deepseek-ai/dsh`. */
|
|
2554
|
+
hostVersion: string;
|
|
2555
|
+
/** Version of the `@deepseek-ai/dsh-desktop-runtime` private manifest. */
|
|
2556
|
+
runtimeVersion: string;
|
|
2557
|
+
metadata: {
|
|
2558
|
+
desktopVersion: string;
|
|
2559
|
+
platform: string;
|
|
2560
|
+
arch: string;
|
|
2561
|
+
node: string;
|
|
2562
|
+
pnpm: string;
|
|
2563
|
+
/** Count of the official per-file digest table entries bound by the metadata hash. */
|
|
2564
|
+
fileTableEntries: number;
|
|
2565
|
+
};
|
|
2566
|
+
/** Version-only rows for the critical names the official manifest declares. */
|
|
2567
|
+
rows: PackageRow[];
|
|
2568
|
+
}
|
|
2569
|
+
/**
|
|
2570
|
+
* Read the official Desktop runtime graph from the app bundle. `appAsarPath`
|
|
2571
|
+
* is the absolute path of `app.asar` (a file, not a directory). The runtime
|
|
2572
|
+
* identity binds: the asar header itself, the `@deepseek-ai/dsh-desktop-runtime`
|
|
2573
|
+
* manifest, the `desktop-runtime.json` metadata block, and the official CLI
|
|
2574
|
+
* carrier entry the app installs.
|
|
2575
|
+
*/
|
|
2576
|
+
declare function readDesktopAppRuntime(appAsarPath: string): DesktopAppRuntime;
|
|
2577
|
+
interface DesktopTargetGraph {
|
|
2578
|
+
packages: PackageRow[];
|
|
2579
|
+
profileGraph: {
|
|
2580
|
+
state: "dependency_free_desktop";
|
|
2581
|
+
manifestSha256: string;
|
|
2582
|
+
bundles: string[];
|
|
2583
|
+
};
|
|
2584
|
+
runtime: DesktopAppRuntime;
|
|
2585
|
+
}
|
|
2586
|
+
/** Importer state selects the active audit; its presence grants no trust. */
|
|
2587
|
+
declare function hasDesktopImporterState(profileRoot: string): boolean;
|
|
2588
|
+
/**
|
|
2589
|
+
* Pre-install inspection of a Desktop target: the profile must be the
|
|
2590
|
+
* Desktop-owned dependency-free profile, and the runtime half must come from
|
|
2591
|
+
* the official app bundle. Structural discovery grants no authority — the
|
|
2592
|
+
* caller must still qualify and byte-audit before any install decision.
|
|
2593
|
+
*/
|
|
2594
|
+
declare function readDesktopTargetGraph(appAsarPath: string, profileRoot: string): DesktopTargetGraph;
|
|
2595
|
+
/**
|
|
2596
|
+
* Verify the actually installed app bytes against the acquired qualification.
|
|
2597
|
+
* Each critical package's closed module inventory (every `.cm?js|json` file
|
|
2598
|
+
* under its asar root plus its manifest) is digested from the asar in place
|
|
2599
|
+
* and compared with the trust rows; any extra, missing, or changed file fails
|
|
2600
|
+
* closed. A critical package that also appears NESTED anywhere in the app
|
|
2601
|
+
* graph is an ambiguity no adapter resolves, so its presence fails closed
|
|
2602
|
+
* before any digest is computed.
|
|
2603
|
+
*/
|
|
2604
|
+
declare function auditDesktopInstalledImplementation(appAsarPath: string, expectations: readonly AuditedPackageExpectation[]): boolean;
|
|
2605
|
+
/** Persist the app-bundle identity next to the profile contract receipts so a
|
|
2606
|
+
* native annex can bind its readback to the exact inspected bundle. */
|
|
2607
|
+
declare function writeDesktopRuntimeReceipt(profileRoot: string, runtime: DesktopAppRuntime): string;
|
|
2608
|
+
declare const DESKTOP_IDENTITY_FACTS: Readonly<{
|
|
2609
|
+
profilePackageName: typeof DESKTOP_PROFILE_PACKAGE_NAME;
|
|
2610
|
+
runtimePackageName: typeof DESKTOP_RUNTIME_PACKAGE_NAME;
|
|
2611
|
+
carrierEntry: string;
|
|
2612
|
+
}>;
|
|
2613
|
+
/**
|
|
2614
|
+
* Resolve one dependency's exact installed identity from the official app
|
|
2615
|
+
* graph by its top-level manifest. Used by the host-contract probe's
|
|
2616
|
+
* dependency acquisition; a name with no top-level manifest is unbound (the
|
|
2617
|
+
* installed-byte audit separately refuses nested critical duplicates, so a
|
|
2618
|
+
* nested-only dependency can never be silently resolved here).
|
|
2619
|
+
*/
|
|
2620
|
+
declare function readDesktopDependency(appAsarPath: string, name: string): PackageRow;
|
|
2621
|
+
//#endregion
|
|
2359
2622
|
//#region src/domain/host-resolver.d.ts
|
|
2360
2623
|
declare class HostProfileError extends Error {
|
|
2361
2624
|
readonly code: string;
|
|
@@ -2386,7 +2649,7 @@ declare function resolveInstalledHostLock(moduleUrl?: string): HostLockEvaluatio
|
|
|
2386
2649
|
* two reachable peer variants of a critical package remain a duplicate and
|
|
2387
2650
|
* are returned twice so evaluateHostLock can fail closed with a bounded code.
|
|
2388
2651
|
*/
|
|
2389
|
-
declare function packageRowsFromActiveGraph(packageMapText: string, lockText: string, nodeModulesRoot?: string): PackageRow[];
|
|
2652
|
+
declare function packageRowsFromActiveGraph(packageMapText: string, lockText: string, nodeModulesRoot?: string, providedSession?: HostAuditSession): PackageRow[];
|
|
2390
2653
|
interface ActiveProfileHostLock {
|
|
2391
2654
|
evaluation: HostLockEvaluation;
|
|
2392
2655
|
runtimeRoot: string;
|
|
@@ -2394,32 +2657,52 @@ interface ActiveProfileHostLock {
|
|
|
2394
2657
|
pluginVersion: string;
|
|
2395
2658
|
platform: HostPlatform;
|
|
2396
2659
|
profileKind: HostProfileKind;
|
|
2660
|
+
trust?: HostRebindTrust;
|
|
2397
2661
|
}
|
|
2398
2662
|
/** Read exact reachable critical rows without requiring Guard installation.
|
|
2399
2663
|
* Used by target preflight before a legacy profile can be migrated.
|
|
2400
2664
|
*/
|
|
2401
|
-
declare function readActiveHostGraph(runtimeRoot: string, profileRoot: string): PackageRow[];
|
|
2665
|
+
declare function readActiveHostGraph(runtimeRoot: string, profileRoot: string, providedSession?: HostAuditSession): PackageRow[];
|
|
2666
|
+
/** Version/identity evaluation of operator-owned registry expectations. */
|
|
2667
|
+
declare function evaluateConfiguredHostLock(rows: readonly PackageRow[], context: HostLockContext, trustText?: string, profileRoot?: string): HostLockEvaluation;
|
|
2668
|
+
/** Complete production composition; no graph-only result grants authority. */
|
|
2669
|
+
declare function evaluateActiveHostLock(runtime: string, profile: string, context: HostLockContext, session?: HostAuditSession, trustText?: string): HostLockEvaluation;
|
|
2670
|
+
/** Trusted acquisition only; consumers never use local SRI as provenance. */
|
|
2671
|
+
declare function prepareActiveHostTrust(runtime: string, profile: string, fetcher?: typeof fetch): Promise<HostRebindTrust>;
|
|
2402
2672
|
/** Verify published executable bytes at the reachable runtime/profile roots.
|
|
2403
2673
|
* Registry SRI and installed manifests alone cannot authenticate loaded code.
|
|
2404
2674
|
* Missing, duplicate, escaped or modified modules never pass this audit.
|
|
2675
|
+
*
|
|
2676
|
+
* All filesystem resolution within one call is memoized through a single
|
|
2677
|
+
* {@link HostAuditSession}; callers may thread one in to share the parsed
|
|
2678
|
+
* graphs and digests with the other audits of the same validation operation.
|
|
2405
2679
|
*/
|
|
2406
|
-
|
|
2407
|
-
|
|
2680
|
+
interface AuditedPackageExpectation {
|
|
2681
|
+
name: string;
|
|
2682
|
+
version?: string;
|
|
2683
|
+
/** Required published per-file digests; absence never authenticates bytes. */
|
|
2684
|
+
modules?: Record<string, string>;
|
|
2685
|
+
}
|
|
2686
|
+
/** Byte and dual-lane route audit over both graphs. Expectations are either
|
|
2687
|
+
* the published baseline or operator-owned, registry-acquired qualified module
|
|
2688
|
+
* digests. A missing digest set never authenticates unknown implementation. */
|
|
2689
|
+
declare function auditedHostImplementation(runtimeRoot: string, profileRoot: string, providedSession?: HostAuditSession, expectations?: readonly AuditedPackageExpectation[], installationGraph?: DependencyAuditGraph, profileInstallationGraph?: DependencyAuditGraph): boolean;
|
|
2690
|
+
declare function activeRendererModule(nodeModulesRoot: string, name: string, providedSession?: HostAuditSession): {
|
|
2408
2691
|
bytes: string;
|
|
2409
2692
|
path: string;
|
|
2410
2693
|
} | undefined;
|
|
2411
2694
|
/** Verify active, reachable producer bytes without reading credentials or
|
|
2412
2695
|
* accepting historical package-map entries. Missing/ambiguous paths fail
|
|
2413
2696
|
* closed for the ordinary markerless-test shortcut. */
|
|
2414
|
-
declare function auditedForegroundRenderers(runtimeRoot: string, profileRoot: string): Array<"bash" | "pwsh">;
|
|
2697
|
+
declare function auditedForegroundRenderers(runtimeRoot: string, profileRoot: string, providedSession?: HostAuditSession): Array<"bash" | "pwsh">;
|
|
2415
2698
|
/** Exact active implementation route for call-time omitted-workdir evidence. */
|
|
2416
|
-
declare function auditedDefaultWorkdirHost(runtimeRoot: string, profileRoot: string, tool: "bash" | "pwsh"): boolean;
|
|
2699
|
+
declare function auditedDefaultWorkdirHost(runtimeRoot: string, profileRoot: string, tool: "bash" | "pwsh", providedSession?: HostAuditSession): boolean;
|
|
2417
2700
|
/**
|
|
2418
2701
|
* The active graph alone does not prove which shell service this Agent uses.
|
|
2419
2702
|
* Match the scoped service's exact constructor to the audited active module,
|
|
2420
2703
|
* rejecting another provider with the same public service interface/name.
|
|
2421
2704
|
*/
|
|
2422
|
-
declare function auditedDefaultWorkdirProvider(runtimeRoot: string, profileRoot: string, tool: "bash" | "pwsh", provider: unknown, policyProvider?: unknown): Promise<boolean>;
|
|
2705
|
+
declare function auditedDefaultWorkdirProvider(runtimeRoot: string, profileRoot: string, tool: "bash" | "pwsh", provider: unknown, policyProvider?: unknown, providedSession?: HostAuditSession): Promise<boolean>;
|
|
2423
2706
|
interface TargetHostGraph {
|
|
2424
2707
|
packages: PackageRow[];
|
|
2425
2708
|
profileGraph: {
|
|
@@ -2428,14 +2711,37 @@ interface TargetHostGraph {
|
|
|
2428
2711
|
bundles?: PackageRow[];
|
|
2429
2712
|
};
|
|
2430
2713
|
}
|
|
2431
|
-
/**
|
|
2432
|
-
*
|
|
2433
|
-
|
|
2434
|
-
|
|
2435
|
-
*/
|
|
2436
|
-
declare function inspectTargetHostGraph(runtimeRoot: string, profileRoot: string): TargetHostGraph;
|
|
2714
|
+
/** The pre-install path consumes the same qualified identities and byte/route
|
|
2715
|
+
* audit as active-profile entries; structural discovery grants no authority. */
|
|
2716
|
+
declare function inspectTargetHostGraph(runtime: string, profile: string, trust?: HostRebindTrust): TargetHostGraph;
|
|
2717
|
+
declare function prepareTargetHostTrust(runtime: string, profile: string, fetcher?: typeof fetch): Promise<HostRebindTrust>;
|
|
2437
2718
|
/** Read and validate the actual runtime graph plus the installed profile plugin. */
|
|
2438
|
-
declare function resolveActiveProfileHostLock(runtimeRoot: string, profileRoot: string, expectedPluginVersion: string): ActiveProfileHostLock;
|
|
2719
|
+
declare function resolveActiveProfileHostLock(runtimeRoot: string, profileRoot: string, expectedPluginVersion: string, providedTrust?: HostRebindTrust): ActiveProfileHostLock;
|
|
2720
|
+
/** Complete Desktop composition: the official app bundle is the runtime half,
|
|
2721
|
+
* the Desktop-managed profile is the profile half. No structural discovery
|
|
2722
|
+
* grants authority — the installed asar bytes are verified against the same
|
|
2723
|
+
* qualification chain a CLI graph rebind uses. */
|
|
2724
|
+
declare function resolveDesktopProfileHostLock(appAsarPath: string, profileRoot: string, expectedPluginVersion: string, providedTrust?: HostRebindTrust): ActiveProfileHostLock;
|
|
2725
|
+
/** Desktop pre-install inspection: the Desktop-owned dependency-free profile
|
|
2726
|
+
* plus the official app bundle, evaluated and byte-audited like any target. */
|
|
2727
|
+
declare function inspectDesktopTargetGraph(appAsarPath: string, profileRoot: string, trust?: HostRebindTrust): {
|
|
2728
|
+
packages: PackageRow[];
|
|
2729
|
+
runtime: DesktopAppRuntime;
|
|
2730
|
+
profileGraph: {
|
|
2731
|
+
state: "dependency_free_desktop";
|
|
2732
|
+
manifestSha256: string;
|
|
2733
|
+
bundles: string[];
|
|
2734
|
+
};
|
|
2735
|
+
};
|
|
2736
|
+
/** Fresh runtime readback for an injected desktop lock: the same evaluation
|
|
2737
|
+
* chain the inject path used, so the digest the runtime compares against its
|
|
2738
|
+
* injected expectation is computed identically. */
|
|
2739
|
+
declare function revalidateDesktopCoreLock(appAsarPath: string, profileRoot: string, expected: HostLockEvaluation, trustText?: string): HostLockEvaluation;
|
|
2740
|
+
/** Registry acquisition for the Desktop graph: the app manifest pins exact
|
|
2741
|
+
* versions; the INTEGRITY comes from the registry metadata for exactly that
|
|
2742
|
+
* name@version, and the archive bytes are verified by the same acquisition
|
|
2743
|
+
* and host-contract probe a CLI rebind uses. */
|
|
2744
|
+
declare function prepareDesktopHostTrust(appAsarPath: string, profileRoot: string, fetcher?: typeof fetch): Promise<HostRebindTrust>;
|
|
2439
2745
|
/** Atomically inject a repeatable managed patch into the selected profile only. */
|
|
2440
2746
|
declare function injectActiveProfileHostLock(input: ActiveProfileHostLock): string;
|
|
2441
2747
|
/** Extract the bounded host tuple from DSH's composed YAML dump. */
|
|
@@ -3029,9 +3335,19 @@ declare function projectCoreV2(snapshot: Row): Row;
|
|
|
3029
3335
|
//#region src/core-v2/session.d.ts
|
|
3030
3336
|
declare function projectSessionCoreV2(events: DerivedEnvelope[], projection: GuardProjection, displayOrigins?: NonNullable<GuardProjection["coreV2RequirementOrigins"]>): Record<string, unknown> | undefined;
|
|
3031
3337
|
//#endregion
|
|
3032
|
-
//#region src/domain/
|
|
3338
|
+
//#region src/domain/rc020-rc1-host.d.ts
|
|
3339
|
+
/** One source for verified registry identities and published executable bytes.
|
|
3340
|
+
* Bound to the published dsh-v0.2.0-rc.1 tarballs (upstream
|
|
3341
|
+
* 4878cdabd87d4041bdaff61d04c966883b9fd07a). Native platform acceptance
|
|
3342
|
+
* remains a separate, currently pending fact. */
|
|
3343
|
+
declare const RC020_RC1_HOST_PACKAGES: PackageRow[];
|
|
3344
|
+
//#endregion
|
|
3345
|
+
//#region src/domain/rc020-rc2-host.d.ts
|
|
3033
3346
|
/** One source for verified registry identities and published executable bytes.
|
|
3034
|
-
*
|
|
3035
|
-
|
|
3347
|
+
* Bound to the published dsh-v0.2.0-rc.2 tarballs (upstream
|
|
3348
|
+
* 639ed015397290b3745d163aafe02ffee4aa3f84). Native platform acceptance
|
|
3349
|
+
* remains a separate, currently pending fact. The rc.1 rows remain available
|
|
3350
|
+
* in `rc020-rc1-host.ts` as historical evidence. */
|
|
3351
|
+
declare const RC020_RC2_HOST_PACKAGES: PackageRow[];
|
|
3036
3352
|
//#endregion
|
|
3037
|
-
export { PROOF_MANIFEST_DOMAIN_V2 as $, proposeRebindV042 as $a, AssetObligation as $i, isDeterministicCheck as $n, legacyQuestionReadingIsInformational as $o, evaluateToolSurfaceCapability as $r, TargetHostGraph as $t, V4SessionLike as A, SourceSpan as Aa, certifyCheckpoint as Ai, commitTreeSnapshotDigest as An, QualificationStatus as Ao, ExecutableIdentity as Ar, isStatefulAction as As, validateProofManifestV2 as At, V6_ORDINARY_COMPLETION_RULE_COMPACT as B, createProjection as Ba, isInformationalMessage as Bi, ShellParseStatus as Bn, hasQuestionScope as Bo, HostCohortSelection as Br, normalizeClause as Bs, validateManifest as Bt, observeAssistantOutcome as C, GuardOperation as Ca, CONFIRM_LINE_PATTERN as Ci, GitEffectExecution as Cn, DirectiveClass as Co, ACTIVE_HOST_COHORT_ID as Cr, STOP_PROTOCOL_VERSION as Cs, proofOperationMatches as Ct, SESSION_API_UNSUPPORTED as D, NeedsReviewFact as Da, CheckpointResult as Di, GitTargetIdentity as Dn, InterpretOptions as Do, BASE_HOST_PACKAGES as Dr, StatefulAction as Ds, sessionQuery as Dt, v6TestPredicate as E, MessageCoverage as Ea, parseConfirmationMessage as Ei, GitPrestateEnvelope as En, GRANTED_QUALIFICATION as Eo, AuditedExecutable as Er, SemanticAction as Es, scopeCoverageDigest as Et, DEFAULT_RECOVERY_CHAR_BUDGET as F, TargetTuple as Fa, classifyClause as Fi, revalidateGitPrestate as Fn, clauseIsGoverned as Fo, HostAuditProvenance as Fr, semanticActionFromText as Fs, isVerifyingCapability as Ft, openItems as G, ReleaseSettlement as Ga, BoundaryRequest as Gi, goalCompletionDenial as Gn, isExecutableItem as Go, HostPlatform as Gr, LifecyclePhase as Gt, carriesCleanupCondition as H, ReleaseGateDecision as Ha, BOUNDARY_RECORD_PREFIX as Hi, isRunExecutable as Hn, interpretClause as Ho, HostLockContext as Hr, sanitizeUrl as Hs, FIRST_STEP_GUIDANCE as Ht, MIN_RECOVERY_CHAR_BUDGET as I, TargetValue as Ia, environmentDefaultRepositoryTarget as Ii, verifiedLinearCommitReadback as In, clauseIsProtected as Io, HostCapabilityEvaluation as Ir, validateActionManifest as Is, COMMAND_SURFACE_MANIFEST as It, renderRecoveryPacket as J, RebindArgs as Ja, availableBoundaryQualifications as Ji, ToolResultInput as Jn, isOpenObligation as Jo, bindExecutableIdentity as Jr, firstStepGuidanceV6 as Jt, recoveryDigest as K, BoundedSource as Ka, GoalActivationState as Ki, hasCurrentCertificate as Kn, isExplanationScope as Ko, HostProfileKind as Kr, claimedBatchHasRealRootInput as Kt, RecoveryCause as L, VerificationContract as La, extractArtifactPaths as Li, CanonicalArgv as Ln, explanationHasActionResidue as Lo, HostCapabilityId as Lr, validateActionTarget as Ls, CommandSurfaceManifest as Lt, CLEANUP_CONDITION_RULE as M, TargetCaptureStatus as Ma, ClauseSegment as Mi, executeRevalidatedGitEffect as Mn, actionVerbMatches as Mo, GOAL_HOST_PACKAGES as Mr, requestedTargetAuthorizesMutation as Ms, bindingSatisfies as Mt, CLEANUP_CONDITION_RULE_COMPACT as N, TargetSource as Na, captureClause as Ni, gitCommandMatchesTarget as Nn, clarifiedSpanOf as No, HOST_CAPABILITY_PACKAGE_GROUPS as Nr, requestedTargetMatchesResolved as Ns, evidenceCoverage as Nt, SESSION_EVENT_ENVELOPE_INVALID as O, NeedsReviewReason as Oa, RejectedBinding as Oi, LinearCommitReadback as On, LEGACY_QUALIFICATION as Oo, DEFAULT_HOST_LOCK as Or, actionCompatible as Os, sessionQueryV2 as Ot, CLEANUP_CONDITION_RULE_SHORT as P, TargetSourceKind as Pa, captureItem as Pi, parseGitCommandManifest as Pn, clauseAsksOwnQuestion as Po, HOST_COHORTS as Pr, semanticActionFromCommand as Ps, evidenceMatchesItem as Pt, PROOF_KINDS_V2 as Q, proposeRebindOutcome as Qa, AssetInterpretationFact as Qi, extractToolSubject as Qn, kindOfScope as Qo, evaluateHostLock as Qr, HostProfileError as Qt, RecoveryOptions as R, WaitAuthorization as Ra, extractMethod as Ri, CanonicalCommandSurface as Rn, governedClauseRestrictsExecution as Ro, HostCapabilityRequest as Rr, canonicalizePath as Rs, ManifestIssue as Rt, latestRootInstruction as S, GuardItemStatus as Sa, classifyUserInteraction as Si, GitCommandRejected as Sn, AuthorityDisposition as So, rootLocatorFlavor as Sr, STATEFUL_ACTIONS as Ss, proofHostSurfacesOf as St, testOutcomePredicate as T, HostStatus as Ta, isFrozenV042RebindResponse as Ti, GitPrestateCheck as Tn, ExecutionQualification as To, ACTIVE_HOST_LAUNCHER_VERSION as Tr, SUPPORTED_EVIDENCE_ADAPTERS as Ts, requiredSubjectsOf as Tt, cleanupConditionFor as U, ReleaseObservedIdentity as Ua, BoundaryEffectuation as Ui, parsePwshCommand as Un, interpretMessage as Uo, HostLockEvaluation as Ur, sha256 as Us, FirstStepInjection as Ut, V6_ORDINARY_COMPLETION_RULE_SHORT as V, PackageRow as Va, segmentClauses as Vi, canonicalArgvFromCommand as Vn, hasWorkPredicate as Vo, HostCohortSelectionReason as Vr, sanitizeClauseText as Vs, ClaimedMessage as Vt, closingHint as W, ReleaseOperation as Wa, BoundaryQualification as Wi, parseShellCommand as Wn, introducesActionClause as Wo, HostLockStatus as Wr, FirstStepPreviewInput as Wt, PROOF_CAPABILITY_MATRIX as X, confirmRebind as Xa, isCurrentAcceptedBoundary as Xi, evidenceFromPersistedToolResult as Xn, isRestatement as Xo, evaluateExternalWaitCapability as Xr, previewFirstStepInjection as Xt, v6CurrentRootBoundaries as Y, RebindProposal as Ya, effectuateBoundary as Yi, ToolSubject as Yn, isQuestionScopeNeedingReview as Yo, bindLiveGoalCapability as Yr, lifecyclePhase as Yt, PROOF_KINDS as Z, proposeRebind as Za, qualifyBoundary as Zi, extractTextContent as Zn, itemHoldsExecutionAuthority as Zo, evaluateHostCapability as Zr, ActiveProfileHostLock as Zt, decideTurnStopping as _, GuardCheckpoint as _a, authorityCaptureCounts as _i, GIT_COMMAND_TEMPLATES as _n, capabilityConsequence as _o, PROTOCOL_V5_NOTICE as _r, ActionSpec as _s, createProofManifestV2 as _t, AssistantOutcomeObservation as a, DeriveConfig as aa, MIN_SUPPORTED_HOST_VERSION as ai, combineHostPolicy as an, CapabilityRemedy as ao, TaskKind as ar, presentExplanationHead as as, ProofKindV2 as at, isWholeTaskCompletionClaim as b, GuardItem as ba, UserInteractionKind as bi, GitCommandManifest as bn, removalIsComplete as bo, deriveProjection as br, CERTIFICATE_VERSION_V2 as bs, proofDigestV2 as bt, CurrentActionBasis as c, DerivedEnvelope as ca, SUPPORTED_HOST_VERSIONS as ci, injectActiveProfileHostLock as cn, DependencyStatus as co, deriveItemDiagnosis as cr, reportingHeadGoverns as cs, ProofObligation as ct, TurnStoppingDecision as d, EvidenceParseStatus as da, parseHostVersion as di, packageRowsFromPnpmLock as dn, ProcessExitStatus as do, nativeFileTwoRole as dr, splitTextFragments as ds, SessionQuery as dt, BindingActionClosure as ea, hostVersionFromPackages as ei, activeRendererModule as en, rebindAttemptKey as eo, persistedToolResultStatus as er, maskCodeSpans as es, PROOF_PROTOCOL_VERSION as et, assessmentAction as f, EvidenceRole as fa, satisfiesSupportedHostRange as fi, readActiveHostGraph as fn, ProcessFactSource as fo, relevantEvidence as fr, statefulActionsOfScope as fs, SessionQueryV2 as ft, decideTurnBoundary as g, GuardBoundary as ga, AuthorityKind as gi, GIT_COMMAND_MANIFEST_IDS as gn, admissibleForRemoval as go, PROTOCOL_V4_NOTICE as gr, ActionManifest as gs, createProofManifest as gt, currentActionBases as h, GoalRef as ha, AuthorityBlockKind as hi, verifyComposedHostLockDump as hn, actionHasCertificationPath as ho, PROTOCOL_V3_NOTICE as hr, ACTION_MANIFEST_VERSION as hs, canonicalProjection as ht, supersedeItem as i, DelegationRef as ia, LATEST_SUPPORTED_HOST_VERSION as ii, auditedHostImplementation as in, CapabilityGap as io, Repairability as ir, opensWithDirective as is, ProofKindCapability as it, snapshotSessionEvents as j, TargetCaptureReasonCode as ja, CaptureScope as ji, createGitPrestateEnvelope as jn, ScopeInterpretation as jo, ExecutableIdentityBinding as jr, requestedIdentityKey as js, EvidenceFacetCoverage as jt, SessionApiError as k, PersistenceAuthorization as ka, bindingIndividuallyAccepted as ki, commitIndexSnapshotDigest as kn, QualificationReason as ko, EXPECTED_HOST_PACKAGES as kr, boundedArtifactChoiceMatches as ks, validateProofManifest as kt, NO_PROGRESS_RECORD_PREFIX as l, EvidenceBinding as la, compareHostVersions as li, inspectTargetHostGraph as ln, DerivedProcessFacts as lo, evidenceAvailabilityReason as lr, restatedContentOf as ls, ProofObligationV2 as lt, classifyCompletionClaim as m, ExternalOperation as ma, AuthorityBlock as mi, resolveInstalledHostLock as mn, RemovalOutcomeReport as mo, DEFAULT_DELEGATION_TOOL_NAMES as mr, ACTION_MANIFEST as ms, bindProofV2ToProjection as mt, projectSessionCoreV2 as n, BoundaryQualificationKind as na, HostVersionDecision as ni, auditedDefaultWorkdirProvider as nn, replayRebindResult as no, CertificationSupport as nr, namedActions as ns, ProofHostSurface as nt, CONTROL_RECORD_PREFIX as o, DeriveResult as oa, ParsedHostVersion as oi, hostLockContextFromComposedDump as on, DEPENDENCY_FREE_ONLY_CONDITION as oo, UnifiedItemDiagnosis as or, qualificationOfClause as os, ProofManifest as ot, assessmentOutcomePredicate as p, ExpectedTransition as pa, currentContractDigest as pi, resolveActiveProfileHostLock as pn, ProcessOutcomeReason as po, CAPTURE_V042_NOTICE as pr, verbIsNegated as ps, bindProofToProjection as pt, recoveryTitle as q, ProposeOutcome as qa, GoalBoundaryAccess as qi, ToolCallInput as qn, isInformationalFragment as qo, HostToolSurface as qr, firstStepGuidance as qt, projectCoreV2 as r, DeferAuthorization as ra, HostVersionStatus as ri, auditedForegroundRenderers as rn, CapabilityFact as ro, DiagnosisNextAction as rr, opensConditionLead as rs, ProofKind as rt, CompletionDisposition as s, DeriveScope as sa, SUPPORTED_HOST_RANGE as si, hostLockRowsFromComposedDump as sn, DeclaredOperationResult as so, capabilityRemedyPhrase as sr, questionHeadsClause as ss, ProofManifestV2 as st, RC017_RC2_HOST_PACKAGES as t, BoundaryDisposition as ta, selectHostCohort as ti, auditedDefaultWorkdirHost as tn, rebindResponse as to, withDurability as tr, maskQuotedSpans as ts, PROOF_PROTOCOL_VERSION_V2 as tt, NO_PROGRESS_TURNS_BEFORE_STOP as u, EvidenceOutcome as ua, evaluateMinimumHostVersion as ui, packageRowsFromActiveGraph as un, OperationAttribution as uo, itemDiagnosis as ur, semanticActionOfScope as us, ProofSurface as ut, decisionBoundaryKey as v, GuardEvidence as va, segmentAuthorityBlocks as vi, GitAdapterAction as vn, capabilityFactOf as vo, PROTOCOL_V6_NOTICE as vr, BOUNDED_ARTIFACT_TYPES as vs, proofCapabilityReport as vt, progressFingerprint as w, GuardProjection as wa, ParsedConfirmation as wi, GitEffectRunner as wn, Executee as wo, ACTIVE_HOST_COHORT_IDS as wr, STOP_PROTOCOL_VERSION_V2 as ws, proofV2Rejection as wt, latestAssistantText as x, GuardItemKind as xa, classifyTaskIntent as xi, GitCommandParseResult as xn, removalIsPartiallyKnown as xo, legacyRecordsNeedingReview as xr, SEMANTIC_ACTIONS as xs, proofEvidenceConstraints as xt, isRootPauseRequest as y, GuardIntegrity as ya, TaskIntent as yi, GitCommandAccepted as yn, partialFailureOf as yo, applyUpgradeEligibility as yr, CERTIFICATE_VERSION as ys, proofDigest as yt, V6_ORDINARY_COMPLETION_RULE as z, WorkUnit as za, extractOperation as zi, ParsedShell as zn, hasOrderedCoordination as zo, HostCohort as zr, digestStrings as zs, OperationVerbEntry as zt };
|
|
3353
|
+
export { PROOF_KINDS_V2 as $, GuardCheckpoint as $a, authorityCaptureCounts as $i, GitCommandAccepted as $n, capabilityConsequence as $o, applyUpgradeEligibility as $r, ActionSpec as $s, AuditedPackageExpectation as $t, SessionApiError as A, availableBoundaryQualifications as Aa, evaluateExternalWaitCapability as Ai, DesktopAppRuntime as An, RebindArgs as Ao, evidenceFromPersistedToolResult as Ar, isOpenObligation as As, validateProofManifest as At, V6_ORDINARY_COMPLETION_RULE as B, DelegationRef as Ba, LATEST_TESTED_HOST_VERSION as Bi, HostRebindTrust as Bn, CapabilityGap as Bo, UnifiedItemDiagnosis as Br, opensWithDirective as Bs, OperationVerbEntry as Bt, latestRootInstruction as C, segmentClauses as Ca, sanitizeClauseText as Cc, HostLockEvaluation as Ci, resolveInstalledHostLock as Cn, PackageRow as Co, parsePwshCommand as Cr, hasWorkPredicate as Cs, proofHostSurfacesOf as Ct, v6TestPredicate as D, BoundaryRequest as Da, HostToolSurface as Di, DESKTOP_IDENTITY_FACTS as Dn, ReleaseSettlement as Do, ToolCallInput as Dr, isExecutableItem as Ds, scopeCoverageDigest as Dt, testOutcomePredicate as E, BoundaryQualification as Ea, HostProfileKind as Ei, AsarIndex as En, ReleaseOperation as Eo, hasCurrentCertificate as Er, introducesActionClause as Es, requiredSubjectsOf as Et, CLEANUP_CONDITION_RULE_SHORT as F, AssetObligation as Fa, hostVersionFromPackages as Fi, readAsarIndex as Fn, proposeRebindV042 as Fo, withDurability as Fr, legacyQuestionReadingIsInformational as Fs, evidenceMatchesItem as Ft, closingHint as G, EvidenceBinding as Ga, compareHostVersions as Gi, hostTrustDigest as Gn, DerivedProcessFacts as Go, nativeFileTwoRole as Gr, restatedContentOf as Gs, FirstStepPreviewInput as Gt, V6_ORDINARY_COMPLETION_RULE_SHORT as H, DeriveResult as Ha, ParsedHostVersion as Hi, HostTrustError as Hn, DEPENDENCY_FREE_ONLY_CONDITION as Ho, deriveItemDiagnosis as Hr, qualificationOfClause as Hs, ClaimedMessage as Ht, DEFAULT_RECOVERY_CHAR_BUDGET as I, BindingActionClosure as Ia, selectHostCohort as Ii, readDesktopAppRuntime as In, rebindAttemptKey as Io, CertificationSupport as Ir, maskCodeSpans as Is, isVerifyingCapability as It, recoveryTitle as J, EvidenceRole as Ja, satisfiesSupportedHostRange as Ji, registryArchiveFiles as Jn, ProcessFactSource as Jo, DEFAULT_DELEGATION_TOOL_NAMES as Jr, statefulActionsOfScope as Js, firstStepGuidance as Jt, openItems as K, EvidenceOutcome as Ka, evaluateMinimumHostVersion as Ki, parseHostTrust as Kn, OperationAttribution as Ko, relevantEvidence as Kr, semanticActionOfScope as Ks, LifecyclePhase as Kt, MIN_RECOVERY_CHAR_BUDGET as L, BoundaryDisposition as La, HOST_VALIDATED_VERSIONS as Li, readDesktopDependency as Ln, rebindResponse as Lo, DiagnosisNextAction as Lr, maskQuotedSpans as Ls, COMMAND_SURFACE_MANIFEST as Lt, snapshotSessionEvents as M, isCurrentAcceptedBoundary as Ma, evaluateHostCapability as Mi, auditDesktopInstalledImplementation as Mn, confirmRebind as Mo, extractToolSubject as Mr, isRestatement as Ms, EvidenceFacetCoverage as Mt, CLEANUP_CONDITION_RULE as N, qualifyBoundary as Na, evaluateHostLock as Ni, hasDesktopImporterState as Nn, proposeRebind as No, isDeterministicCheck as Nr, itemHoldsExecutionAuthority as Ns, bindingSatisfies as Nt, SESSION_API_UNSUPPORTED as O, GoalActivationState as Oa, bindExecutableIdentity as Oi, DESKTOP_PROFILE_PACKAGE_NAME as On, BoundedSource as Oo, ToolResultInput as Or, isExplanationScope as Os, sessionQuery as Ot, CLEANUP_CONDITION_RULE_COMPACT as P, AssetInterpretationFact as Pa, evaluateToolSurfaceCapability as Pi, readAsarFile as Pn, proposeRebindOutcome as Po, persistedToolResultStatus as Pr, kindOfScope as Ps, evidenceCoverage as Pt, PROOF_KINDS as Q, GuardBoundary as Qa, AuthorityKind as Qi, GitAdapterAction as Qn, admissibleForRemoval as Qo, PROTOCOL_V6_NOTICE as Qr, ActionManifest as Qs, ActiveProfileHostLock as Qt, RecoveryCause as R, BoundaryQualificationKind as Ra, HostVersionDecision as Ri, readDesktopTargetGraph as Rn, replayRebindResult as Ro, Repairability as Rr, namedActions as Rs, CommandSurfaceManifest as Rt, latestAssistantText as S, isInformationalMessage as Sa, normalizeClause as Sc, HostLockContext as Si, resolveDesktopProfileHostLock as Sn, createProjection as So, isRunExecutable as Sr, hasQuestionScope as Ss, proofEvidenceConstraints as St, progressFingerprint as T, BoundaryEffectuation as Ta, sha256 as Tc, HostPlatform as Ti, verifyComposedHostLockDump as Tn, ReleaseObservedIdentity as To, goalCompletionDenial as Tr, interpretMessage as Ts, proofV2Rejection as Tt, carriesCleanupCondition as U, DeriveScope as Ua, SUPPORTED_HOST_RANGE as Ui, HostTrustedPackage as Un, DeclaredOperationResult as Uo, evidenceAvailabilityReason as Ur, questionHeadsClause as Us, FIRST_STEP_GUIDANCE as Ut, V6_ORDINARY_COMPLETION_RULE_COMPACT as V, DeriveConfig as Va, MIN_SUPPORTED_HOST_VERSION as Vi, HostTrustAcquisitionOptions as Vn, CapabilityRemedy as Vo, capabilityRemedyPhrase as Vr, presentExplanationHead as Vs, validateManifest as Vt, cleanupConditionFor as W, DerivedEnvelope as Wa, SUPPORTED_HOST_VERSIONS as Wi, acquireHostTrust as Wn, DependencyStatus as Wo, itemDiagnosis as Wr, reportingHeadGoverns as Ws, FirstStepInjection as Wt, v6CurrentRootBoundaries as X, ExternalOperation as Xa, AuthorityBlock as Xi, GIT_COMMAND_MANIFEST_IDS as Xn, RemovalOutcomeReport as Xo, PROTOCOL_V4_NOTICE as Xr, ACTION_MANIFEST as Xs, lifecyclePhase as Xt, renderRecoveryPacket as Y, ExpectedTransition as Ya, currentContractDigest as Yi, registryArchiveModules as Yn, ProcessOutcomeReason as Yo, PROTOCOL_V3_NOTICE as Yr, verbIsNegated as Ys, firstStepGuidanceV6 as Yt, PROOF_CAPABILITY_MATRIX as Z, GoalRef as Za, AuthorityBlockKind as Zi, GIT_COMMAND_TEMPLATES as Zn, actionHasCertificationPath as Zo, PROTOCOL_V5_NOTICE as Zr, ACTION_MANIFEST_VERSION as Zs, previewFirstStepInjection as Zt, decideTurnBoundary as _, classifyClause as _a, semanticActionFromText as _c, HostCapabilityId as _i, prepareActiveHostTrust as _n, TargetTuple as _o, CanonicalArgv as _r, clauseIsGoverned as _s, createProofManifest as _t, supersedeItem as a, CONFIRM_LINE_PATTERN as aa, STOP_PROTOCOL_VERSION as ac, ACTIVE_HOST_LAUNCHER_VERSION as ai, auditedForegroundRenderers as an, GuardOperation as ao, GitPrestateCheck as ar, DirectiveClass as as, ProofKindCapability as at, isRootPauseRequest as b, extractMethod as ba, canonicalizePath as bc, HostCohortSelection as bi, readActiveHostGraph as bn, WaitAuthorization as bo, ShellParseStatus as br, governedClauseRestrictsExecution as bs, proofDigest as bt, CompletionDisposition as c, parseConfirmationMessage as ca, SemanticAction as cc, DEFAULT_HOST_LOCK as ci, evaluateActiveHostLock as cn, MessageCoverage as co, LinearCommitReadback as cr, GRANTED_QUALIFICATION as cs, ProofManifestV2 as ct, NO_PROGRESS_TURNS_BEFORE_STOP as d, bindingIndividuallyAccepted as da, boundedArtifactChoiceMatches as dc, ExecutableIdentityBinding as di, hostLockRowsFromComposedDump as dn, PersistenceAuthorization as do, createGitPrestateEnvelope as dr, QualificationReason as ds, ProofSurface as dt, segmentAuthorityBlocks as ea, BOUNDED_ARTIFACT_TYPES as ec, deriveProjection as ei, HostProfileError as en, GuardEvidence as eo, GitCommandManifest as er, capabilityFactOf as es, PROOF_MANIFEST_DOMAIN_V2 as et, TurnStoppingDecision as f, certifyCheckpoint as fa, isStatefulAction as fc, GOAL_HOST_PACKAGES as fi, injectActiveProfileHostLock as fn, SourceSpan as fo, executeRevalidatedGitEffect as fr, QualificationStatus as fs, SessionQuery as ft, currentActionBases as g, captureItem as ga, semanticActionFromCommand as gc, HostCapabilityEvaluation as gi, packageRowsFromPnpmLock as gn, TargetSourceKind as go, verifiedLinearCommitReadback as gr, clauseAsksOwnQuestion as gs, canonicalProjection as gt, classifyCompletionClaim as h, captureClause as ha, requestedTargetMatchesResolved as hc, HostAuditProvenance as hi, packageRowsFromActiveGraph as hn, TargetSource as ho, revalidateGitPrestate as hr, clarifiedSpanOf as hs, bindProofV2ToProjection as ht, projectCoreV2 as i, classifyUserInteraction as ia, STATEFUL_ACTIONS as ic, ACTIVE_HOST_COHORT_IDS as ii, auditedDefaultWorkdirProvider as in, GuardItemStatus as io, GitEffectRunner as ir, AuthorityDisposition as is, ProofKind as it, V4SessionLike as j, effectuateBoundary as ja, evaluateGraphDerivedHostLock as ji, DesktopTargetGraph as jn, RebindProposal as jo, extractTextContent as jr, isQuestionScopeNeedingReview as js, validateProofManifestV2 as jt, SESSION_EVENT_ENVELOPE_INVALID as k, GoalBoundaryAccess as ka, bindLiveGoalCapability as ki, DESKTOP_RUNTIME_PACKAGE_NAME as kn, ProposeOutcome as ko, ToolSubject as kr, isInformationalFragment as ks, sessionQueryV2 as kt, CurrentActionBasis as l, CheckpointResult as la, StatefulAction as lc, EXPECTED_HOST_PACKAGES as li, evaluateConfiguredHostLock as ln, NeedsReviewFact as lo, commitIndexSnapshotDigest as lr, InterpretOptions as ls, ProofObligation as lt, assessmentOutcomePredicate as m, ClauseSegment as ma, requestedTargetAuthorizesMutation as mc, HOST_COHORTS as mi, inspectTargetHostGraph as mn, TargetCaptureStatus as mo, parseGitCommandManifest as mr, actionVerbMatches as ms, bindProofToProjection as mt, RC020_RC1_HOST_PACKAGES as n, UserInteractionKind as na, CERTIFICATE_VERSION_V2 as nc, rootLocatorFlavor as ni, activeRendererModule as nn, GuardItem as no, GitCommandRejected as nr, removalIsComplete as ns, PROOF_PROTOCOL_VERSION_V2 as nt, AssistantOutcomeObservation as o, ParsedConfirmation as oa, STOP_PROTOCOL_VERSION_V2 as oc, AuditedExecutable as oi, auditedHostImplementation as on, GuardProjection as oo, GitPrestateEnvelope as or, Executee as os, ProofKindV2 as ot, assessmentAction as p, CaptureScope as pa, requestedIdentityKey as pc, HOST_CAPABILITY_PACKAGE_GROUPS as pi, inspectDesktopTargetGraph as pn, TargetCaptureReasonCode as po, gitCommandMatchesTarget as pr, ScopeInterpretation as ps, SessionQueryV2 as pt, recoveryDigest as q, EvidenceParseStatus as qa, parseHostVersion as qi, qualifyHostTrust as qn, ProcessExitStatus as qo, CAPTURE_V042_NOTICE as qr, splitTextFragments as qs, claimedBatchHasRealRootInput as qt, projectSessionCoreV2 as r, classifyTaskIntent as ra, SEMANTIC_ACTIONS as rc, ACTIVE_HOST_COHORT_ID as ri, auditedDefaultWorkdirHost as rn, GuardItemKind as ro, GitEffectExecution as rr, removalIsPartiallyKnown as rs, ProofHostSurface as rt, CONTROL_RECORD_PREFIX as s, isFrozenV042RebindResponse as sa, SUPPORTED_EVIDENCE_ADAPTERS as sc, BASE_HOST_PACKAGES as si, combineHostPolicy as sn, HostStatus as so, GitTargetIdentity as sr, ExecutionQualification as ss, ProofManifest as st, RC020_RC2_HOST_PACKAGES as t, TaskIntent as ta, CERTIFICATE_VERSION as tc, legacyRecordsNeedingReview as ti, TargetHostGraph as tn, GuardIntegrity as to, GitCommandParseResult as tr, partialFailureOf as ts, PROOF_PROTOCOL_VERSION as tt, NO_PROGRESS_RECORD_PREFIX as u, RejectedBinding as ua, actionCompatible as uc, ExecutableIdentity as ui, hostLockContextFromComposedDump as un, NeedsReviewReason as uo, commitTreeSnapshotDigest as ur, LEGACY_QUALIFICATION as us, ProofObligationV2 as ut, decideTurnStopping as v, environmentDefaultRepositoryTarget as va, validateActionManifest as vc, HostCapabilityRequest as vi, prepareDesktopHostTrust as vn, TargetValue as vo, CanonicalCommandSurface as vr, clauseIsProtected as vs, createProofManifestV2 as vt, observeAssistantOutcome as w, BOUNDARY_RECORD_PREFIX as wa, sanitizeUrl as wc, HostLockStatus as wi, revalidateDesktopCoreLock as wn, ReleaseGateDecision as wo, parseShellCommand as wr, interpretClause as ws, proofOperationMatches as wt, isWholeTaskCompletionClaim as x, extractOperation as xa, digestStrings as xc, HostCohortSelectionReason as xi, resolveActiveProfileHostLock as xn, WorkUnit as xo, canonicalArgvFromCommand as xr, hasOrderedCoordination as xs, proofDigestV2 as xt, decisionBoundaryKey as y, extractArtifactPaths as ya, validateActionTarget as yc, HostCohort as yi, prepareTargetHostTrust as yn, VerificationContract as yo, ParsedShell as yr, explanationHasActionResidue as ys, proofCapabilityReport as yt, RecoveryOptions as z, DeferAuthorization as za, HostVersionStatus as zi, writeDesktopRuntimeReceipt as zn, CapabilityFact as zo, TaskKind as zr, opensConditionLead as zs, ManifestIssue as zt };
|