archal 0.9.20 → 0.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +59 -159
- package/agents/openclaw/Dockerfile +2 -1
- package/agents/openclaw/README.md +10 -17
- package/agents/openclaw/drive.mjs +21 -31
- package/agents/openclaw/extract-openclaw-response-text.mjs +49 -0
- package/agents/openclaw/scenarios/acceptance/github-escalation-and-cleanup.md +43 -0
- package/agents/openclaw/scenarios/acceptance/jira-linear-release-triage.md +39 -0
- package/agents/openclaw/scenarios/acceptance/multi-clone-customer-risk-review.md +45 -0
- package/agents/openclaw/scenarios/acceptance/slack-incident-handoff.md +42 -0
- package/agents/openclaw/scenarios/acceptance/stripe-dunning-remediation.md +40 -0
- package/agents/openclaw/scenarios/close-stale-issues.md +35 -0
- package/agents/openclaw/workspace/TOOLS.md +19 -0
- package/clone-assets/calcom/tools.json +1705 -153
- package/clone-assets/clickup/tools.json +2528 -541
- package/clone-assets/customerio/tools.json +2108 -144
- package/clone-assets/github/tools.json +1 -2
- package/clone-assets/gitlab/tools.json +10087 -398
- package/clone-assets/hubspot/tools.json +198 -0
- package/clone-assets/linear/tools.json +41 -1
- package/clone-assets/sentry/tools.json +2264 -188
- package/clone-assets/stripe/tools.json +114 -0
- package/clone-assets/webflow/tools.json +1895 -125
- package/dist/{autoloop-worker-types-BEb_E44z.d.cts → autoloop-worker-types-CHaclqtD.d.cts} +23 -59
- package/dist/cli.cjs +107175 -126959
- package/dist/commands/{autoloop-hosted-worker.cjs → autoloop-hosted-control-plane-client.cjs} +25657 -42736
- package/dist/commands/{autoloop-hosted-worker.d.cts → autoloop-hosted-control-plane-client.d.cts} +32 -42
- package/dist/commands/autoloop-pr-verification.cjs +607 -522
- package/dist/commands/autoloop-pr-verification.d.cts +3 -1
- package/dist/commands/autoloop-result-parser.cjs +2474 -2373
- package/dist/commands/autoloop-result-parser.d.cts +159 -2
- package/dist/commands/autoloop-worker.cjs +14565 -12240
- package/dist/commands/autoloop-worker.d.cts +10 -5
- package/dist/eval-shim.mjs +216 -0
- package/dist/index.cjs +15 -2
- package/dist/index.d.cts +3 -1
- package/dist/layer-1-ziaLpfLr.d.cts +62 -0
- package/dist/metafile-cjs.json +1 -0
- package/dist/reporter-entry.js +3 -0
- package/dist/{replay.cjs → sdk/index.cjs} +42979 -40973
- package/dist/sdk/index.d.cts +626 -0
- package/dist/vitest/{chunk-6CBYFCFK.js → chunk-2PDHTPZC.js} +289 -89
- package/dist/vitest/{chunk-ARVS45PP.js → chunk-7L4BBB6M.js} +123 -274
- package/dist/vitest/index.cjs +500 -816
- package/dist/vitest/index.d.ts +16 -81
- package/dist/vitest/index.js +40 -409
- package/dist/vitest/runtime/hosted-session-reaper.cjs +143 -293
- package/dist/vitest/runtime/hosted-session-reaper.js +1 -1
- package/dist/vitest/runtime/setup-files.js +2 -2
- package/manifest.json +9 -0
- package/package.json +14 -13
- package/skills/archal-agent/SKILL.md +0 -1
- package/skills/autoloop/SKILL.md +288 -273
- package/skills/autoloop/references/hosted-sources.md +49 -17
- package/skills/autoloop/references/trace-schema-mapping.md +83 -52
- package/skills/eval/SKILL.md +16 -48
- package/skills/free-account/SKILL.md +103 -0
- package/skills/install-agent/SKILL.md +16 -35
- package/skills/onboard/SKILL.md +13 -70
- package/skills/scenario/SKILL.md +30 -27
- package/skills/seed/SKILL.md +7 -6
- package/skills/vitest/SKILL.md +3 -2
- package/agents/github-octokit/.archal.json +0 -8
- package/agents/github-octokit/Dockerfile +0 -8
- package/agents/github-octokit/README.md +0 -113
- package/agents/github-octokit/agent.mjs +0 -54
- package/agents/github-octokit/package.json +0 -9
- package/agents/github-octokit/scenarios/test-repo-access.md +0 -27
- package/agents/google-workspace-local-tools/Dockerfile +0 -6
- package/agents/google-workspace-local-tools/README.md +0 -58
- package/agents/google-workspace-local-tools/agent.mjs +0 -196
- package/agents/google-workspace-local-tools/archal-harness.json +0 -7
- package/agents/google-workspace-local-tools/run-input.yaml +0 -16
- package/agents/google-workspace-local-tools/scenario.md +0 -29
- package/agents/hermes/.archal.json +0 -8
- package/agents/hermes/Dockerfile +0 -46
- package/agents/hermes/README.md +0 -87
- package/agents/hermes/SOUL.md +0 -27
- package/agents/hermes/config.yaml +0 -34
- package/agents/hermes/drive.mjs +0 -113
- package/agents/hermes/scenarios/stripe-customers-read-only.md +0 -32
- package/agents/pagination-test/README.md +0 -24
- package/agents/pagination-test/scenario.md +0 -24
- package/agents/replay-capsule-harness/README.md +0 -29
- package/agents/replay-capsule-harness/observability-install-offline-e2e.mts +0 -1517
- package/agents/replay-capsule-harness/replay-capsule-e2e.mjs +0 -104
- package/dist/harness.cjs +0 -63
- package/dist/harness.d.cts +0 -20
- package/dist/replay.d.cts +0 -4625
- package/dist/scenarios.cjs +0 -80343
- package/dist/scenarios.d.cts +0 -562
|
@@ -9,16 +9,16 @@ import {
|
|
|
9
9
|
createHostedAuthLease,
|
|
10
10
|
decodeConfig,
|
|
11
11
|
fileExists,
|
|
12
|
+
getConfiguredVitestApiBaseUrl,
|
|
12
13
|
getSessionIdFilePath,
|
|
13
14
|
isProcessAlive,
|
|
14
15
|
loadFileSeedsIntoClones,
|
|
15
|
-
normalizeApiBaseUrl,
|
|
16
16
|
parsePositiveInteger,
|
|
17
17
|
redactSessionSnapshot,
|
|
18
18
|
requestedSeedsMatchSession,
|
|
19
19
|
sleep,
|
|
20
20
|
trimEnv
|
|
21
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-7L4BBB6M.js";
|
|
22
22
|
|
|
23
23
|
// src/runtime-module-resolution.ts
|
|
24
24
|
import { dirname, extname, isAbsolute, resolve } from "path";
|
|
@@ -39,22 +39,6 @@ function resolveRuntimeModule(relativePath, buildExtension) {
|
|
|
39
39
|
return resolveRuntimeModuleFromFile(currentModuleFile, relativePath, buildExtension);
|
|
40
40
|
}
|
|
41
41
|
|
|
42
|
-
// src/runtime/session-snapshot.ts
|
|
43
|
-
var ARCHAL_VITEST_CONFIG_ENV = "ARCHAL_VITEST_CONFIG";
|
|
44
|
-
function readArchalVitestConfigFromEnv() {
|
|
45
|
-
const encoded = process.env[ARCHAL_VITEST_CONFIG_ENV];
|
|
46
|
-
if (!encoded) {
|
|
47
|
-
throw new Error(`Missing ${ARCHAL_VITEST_CONFIG_ENV}. archalVitestProject() must set worker config before bootstrap.`);
|
|
48
|
-
}
|
|
49
|
-
return readArchalVitestConfig(encoded);
|
|
50
|
-
}
|
|
51
|
-
function readArchalVitestConfig(encoded) {
|
|
52
|
-
if (!encoded) {
|
|
53
|
-
throw new Error(`Missing ${ARCHAL_VITEST_CONFIG_ENV}. archalVitestProject() must set worker config before bootstrap.`);
|
|
54
|
-
}
|
|
55
|
-
return decodeConfig(encoded);
|
|
56
|
-
}
|
|
57
|
-
|
|
58
42
|
// ../route-runtime-core/src/errors.ts
|
|
59
43
|
var RouteRuntimePolicyError = class extends Error {
|
|
60
44
|
code;
|
|
@@ -371,9 +355,9 @@ var githubRouteManifest = {
|
|
|
371
355
|
manifestVersion: "2026-04-02.github.v1",
|
|
372
356
|
baselineSeed: "small-project",
|
|
373
357
|
routeDomains: [
|
|
358
|
+
exactDomain("github.com"),
|
|
374
359
|
exactDomain("api.github.com"),
|
|
375
360
|
exactDomain("uploads.github.com"),
|
|
376
|
-
exactDomain("github.com"),
|
|
377
361
|
exactDomain("raw.githubusercontent.com")
|
|
378
362
|
],
|
|
379
363
|
// Block adjacent GitHub-owned domains that tests don't need. Keep raw
|
|
@@ -386,7 +370,6 @@ var githubRouteManifest = {
|
|
|
386
370
|
],
|
|
387
371
|
routePathRewrite: rewriteGitHubRawContentPath,
|
|
388
372
|
warningDomains: [
|
|
389
|
-
suffixDomain("github.com"),
|
|
390
373
|
suffixDomain("githubusercontent.com")
|
|
391
374
|
],
|
|
392
375
|
diagnostics: {
|
|
@@ -1721,8 +1704,49 @@ var ROUTE_RUNTIME_DISPATCHING_ROUTE_KINDS = new Set(ROUTE_RUNTIME_PUBLIC_ROUTE_K
|
|
|
1721
1704
|
// ../route-runtime-core/src/service-profiles/stripe.ts
|
|
1722
1705
|
var stripeCompatibilityProfile = buildServiceCompatibilityProfile(stripeRouteManifest);
|
|
1723
1706
|
|
|
1724
|
-
// ../../clones/core/dist/chunk-
|
|
1707
|
+
// ../../clones/core/dist/chunk-457KV5BB.js
|
|
1725
1708
|
var manifest_default = [
|
|
1709
|
+
{
|
|
1710
|
+
name: "agentmail",
|
|
1711
|
+
package: "@archal/clone-agentmail",
|
|
1712
|
+
path: "clones/agentmail",
|
|
1713
|
+
stage: "internal",
|
|
1714
|
+
transport: "rest",
|
|
1715
|
+
hostedRuntime: {
|
|
1716
|
+
enabled: true,
|
|
1717
|
+
requiresDist: true,
|
|
1718
|
+
requiresEmptySeed: true
|
|
1719
|
+
},
|
|
1720
|
+
cli: {
|
|
1721
|
+
bundleAssets: false,
|
|
1722
|
+
bundleToolSnapshot: false
|
|
1723
|
+
},
|
|
1724
|
+
routeProxy: {
|
|
1725
|
+
enabled: false,
|
|
1726
|
+
domains: []
|
|
1727
|
+
},
|
|
1728
|
+
seeds: {
|
|
1729
|
+
generatedCatalog: false,
|
|
1730
|
+
default: "empty"
|
|
1731
|
+
},
|
|
1732
|
+
smoke: {
|
|
1733
|
+
production: "none"
|
|
1734
|
+
},
|
|
1735
|
+
architecture: {
|
|
1736
|
+
class: "replay-shell",
|
|
1737
|
+
summary: "AgentMail (api.agentmail.to /v0) replay-shell ported from the forge lineage: REST routes replay the harvested recording corpus with per-operation response shaping; promote only after inbox/thread/draft mutation invariants replace recording-coupled fallbacks.",
|
|
1738
|
+
domainPrimitives: [
|
|
1739
|
+
"inbox lifecycle state",
|
|
1740
|
+
"thread and message state",
|
|
1741
|
+
"draft and webhook lifecycle state"
|
|
1742
|
+
],
|
|
1743
|
+
promotionEvidence: [
|
|
1744
|
+
"clones/agentmail/SPEC.md tracks inbox/thread/draft/webhook handlers mutating StateEngine state",
|
|
1745
|
+
"clones/agentmail/SPEC.md tracks create/update/send/delete sequence invariants and reset determinism",
|
|
1746
|
+
"runtime recording-backed handlers in clones/agentmail/src/rest/handlers.ts and recordings.ts must be replaced by state-derived handlers before promotion"
|
|
1747
|
+
]
|
|
1748
|
+
}
|
|
1749
|
+
},
|
|
1726
1750
|
{
|
|
1727
1751
|
name: "apify",
|
|
1728
1752
|
package: "@archal/clone-apify",
|
|
@@ -1771,7 +1795,8 @@ var manifest_default = [
|
|
|
1771
1795
|
"fixture-backed fallback semantics for uncovered REST paths"
|
|
1772
1796
|
],
|
|
1773
1797
|
behaviorOwner: "src/upstream.ts"
|
|
1774
|
-
}
|
|
1798
|
+
},
|
|
1799
|
+
opsCoverage: null
|
|
1775
1800
|
},
|
|
1776
1801
|
{
|
|
1777
1802
|
name: "box",
|
|
@@ -1822,7 +1847,7 @@ var manifest_default = [
|
|
|
1822
1847
|
icon: "CC",
|
|
1823
1848
|
name: "Cal.com",
|
|
1824
1849
|
description: "Event types, schedules, availability slots, bookings, calendars, and webhooks.",
|
|
1825
|
-
toolCount:
|
|
1850
|
+
toolCount: 35
|
|
1826
1851
|
},
|
|
1827
1852
|
transport: "both",
|
|
1828
1853
|
hostedRuntime: {
|
|
@@ -1870,7 +1895,7 @@ var manifest_default = [
|
|
|
1870
1895
|
icon: "CU",
|
|
1871
1896
|
name: "ClickUp",
|
|
1872
1897
|
description: "Teams, spaces, folders, lists, tasks, comments, tags, time tracking, and checklists.",
|
|
1873
|
-
toolCount:
|
|
1898
|
+
toolCount: 123
|
|
1874
1899
|
},
|
|
1875
1900
|
transport: "both",
|
|
1876
1901
|
hostedRuntime: {
|
|
@@ -1911,7 +1936,7 @@ var manifest_default = [
|
|
|
1911
1936
|
icon: "CI",
|
|
1912
1937
|
name: "Customer.io",
|
|
1913
1938
|
description: "Messaging automation across campaigns, broadcasts, transactional email, segments, customers, and message delivery.",
|
|
1914
|
-
toolCount:
|
|
1939
|
+
toolCount: 129
|
|
1915
1940
|
},
|
|
1916
1941
|
transport: "rest",
|
|
1917
1942
|
hostedRuntime: {
|
|
@@ -2020,6 +2045,17 @@ var manifest_default = [
|
|
|
2020
2045
|
{
|
|
2021
2046
|
domain: "discordapp.com"
|
|
2022
2047
|
}
|
|
2048
|
+
],
|
|
2049
|
+
hardFailDomains: [
|
|
2050
|
+
{
|
|
2051
|
+
domain: "cdn.discordapp.com"
|
|
2052
|
+
},
|
|
2053
|
+
{
|
|
2054
|
+
domain: "media.discordapp.net"
|
|
2055
|
+
},
|
|
2056
|
+
{
|
|
2057
|
+
domain: "gateway.discord.gg"
|
|
2058
|
+
}
|
|
2023
2059
|
]
|
|
2024
2060
|
},
|
|
2025
2061
|
seeds: {
|
|
@@ -2046,7 +2082,8 @@ var manifest_default = [
|
|
|
2046
2082
|
"thread",
|
|
2047
2083
|
"webhook",
|
|
2048
2084
|
"slash command"
|
|
2049
|
-
]
|
|
2085
|
+
],
|
|
2086
|
+
opsCoverage: 14
|
|
2050
2087
|
},
|
|
2051
2088
|
{
|
|
2052
2089
|
name: "dropbox",
|
|
@@ -2082,7 +2119,7 @@ var manifest_default = [
|
|
|
2082
2119
|
"sharing permissions",
|
|
2083
2120
|
"delta/list-folder cursors"
|
|
2084
2121
|
],
|
|
2085
|
-
behaviorOwner: "src/
|
|
2122
|
+
behaviorOwner: "src/register-tools.ts"
|
|
2086
2123
|
}
|
|
2087
2124
|
},
|
|
2088
2125
|
{
|
|
@@ -2161,7 +2198,8 @@ var manifest_default = [
|
|
|
2161
2198
|
"clones/firecrawl/SPEC.md tracks runtime recording-backed handlers replaced by state-derived crawl/job responses",
|
|
2162
2199
|
"clones/firecrawl/SPEC.md tracks status/progress/replay determinism invariants"
|
|
2163
2200
|
]
|
|
2164
|
-
}
|
|
2201
|
+
},
|
|
2202
|
+
opsCoverage: 77
|
|
2165
2203
|
},
|
|
2166
2204
|
{
|
|
2167
2205
|
name: "freshdesk",
|
|
@@ -2228,6 +2266,9 @@ var manifest_default = [
|
|
|
2228
2266
|
routeProxy: {
|
|
2229
2267
|
enabled: true,
|
|
2230
2268
|
domains: [
|
|
2269
|
+
{
|
|
2270
|
+
domain: "github.com"
|
|
2271
|
+
},
|
|
2231
2272
|
{
|
|
2232
2273
|
domain: "api.github.com"
|
|
2233
2274
|
},
|
|
@@ -2235,10 +2276,18 @@ var manifest_default = [
|
|
|
2235
2276
|
domain: "uploads.github.com"
|
|
2236
2277
|
},
|
|
2237
2278
|
{
|
|
2238
|
-
domain: "
|
|
2279
|
+
domain: "raw.githubusercontent.com"
|
|
2280
|
+
}
|
|
2281
|
+
],
|
|
2282
|
+
hardFailDomains: [
|
|
2283
|
+
{
|
|
2284
|
+
domain: "gist.github.com"
|
|
2239
2285
|
},
|
|
2240
2286
|
{
|
|
2241
|
-
domain: "
|
|
2287
|
+
domain: "objects.githubusercontent.com"
|
|
2288
|
+
},
|
|
2289
|
+
{
|
|
2290
|
+
domain: "codeload.github.com"
|
|
2242
2291
|
}
|
|
2243
2292
|
]
|
|
2244
2293
|
},
|
|
@@ -2268,7 +2317,8 @@ var manifest_default = [
|
|
|
2268
2317
|
"create_issue",
|
|
2269
2318
|
"create_pull_request",
|
|
2270
2319
|
"merge_pull_request"
|
|
2271
|
-
]
|
|
2320
|
+
],
|
|
2321
|
+
opsCoverage: 96
|
|
2272
2322
|
},
|
|
2273
2323
|
{
|
|
2274
2324
|
name: "gitlab",
|
|
@@ -2279,7 +2329,7 @@ var manifest_default = [
|
|
|
2279
2329
|
icon: "GL",
|
|
2280
2330
|
name: "GitLab",
|
|
2281
2331
|
description: "Projects, branches, commits, issues, merge requests, pipelines, labels, milestones, releases, and webhooks.",
|
|
2282
|
-
toolCount:
|
|
2332
|
+
toolCount: 559
|
|
2283
2333
|
},
|
|
2284
2334
|
transport: "both",
|
|
2285
2335
|
hostedRuntime: {
|
|
@@ -2393,7 +2443,88 @@ var manifest_default = [
|
|
|
2393
2443
|
"google sheet",
|
|
2394
2444
|
"google sheets",
|
|
2395
2445
|
"contacts"
|
|
2396
|
-
]
|
|
2446
|
+
],
|
|
2447
|
+
opsCoverage: 64
|
|
2448
|
+
},
|
|
2449
|
+
{
|
|
2450
|
+
name: "guesty",
|
|
2451
|
+
package: "@archal/clone-guesty",
|
|
2452
|
+
path: "clones/guesty",
|
|
2453
|
+
stage: "internal",
|
|
2454
|
+
transport: "rest",
|
|
2455
|
+
hostedRuntime: {
|
|
2456
|
+
enabled: true,
|
|
2457
|
+
requiresDist: true,
|
|
2458
|
+
requiresEmptySeed: true
|
|
2459
|
+
},
|
|
2460
|
+
cli: {
|
|
2461
|
+
bundleAssets: false,
|
|
2462
|
+
bundleToolSnapshot: false
|
|
2463
|
+
},
|
|
2464
|
+
routeProxy: {
|
|
2465
|
+
enabled: false,
|
|
2466
|
+
domains: []
|
|
2467
|
+
},
|
|
2468
|
+
seeds: {
|
|
2469
|
+
generatedCatalog: false,
|
|
2470
|
+
default: "empty"
|
|
2471
|
+
},
|
|
2472
|
+
smoke: {
|
|
2473
|
+
production: "none"
|
|
2474
|
+
},
|
|
2475
|
+
architecture: {
|
|
2476
|
+
class: "replay-shell",
|
|
2477
|
+
summary: "Current internal Guesty package is a bootstrap scaffold with no registered tools or REST behavior; promote to replay-shell preview only after the Open API listing/reservation/guest surface is harvested and replayed against a Guesty Pro account.",
|
|
2478
|
+
domainPrimitives: [
|
|
2479
|
+
"listing, reservation, and guest read projections",
|
|
2480
|
+
"availability-calendar overlay",
|
|
2481
|
+
"future webhook delivery behavior"
|
|
2482
|
+
],
|
|
2483
|
+
promotionEvidence: [
|
|
2484
|
+
"clones/guesty/SPEC.md tracks listing/reservation/guest handlers mutating StateEngine",
|
|
2485
|
+
"clones/guesty/SPEC.md tracks reservation create/cancel/modify lifecycle and read-after-write invariants"
|
|
2486
|
+
]
|
|
2487
|
+
}
|
|
2488
|
+
},
|
|
2489
|
+
{
|
|
2490
|
+
name: "hostaway",
|
|
2491
|
+
package: "@archal/clone-hostaway",
|
|
2492
|
+
path: "clones/hostaway",
|
|
2493
|
+
stage: "internal",
|
|
2494
|
+
transport: "rest",
|
|
2495
|
+
hostedRuntime: {
|
|
2496
|
+
enabled: true,
|
|
2497
|
+
requiresDist: true,
|
|
2498
|
+
requiresEmptySeed: true
|
|
2499
|
+
},
|
|
2500
|
+
cli: {
|
|
2501
|
+
bundleAssets: false,
|
|
2502
|
+
bundleToolSnapshot: false
|
|
2503
|
+
},
|
|
2504
|
+
routeProxy: {
|
|
2505
|
+
enabled: false,
|
|
2506
|
+
domains: []
|
|
2507
|
+
},
|
|
2508
|
+
seeds: {
|
|
2509
|
+
generatedCatalog: false,
|
|
2510
|
+
default: "empty"
|
|
2511
|
+
},
|
|
2512
|
+
smoke: {
|
|
2513
|
+
production: "none"
|
|
2514
|
+
},
|
|
2515
|
+
architecture: {
|
|
2516
|
+
class: "replay-shell",
|
|
2517
|
+
summary: "Current internal Hostaway package is a bootstrap scaffold with no registered tools or REST behavior; promote to replay-shell preview only after the Public API listing/reservation/calendar surface is harvested and replayed against a Hostaway account.",
|
|
2518
|
+
domainPrimitives: [
|
|
2519
|
+
"listing, reservation, and calendar read projections",
|
|
2520
|
+
"unified-inbox conversation overlay",
|
|
2521
|
+
"future webhook delivery behavior"
|
|
2522
|
+
],
|
|
2523
|
+
promotionEvidence: [
|
|
2524
|
+
"clones/hostaway/SPEC.md tracks listing/reservation/calendar handlers mutating StateEngine",
|
|
2525
|
+
"clones/hostaway/SPEC.md tracks reservation create/cancel/modify lifecycle and read-after-write invariants"
|
|
2526
|
+
]
|
|
2527
|
+
}
|
|
2397
2528
|
},
|
|
2398
2529
|
{
|
|
2399
2530
|
name: "hubspot",
|
|
@@ -2404,7 +2535,7 @@ var manifest_default = [
|
|
|
2404
2535
|
icon: "HS",
|
|
2405
2536
|
name: "HubSpot",
|
|
2406
2537
|
description: "CRM contacts, companies, deals, tickets, and engagements.",
|
|
2407
|
-
toolCount:
|
|
2538
|
+
toolCount: 44
|
|
2408
2539
|
},
|
|
2409
2540
|
transport: "rest",
|
|
2410
2541
|
hostedRuntime: {
|
|
@@ -2443,7 +2574,8 @@ var manifest_default = [
|
|
|
2443
2574
|
"clones/hubspot/SPEC.md tracks runtime recording reads removed from exported handlers",
|
|
2444
2575
|
"clones/hubspot/SPEC.md tracks CRM alias and association sequence invariants"
|
|
2445
2576
|
]
|
|
2446
|
-
}
|
|
2577
|
+
},
|
|
2578
|
+
opsCoverage: 99
|
|
2447
2579
|
},
|
|
2448
2580
|
{
|
|
2449
2581
|
name: "jira",
|
|
@@ -2506,7 +2638,8 @@ var manifest_default = [
|
|
|
2506
2638
|
"jira board",
|
|
2507
2639
|
"sprint",
|
|
2508
2640
|
"epic"
|
|
2509
|
-
]
|
|
2641
|
+
],
|
|
2642
|
+
opsCoverage: 80
|
|
2510
2643
|
},
|
|
2511
2644
|
{
|
|
2512
2645
|
name: "linear",
|
|
@@ -2517,7 +2650,7 @@ var manifest_default = [
|
|
|
2517
2650
|
icon: "LN",
|
|
2518
2651
|
name: "Linear",
|
|
2519
2652
|
description: "Issues, projects, teams, cycles, and workflows.",
|
|
2520
|
-
toolCount:
|
|
2653
|
+
toolCount: 53
|
|
2521
2654
|
},
|
|
2522
2655
|
transport: "both",
|
|
2523
2656
|
hostedRuntime: {
|
|
@@ -2561,7 +2694,8 @@ var manifest_default = [
|
|
|
2561
2694
|
"linear project",
|
|
2562
2695
|
"linear cycle",
|
|
2563
2696
|
"cycle"
|
|
2564
|
-
]
|
|
2697
|
+
],
|
|
2698
|
+
opsCoverage: 98
|
|
2565
2699
|
},
|
|
2566
2700
|
{
|
|
2567
2701
|
name: "mailchimp",
|
|
@@ -2646,6 +2780,47 @@ var manifest_default = [
|
|
|
2646
2780
|
"clones/ownerrez/SPEC.md tracks runtime recording-backed handlers replaced for the promoted reservation/payment slice",
|
|
2647
2781
|
"clones/ownerrez/SPEC.md tracks availability/payment invariants"
|
|
2648
2782
|
]
|
|
2783
|
+
},
|
|
2784
|
+
opsCoverage: 100
|
|
2785
|
+
},
|
|
2786
|
+
{
|
|
2787
|
+
name: "outlook",
|
|
2788
|
+
package: "@archal/clone-outlook",
|
|
2789
|
+
path: "clones/outlook",
|
|
2790
|
+
stage: "internal",
|
|
2791
|
+
transport: "rest",
|
|
2792
|
+
hostedRuntime: {
|
|
2793
|
+
enabled: true,
|
|
2794
|
+
requiresDist: true,
|
|
2795
|
+
requiresEmptySeed: true
|
|
2796
|
+
},
|
|
2797
|
+
cli: {
|
|
2798
|
+
bundleAssets: false,
|
|
2799
|
+
bundleToolSnapshot: false
|
|
2800
|
+
},
|
|
2801
|
+
routeProxy: {
|
|
2802
|
+
enabled: false,
|
|
2803
|
+
domains: []
|
|
2804
|
+
},
|
|
2805
|
+
seeds: {
|
|
2806
|
+
generatedCatalog: false,
|
|
2807
|
+
default: "empty"
|
|
2808
|
+
},
|
|
2809
|
+
smoke: {
|
|
2810
|
+
production: "none"
|
|
2811
|
+
},
|
|
2812
|
+
architecture: {
|
|
2813
|
+
class: "replay-shell",
|
|
2814
|
+
summary: "Outlook mail (Microsoft Graph v1.0, mail-only) replay-shell ported from the forge lineage: REST routes replay harvested Graph recordings over a StateEngine mail model; promote only after folder/message mutation invariants and broader Graph surface land.",
|
|
2815
|
+
domainPrimitives: [
|
|
2816
|
+
"mail folder hierarchy and well-known folder state",
|
|
2817
|
+
"message lifecycle state (draft, send, move, copy, delete)",
|
|
2818
|
+
"attachment state"
|
|
2819
|
+
],
|
|
2820
|
+
promotionEvidence: [
|
|
2821
|
+
"clones/outlook/SPEC.md tracks mail folder/message/attachment handlers mutating StateEngine state",
|
|
2822
|
+
"clones/outlook/SPEC.md tracks draft/send/move/copy/delete sequence invariants and reset determinism"
|
|
2823
|
+
]
|
|
2649
2824
|
}
|
|
2650
2825
|
},
|
|
2651
2826
|
{
|
|
@@ -2677,7 +2852,11 @@ var manifest_default = [
|
|
|
2677
2852
|
architecture: {
|
|
2678
2853
|
class: "redesign-before-expansion",
|
|
2679
2854
|
summary: "PostHog currently models admin resources and frozen insight/dashboard projections; event ingestion, query execution, and feature flag evaluation need a simulator contract before expansion.",
|
|
2680
|
-
domainPrimitives: [
|
|
2855
|
+
domainPrimitives: [
|
|
2856
|
+
"event ingestion",
|
|
2857
|
+
"query execution",
|
|
2858
|
+
"feature flag evaluation"
|
|
2859
|
+
],
|
|
2681
2860
|
redesignContract: "docs/internal/dev/clones/redesign-contracts/posthog.md"
|
|
2682
2861
|
}
|
|
2683
2862
|
},
|
|
@@ -2733,7 +2912,8 @@ var manifest_default = [
|
|
|
2733
2912
|
"clones/pricelabs/SPEC.md tracks runtime recording-backed handlers replaced for the promoted pricing/reservation slice",
|
|
2734
2913
|
"clones/pricelabs/SPEC.md tracks occupancy/rate/replay determinism invariants"
|
|
2735
2914
|
]
|
|
2736
|
-
}
|
|
2915
|
+
},
|
|
2916
|
+
opsCoverage: 100
|
|
2737
2917
|
},
|
|
2738
2918
|
{
|
|
2739
2919
|
name: "quickbooks",
|
|
@@ -2835,7 +3015,8 @@ var manifest_default = [
|
|
|
2835
3015
|
"reimbursement",
|
|
2836
3016
|
"fund",
|
|
2837
3017
|
"card spend"
|
|
2838
|
-
]
|
|
3018
|
+
],
|
|
3019
|
+
opsCoverage: null
|
|
2839
3020
|
},
|
|
2840
3021
|
{
|
|
2841
3022
|
name: "sendgrid",
|
|
@@ -2886,7 +3067,8 @@ var manifest_default = [
|
|
|
2886
3067
|
"clones/sendgrid/SPEC.md tracks runtime recording-backed handlers replaced for send/event/suppression behavior",
|
|
2887
3068
|
"clones/sendgrid/SPEC.md tracks send-to-event and suppression replay invariants"
|
|
2888
3069
|
]
|
|
2889
|
-
}
|
|
3070
|
+
},
|
|
3071
|
+
opsCoverage: 100
|
|
2890
3072
|
},
|
|
2891
3073
|
{
|
|
2892
3074
|
name: "sentry",
|
|
@@ -2897,7 +3079,7 @@ var manifest_default = [
|
|
|
2897
3079
|
icon: "SN",
|
|
2898
3080
|
name: "Sentry",
|
|
2899
3081
|
description: "Error monitoring across organizations, projects, teams, issues, events, releases, and DSN keys.",
|
|
2900
|
-
toolCount:
|
|
3082
|
+
toolCount: 34
|
|
2901
3083
|
},
|
|
2902
3084
|
transport: "rest",
|
|
2903
3085
|
hostedRuntime: {
|
|
@@ -2933,7 +3115,8 @@ var manifest_default = [
|
|
|
2933
3115
|
"release and time-window projections"
|
|
2934
3116
|
],
|
|
2935
3117
|
behaviorOwner: "src/domain/sentry-simulator.ts"
|
|
2936
|
-
}
|
|
3118
|
+
},
|
|
3119
|
+
opsCoverage: null
|
|
2937
3120
|
},
|
|
2938
3121
|
{
|
|
2939
3122
|
name: "slack",
|
|
@@ -2965,6 +3148,23 @@ var manifest_default = [
|
|
|
2965
3148
|
{
|
|
2966
3149
|
domain: "api.slack.com"
|
|
2967
3150
|
}
|
|
3151
|
+
],
|
|
3152
|
+
hardFailDomains: [
|
|
3153
|
+
{
|
|
3154
|
+
domain: "hooks.slack.com"
|
|
3155
|
+
},
|
|
3156
|
+
{
|
|
3157
|
+
domain: "files.slack.com"
|
|
3158
|
+
},
|
|
3159
|
+
{
|
|
3160
|
+
domain: "edgeapi.slack.com"
|
|
3161
|
+
},
|
|
3162
|
+
{
|
|
3163
|
+
domain: "wss-primary.slack.com"
|
|
3164
|
+
},
|
|
3165
|
+
{
|
|
3166
|
+
domain: "wss-backup.slack.com"
|
|
3167
|
+
}
|
|
2968
3168
|
]
|
|
2969
3169
|
},
|
|
2970
3170
|
seeds: {
|
|
@@ -2990,7 +3190,8 @@ var manifest_default = [
|
|
|
2990
3190
|
"send_message",
|
|
2991
3191
|
"slack message",
|
|
2992
3192
|
"direct message"
|
|
2993
|
-
]
|
|
3193
|
+
],
|
|
3194
|
+
opsCoverage: 100
|
|
2994
3195
|
},
|
|
2995
3196
|
{
|
|
2996
3197
|
name: "stripe",
|
|
@@ -3019,6 +3220,14 @@ var manifest_default = [
|
|
|
3019
3220
|
{
|
|
3020
3221
|
domain: "api.stripe.com"
|
|
3021
3222
|
}
|
|
3223
|
+
],
|
|
3224
|
+
hardFailDomains: [
|
|
3225
|
+
{
|
|
3226
|
+
domain: "files.stripe.com"
|
|
3227
|
+
},
|
|
3228
|
+
{
|
|
3229
|
+
domain: "uploads.stripe.com"
|
|
3230
|
+
}
|
|
3022
3231
|
]
|
|
3023
3232
|
},
|
|
3024
3233
|
seeds: {
|
|
@@ -3045,7 +3254,8 @@ var manifest_default = [
|
|
|
3045
3254
|
"subscription",
|
|
3046
3255
|
"invoice",
|
|
3047
3256
|
"charge"
|
|
3048
|
-
]
|
|
3257
|
+
],
|
|
3258
|
+
opsCoverage: null
|
|
3049
3259
|
},
|
|
3050
3260
|
{
|
|
3051
3261
|
name: "woocommerce",
|
|
@@ -3140,7 +3350,8 @@ var manifest_default = [
|
|
|
3140
3350
|
"sql query",
|
|
3141
3351
|
"database table",
|
|
3142
3352
|
"sql"
|
|
3143
|
-
]
|
|
3353
|
+
],
|
|
3354
|
+
opsCoverage: 100
|
|
3144
3355
|
},
|
|
3145
3356
|
{
|
|
3146
3357
|
name: "tavily",
|
|
@@ -3194,7 +3405,8 @@ var manifest_default = [
|
|
|
3194
3405
|
"clones/tavily/SPEC.md tracks runtime recording-backed handlers replaced for the promoted search/extract/research surface",
|
|
3195
3406
|
"clones/tavily/SPEC.md tracks search/extract/research replay determinism invariants"
|
|
3196
3407
|
]
|
|
3197
|
-
}
|
|
3408
|
+
},
|
|
3409
|
+
opsCoverage: 100
|
|
3198
3410
|
},
|
|
3199
3411
|
{
|
|
3200
3412
|
name: "typeform",
|
|
@@ -3280,7 +3492,8 @@ var manifest_default = [
|
|
|
3280
3492
|
"webhook registration state"
|
|
3281
3493
|
],
|
|
3282
3494
|
behaviorOwner: "src/domain/telegram-simulator.ts"
|
|
3283
|
-
}
|
|
3495
|
+
},
|
|
3496
|
+
opsCoverage: null
|
|
3284
3497
|
},
|
|
3285
3498
|
{
|
|
3286
3499
|
name: "twilio",
|
|
@@ -3327,7 +3540,8 @@ var manifest_default = [
|
|
|
3327
3540
|
"clones/twilio/SPEC.md tracks runtime recording-backed handlers replaced for the promoted message/call slice",
|
|
3328
3541
|
"clones/twilio/SPEC.md tracks delivery/status/webhook sequence invariants"
|
|
3329
3542
|
]
|
|
3330
|
-
}
|
|
3543
|
+
},
|
|
3544
|
+
opsCoverage: 92
|
|
3331
3545
|
},
|
|
3332
3546
|
{
|
|
3333
3547
|
name: "unipile",
|
|
@@ -3382,7 +3596,8 @@ var manifest_default = [
|
|
|
3382
3596
|
"clones/unipile/SPEC.md tracks runtime recording-backed handlers replaced for the promoted chat/provider surface",
|
|
3383
3597
|
"clones/unipile/SPEC.md tracks send/delivery/read/webhook sequence invariants"
|
|
3384
3598
|
]
|
|
3385
|
-
}
|
|
3599
|
+
},
|
|
3600
|
+
opsCoverage: 100
|
|
3386
3601
|
},
|
|
3387
3602
|
{
|
|
3388
3603
|
name: "webflow",
|
|
@@ -3393,9 +3608,9 @@ var manifest_default = [
|
|
|
3393
3608
|
icon: "WF",
|
|
3394
3609
|
name: "Webflow",
|
|
3395
3610
|
description: "Sites, pages, CMS collections, items, assets, forms, and webhooks.",
|
|
3396
|
-
toolCount:
|
|
3611
|
+
toolCount: 104
|
|
3397
3612
|
},
|
|
3398
|
-
transport: "
|
|
3613
|
+
transport: "both",
|
|
3399
3614
|
hostedRuntime: {
|
|
3400
3615
|
enabled: true,
|
|
3401
3616
|
requiresDist: true,
|
|
@@ -3424,26 +3639,17 @@ var manifest_default = [
|
|
|
3424
3639
|
production: "clone-surface"
|
|
3425
3640
|
},
|
|
3426
3641
|
architecture: {
|
|
3427
|
-
class: "
|
|
3428
|
-
summary: "Webflow
|
|
3429
|
-
|
|
3430
|
-
|
|
3431
|
-
"CMS collection/item overlays",
|
|
3432
|
-
"publish lifecycle captures"
|
|
3433
|
-
],
|
|
3434
|
-
promotionEvidence: [
|
|
3435
|
-
"clones/webflow/SPEC.md tracks staged/live publish projection state model",
|
|
3436
|
-
"clones/webflow/SPEC.md tracks runtime recording-backed handlers replaced for the promoted publish/CMS surface",
|
|
3437
|
-
"clones/webflow/SPEC.md tracks CMS publish/reset sequence invariants"
|
|
3438
|
-
]
|
|
3439
|
-
}
|
|
3642
|
+
class: "standard-core",
|
|
3643
|
+
summary: "Webflow Data API v2 slice models sites, collections, and users as deterministic StateEngine records with state-derived REST routes and a per-boot webhook store; Designer-side surfaces (form components, page DOM editing) and real publish delivery are not claimed."
|
|
3644
|
+
},
|
|
3645
|
+
opsCoverage: 100
|
|
3440
3646
|
}
|
|
3441
3647
|
];
|
|
3442
3648
|
var CLONE_MANIFEST = manifest_default;
|
|
3443
3649
|
var CLONE_NAMES = CLONE_MANIFEST.map((t) => t.name);
|
|
3444
3650
|
var CLONE_PACKAGES = CLONE_MANIFEST.map((t) => t.package);
|
|
3445
3651
|
|
|
3446
|
-
// ../../clones/core/dist/chunk-
|
|
3652
|
+
// ../../clones/core/dist/chunk-UB63UNGS.js
|
|
3447
3653
|
var CLONE_PREFIX_PATTERN = new RegExp(`^(${CLONE_NAMES.join("|")})_`, "i");
|
|
3448
3654
|
|
|
3449
3655
|
// ../../clones/core/dist/chunk-EZKTFYZI.js
|
|
@@ -3546,29 +3752,9 @@ import { spawn } from "child_process";
|
|
|
3546
3752
|
import { promises as fs } from "fs";
|
|
3547
3753
|
import { join, resolve as resolve2 } from "path";
|
|
3548
3754
|
import { tmpdir } from "os";
|
|
3549
|
-
|
|
3550
|
-
// src/url-resolution.ts
|
|
3551
|
-
function readFirstConfiguredApiBaseUrl(envVars) {
|
|
3552
|
-
for (const envVar of envVars) {
|
|
3553
|
-
const configured = trimEnv(envVar);
|
|
3554
|
-
if (!configured) {
|
|
3555
|
-
continue;
|
|
3556
|
-
}
|
|
3557
|
-
return normalizeApiBaseUrl(configured);
|
|
3558
|
-
}
|
|
3559
|
-
return null;
|
|
3560
|
-
}
|
|
3561
3755
|
function resolveArchalVitestApiBaseUrl(defaultBaseUrl) {
|
|
3562
|
-
return
|
|
3563
|
-
"ARCHAL_VITEST_API_URL",
|
|
3564
|
-
"ARCHAL_API_URL",
|
|
3565
|
-
"ARCHAL_API_BASE_URL",
|
|
3566
|
-
"ARCHAL_AUTH_URL",
|
|
3567
|
-
"ARCHAL_AUTH_BASE_URL"
|
|
3568
|
-
]) ?? defaultBaseUrl;
|
|
3756
|
+
return getConfiguredVitestApiBaseUrl(defaultBaseUrl);
|
|
3569
3757
|
}
|
|
3570
|
-
|
|
3571
|
-
// src/runtime/hosted-session-provider.ts
|
|
3572
3758
|
var COORDINATOR_LOCK_TIMEOUT_MS = 3e4;
|
|
3573
3759
|
var COORDINATOR_STALE_LOCK_MS = COORDINATOR_LOCK_TIMEOUT_MS;
|
|
3574
3760
|
var COORDINATOR_POLL_INTERVAL_MS = 50;
|
|
@@ -4218,6 +4404,20 @@ var VITEST_AUTH_LEASE_OPTIONS = {
|
|
|
4218
4404
|
};
|
|
4219
4405
|
|
|
4220
4406
|
// src/runtime/bootstrap.ts
|
|
4407
|
+
var ARCHAL_VITEST_CONFIG_ENV = "ARCHAL_VITEST_CONFIG";
|
|
4408
|
+
function readArchalVitestConfigFromEnv() {
|
|
4409
|
+
const encoded = process.env[ARCHAL_VITEST_CONFIG_ENV];
|
|
4410
|
+
if (!encoded) {
|
|
4411
|
+
throw new Error(`Missing ${ARCHAL_VITEST_CONFIG_ENV}. archalVitestProject() must set worker config before bootstrap.`);
|
|
4412
|
+
}
|
|
4413
|
+
return readArchalVitestConfig(encoded);
|
|
4414
|
+
}
|
|
4415
|
+
function readArchalVitestConfig(encoded) {
|
|
4416
|
+
if (!encoded) {
|
|
4417
|
+
throw new Error(`Missing ${ARCHAL_VITEST_CONFIG_ENV}. archalVitestProject() must set worker config before bootstrap.`);
|
|
4418
|
+
}
|
|
4419
|
+
return decodeConfig(encoded);
|
|
4420
|
+
}
|
|
4221
4421
|
var GLOBAL_RUNTIME_KEY = "__archalVitestRuntime";
|
|
4222
4422
|
var GLOBAL_SESSION_KEY = "__archalVitestSession";
|
|
4223
4423
|
var GLOBAL_CLEANUP_HANDLER_KEY = "__archalVitestRuntimeCleanupHandlerRegistered";
|
|
@@ -4656,9 +4856,9 @@ function getInstalledArchalVitestSession() {
|
|
|
4656
4856
|
|
|
4657
4857
|
export {
|
|
4658
4858
|
resolveRuntimeModule,
|
|
4859
|
+
assertSupportedArchalVitestServices,
|
|
4659
4860
|
ARCHAL_VITEST_CONFIG_ENV,
|
|
4660
4861
|
readArchalVitestConfig,
|
|
4661
|
-
assertSupportedArchalVitestServices,
|
|
4662
4862
|
fetchArchalClone,
|
|
4663
4863
|
resetArchalClones,
|
|
4664
4864
|
bootstrapArchalVitestRouting,
|