@synap-core/cli 1.8.0 → 1.11.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/dist/commands/agent-chat.d.ts +47 -0
- package/dist/commands/agent-chat.js +250 -0
- package/dist/commands/agent-chat.js.map +1 -0
- package/dist/commands/agent-run.js +3 -4
- package/dist/commands/agent-run.js.map +1 -1
- package/dist/commands/agents.js +85 -46
- package/dist/commands/agents.js.map +1 -1
- package/dist/commands/automation.js +2 -1
- package/dist/commands/automation.js.map +1 -1
- package/dist/commands/bridge-setup.d.ts +66 -0
- package/dist/commands/bridge-setup.js +1112 -0
- package/dist/commands/bridge-setup.js.map +1 -0
- package/dist/commands/cap-connections.d.ts +28 -0
- package/dist/commands/cap-connections.js +224 -0
- package/dist/commands/cap-connections.js.map +1 -0
- package/dist/commands/capability.d.ts +89 -0
- package/dist/commands/capability.js +1594 -0
- package/dist/commands/capability.js.map +1 -0
- package/dist/commands/centrality.d.ts +20 -0
- package/dist/commands/centrality.js +95 -0
- package/dist/commands/centrality.js.map +1 -0
- package/dist/commands/connect.d.ts +2 -0
- package/dist/commands/connect.js +16 -35
- package/dist/commands/connect.js.map +1 -1
- package/dist/commands/context.js +6 -7
- package/dist/commands/context.js.map +1 -1
- package/dist/commands/data-extra.d.ts +1 -0
- package/dist/commands/data-extra.js +41 -14
- package/dist/commands/data-extra.js.map +1 -1
- package/dist/commands/data.d.ts +4 -4
- package/dist/commands/data.js +254 -187
- package/dist/commands/data.js.map +1 -1
- package/dist/commands/diagnose.d.ts +20 -0
- package/dist/commands/diagnose.js +186 -0
- package/dist/commands/diagnose.js.map +1 -0
- package/dist/commands/digest.d.ts +17 -0
- package/dist/commands/digest.js +122 -0
- package/dist/commands/digest.js.map +1 -0
- package/dist/commands/discover.d.ts +2 -0
- package/dist/commands/discover.js +25 -8
- package/dist/commands/discover.js.map +1 -1
- package/dist/commands/doc.d.ts +14 -0
- package/dist/commands/doc.js +61 -4
- package/dist/commands/doc.js.map +1 -1
- package/dist/commands/doctor.d.ts +21 -0
- package/dist/commands/doctor.js +189 -0
- package/dist/commands/doctor.js.map +1 -0
- package/dist/commands/events.js +5 -2
- package/dist/commands/events.js.map +1 -1
- package/dist/commands/explain.d.ts +1 -1
- package/dist/commands/explain.js +18 -15
- package/dist/commands/explain.js.map +1 -1
- package/dist/commands/facet.d.ts +29 -0
- package/dist/commands/facet.js +113 -0
- package/dist/commands/facet.js.map +1 -0
- package/dist/commands/graph.js +7 -4
- package/dist/commands/graph.js.map +1 -1
- package/dist/commands/import.d.ts +38 -0
- package/dist/commands/import.js +471 -0
- package/dist/commands/import.js.map +1 -0
- package/dist/commands/init.js +35 -16
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/keys.js +3 -4
- package/dist/commands/keys.js.map +1 -1
- package/dist/commands/knowledge.d.ts +8 -0
- package/dist/commands/knowledge.js +308 -33
- package/dist/commands/knowledge.js.map +1 -1
- package/dist/commands/launch.d.ts +50 -0
- package/dist/commands/launch.js +790 -0
- package/dist/commands/launch.js.map +1 -0
- package/dist/commands/lens.d.ts +45 -0
- package/dist/commands/lens.js +386 -0
- package/dist/commands/lens.js.map +1 -0
- package/dist/commands/market-authoring.d.ts +45 -0
- package/dist/commands/market-authoring.js +225 -0
- package/dist/commands/market-authoring.js.map +1 -0
- package/dist/commands/market.d.ts +224 -0
- package/dist/commands/market.js +1643 -0
- package/dist/commands/market.js.map +1 -0
- package/dist/commands/mcp.d.ts +64 -0
- package/dist/commands/mcp.js +265 -0
- package/dist/commands/mcp.js.map +1 -0
- package/dist/commands/observe.js +14 -11
- package/dist/commands/observe.js.map +1 -1
- package/dist/commands/open.d.ts +21 -4
- package/dist/commands/open.js +45 -4
- package/dist/commands/open.js.map +1 -1
- package/dist/commands/pod.d.ts +100 -0
- package/dist/commands/pod.js +359 -0
- package/dist/commands/pod.js.map +1 -0
- package/dist/commands/pods.d.ts +15 -0
- package/dist/commands/pods.js +233 -17
- package/dist/commands/pods.js.map +1 -1
- package/dist/commands/proposals-actions.js +43 -3
- package/dist/commands/proposals-actions.js.map +1 -1
- package/dist/commands/purge.d.ts +23 -0
- package/dist/commands/purge.js +148 -0
- package/dist/commands/purge.js.map +1 -0
- package/dist/commands/raycast.d.ts +15 -0
- package/dist/commands/raycast.js +153 -0
- package/dist/commands/raycast.js.map +1 -0
- package/dist/commands/sessions.js +47 -22
- package/dist/commands/sessions.js.map +1 -1
- package/dist/commands/skill-manage.d.ts +21 -0
- package/dist/commands/skill-manage.js +195 -0
- package/dist/commands/skill-manage.js.map +1 -0
- package/dist/commands/skills-commands.js +2 -1
- package/dist/commands/skills-commands.js.map +1 -1
- package/dist/commands/skills.js +7 -4
- package/dist/commands/skills.js.map +1 -1
- package/dist/commands/status.d.ts +3 -1
- package/dist/commands/status.js +166 -14
- package/dist/commands/status.js.map +1 -1
- package/dist/commands/statusline.d.ts +24 -0
- package/dist/commands/statusline.js +450 -0
- package/dist/commands/statusline.js.map +1 -0
- package/dist/commands/subscribe.js +2 -2
- package/dist/commands/subscribe.js.map +1 -1
- package/dist/commands/template.d.ts +42 -0
- package/dist/commands/template.js +191 -0
- package/dist/commands/template.js.map +1 -0
- package/dist/commands/tools.d.ts +30 -0
- package/dist/commands/tools.js +315 -0
- package/dist/commands/tools.js.map +1 -0
- package/dist/commands/upload.d.ts +30 -0
- package/dist/commands/upload.js +155 -0
- package/dist/commands/upload.js.map +1 -0
- package/dist/commands/versions.d.ts +27 -0
- package/dist/commands/versions.js +277 -0
- package/dist/commands/versions.js.map +1 -0
- package/dist/commands/view.js +3 -2
- package/dist/commands/view.js.map +1 -1
- package/dist/commands/whoami.d.ts +21 -0
- package/dist/commands/whoami.js +129 -0
- package/dist/commands/whoami.js.map +1 -0
- package/dist/index.js +894 -60
- package/dist/index.js.map +1 -1
- package/dist/lib/approval-poll.d.ts +42 -0
- package/dist/lib/approval-poll.js +52 -0
- package/dist/lib/approval-poll.js.map +1 -0
- package/dist/lib/auth.d.ts +29 -6
- package/dist/lib/auth.js +105 -94
- package/dist/lib/auth.js.map +1 -1
- package/dist/lib/bundle-version.d.ts +11 -0
- package/dist/lib/bundle-version.js +33 -0
- package/dist/lib/bundle-version.js.map +1 -0
- package/dist/lib/capture-lane.d.ts +30 -12
- package/dist/lib/capture-lane.js +73 -14
- package/dist/lib/capture-lane.js.map +1 -1
- package/dist/lib/capture-structure.d.ts +123 -0
- package/dist/lib/capture-structure.js +57 -0
- package/dist/lib/capture-structure.js.map +1 -0
- package/dist/lib/cp-packages.d.ts +177 -0
- package/dist/lib/cp-packages.js +389 -0
- package/dist/lib/cp-packages.js.map +1 -0
- package/dist/lib/describe-lens.d.ts +46 -0
- package/dist/lib/describe-lens.js +33 -0
- package/dist/lib/describe-lens.js.map +1 -0
- package/dist/lib/hub-client.d.ts +91 -1
- package/dist/lib/hub-client.js +565 -22
- package/dist/lib/hub-client.js.map +1 -1
- package/dist/lib/id.d.ts +23 -0
- package/dist/lib/id.js +35 -0
- package/dist/lib/id.js.map +1 -0
- package/dist/lib/installed.d.ts +51 -0
- package/dist/lib/installed.js +70 -0
- package/dist/lib/installed.js.map +1 -0
- package/dist/lib/next-steps.d.ts +61 -0
- package/dist/lib/next-steps.js +146 -0
- package/dist/lib/next-steps.js.map +1 -0
- package/dist/lib/pod.d.ts +144 -22
- package/dist/lib/pod.js +302 -64
- package/dist/lib/pod.js.map +1 -1
- package/dist/lib/project-ref.d.ts +95 -0
- package/dist/lib/project-ref.js +144 -0
- package/dist/lib/project-ref.js.map +1 -0
- package/dist/lib/project.d.ts +35 -0
- package/dist/lib/project.js +39 -0
- package/dist/lib/project.js.map +1 -0
- package/dist/lib/session-lens.d.ts +33 -0
- package/dist/lib/session-lens.js +76 -0
- package/dist/lib/session-lens.js.map +1 -0
- package/dist/lib/skill-import.d.ts +40 -0
- package/dist/lib/skill-import.js +203 -0
- package/dist/lib/skill-import.js.map +1 -0
- package/dist/lib/skills-installer.d.ts +17 -6
- package/dist/lib/skills-installer.js +133 -19
- package/dist/lib/skills-installer.js.map +1 -1
- package/dist/lib/suite.d.ts +28 -0
- package/dist/lib/suite.js +29 -0
- package/dist/lib/suite.js.map +1 -0
- package/dist/lib/superwhisper-import.d.ts +40 -0
- package/dist/lib/superwhisper-import.js +389 -0
- package/dist/lib/superwhisper-import.js.map +1 -0
- package/dist/lib/targets.d.ts +49 -1
- package/dist/lib/targets.js +420 -288
- package/dist/lib/targets.js.map +1 -1
- package/dist/lib/template-file.d.ts +74 -0
- package/dist/lib/template-file.js +140 -0
- package/dist/lib/template-file.js.map +1 -0
- package/dist/lib/unwrapList.d.ts +1 -0
- package/dist/lib/unwrapList.js +20 -0
- package/dist/lib/unwrapList.js.map +1 -0
- package/dist/utils/logger.d.ts +2 -0
- package/dist/utils/logger.js +10 -2
- package/dist/utils/logger.js.map +1 -1
- package/node_modules/@synap/hub-rest-client/dist/index.cjs +414 -34
- package/node_modules/@synap/hub-rest-client/dist/index.d.cts +762 -22
- package/node_modules/@synap/hub-rest-client/dist/index.d.ts +762 -22
- package/node_modules/@synap/hub-rest-client/dist/index.js +414 -34
- package/node_modules/@synap/hub-rest-client/package.json +1 -1
- package/node_modules/@synap/hub-rest-client/src/client.ts +525 -37
- package/node_modules/@synap/hub-rest-client/src/index.ts +42 -0
- package/node_modules/@synap/hub-rest-client/src/setup.ts +57 -1
- package/node_modules/@synap/hub-rest-client/src/types.ts +697 -37
- package/package.json +11 -5
- package/skills/agent-os/SKILL.md +218 -0
- package/skills/manifest.json +5 -0
- package/skills/onboard/SKILL.md +193 -0
- package/skills/synap/SKILL.md +1284 -58
- package/skills/synap/_order.txt +37 -0
- package/skills/synap/_skill.yaml +24 -0
- package/skills/synap/authentication.md +10 -0
- package/skills/synap/automations.md +264 -0
- package/skills/synap/capabilities.md +107 -0
- package/skills/synap/capture.md +50 -142
- package/skills/synap/cli-operations.md +107 -0
- package/skills/synap/common-mistakes.md +13 -0
- package/skills/synap/content-os.md +83 -0
- package/skills/synap/creative-loop.md +43 -0
- package/skills/synap/crm.md +117 -0
- package/skills/synap/diagnostics.md +35 -0
- package/skills/synap/digesting-a-channel.md +63 -0
- package/skills/synap/document-embeds.md +123 -0
- package/skills/synap/escalation-ladder.md +71 -0
- package/skills/synap/focus-sessions.md +47 -0
- package/skills/synap/governance-rules.md +64 -0
- package/skills/synap/governance.md +6 -6
- package/skills/synap/graph-gardening.md +21 -0
- package/skills/synap/inline-patterns.md +38 -0
- package/skills/synap/lenses.md +38 -0
- package/skills/synap/linking-principle.md +39 -0
- package/skills/synap/linking.md +1 -0
- package/skills/synap/mental-model.md +45 -0
- package/skills/synap/more.md +7 -0
- package/skills/synap/multi-entity-capture.md +12 -0
- package/skills/synap/next-action.md +37 -0
- package/skills/synap/north-star.md +17 -0
- package/skills/synap/operating-mode-rules.md +45 -0
- package/skills/synap/operating-mode.md +9 -0
- package/skills/synap/quick-reference.md +67 -0
- package/skills/synap/reading.md +43 -0
- package/skills/synap/recap.md +21 -0
- package/skills/synap/reflexes.md +46 -0
- package/skills/synap/response-style.md +21 -0
- package/skills/synap/scope.md +13 -0
- package/skills/synap/showing.md +17 -0
- package/skills/synap/user-model.md +25 -0
- package/skills/synap/viewframe-cells.md +290 -0
- package/skills/synap/work-flow.md +113 -0
- package/skills/synap/worked-examples.md +74 -0
- package/skills/synap/workspace-design.md +45 -0
- package/skills/synap/workspace-edges.md +49 -0
- package/skills/synap/writes.md +213 -0
- package/skills/synap-app/SKILL.md +319 -0
- package/skills/synap-app/_order.txt +5 -0
- package/skills/synap-app/_skill.yaml +20 -0
- package/skills/synap-app/creating-the-base-app.md +64 -0
- package/skills/synap-app/governance.md +42 -0
- package/skills/synap-app/install-commands.md +55 -0
- package/skills/synap-app/overview.md +50 -0
- package/skills/synap-app/using-the-sdk.md +73 -0
- package/skills/synap-market/SKILL.md +335 -0
- package/skills/synap-market/_order.txt +5 -0
- package/skills/synap-market/_skill.yaml +24 -0
- package/skills/synap-market/author-and-publish.md +75 -0
- package/skills/synap-market/discover-and-fetch.md +59 -0
- package/skills/synap-market/governance-and-catalog.md +56 -0
- package/skills/synap-market/install.md +55 -0
- package/skills/synap-market/overview.md +51 -0
- package/skills/synap-schema/SKILL.md +97 -6
- package/skills/synap-schema/_order.txt +13 -0
- package/skills/synap-schema/_skill.yaml +22 -0
- package/skills/synap-schema/before-you-touch.md +14 -0
- package/skills/synap-schema/common-mistakes.md +9 -0
- package/skills/synap-schema/creating-profiles.md +17 -0
- package/skills/synap-schema/discover-profiles.md +24 -0
- package/skills/synap-schema/entity-scope.md +8 -0
- package/skills/synap-schema/extend-vs-create.md +31 -0
- package/skills/synap-schema/more.md +6 -0
- package/skills/synap-schema/overlay-properties.md +22 -0
- package/skills/synap-schema/profiles.md +3 -0
- package/skills/synap-schema/property-defs.md +29 -0
- package/skills/synap-schema/read-before-write.md +50 -0
- package/skills/synap-schema/relations.md +18 -0
- package/skills/synap-schema/worked-example.md +30 -0
- package/skills/synap-ui/SKILL.md +26 -2
- package/skills/synap-ui/_order.txt +13 -0
- package/skills/synap-ui/_skill.yaml +23 -0
- package/skills/synap-ui/ai-companion.md +27 -0
- package/skills/synap-ui/arranging-bento.md +8 -0
- package/skills/synap-ui/before-you-build.md +20 -0
- package/skills/synap-ui/bento-layouts.md +35 -0
- package/skills/synap-ui/common-mistakes.md +10 -0
- package/skills/synap-ui/creating-views.md +26 -0
- package/skills/synap-ui/four-builds.md +24 -0
- package/skills/synap-ui/more.md +7 -0
- package/skills/synap-ui/proposing-vs-extending.md +11 -0
- package/skills/synap-ui/view-list.md +24 -0
- package/skills/synap-ui/views.md +3 -0
- package/skills/synap-ui/worked-example.md +18 -0
- package/skills/synap-ui/workspaces.md +47 -0
- package/templates/automations/bookmark-enrichment.automation.json +44 -0
- package/templates/automations/mail-feed.automation.json +86 -0
- package/templates/automations/url-bookmark-capture.automation.json +70 -0
- package/templates/skills/README.md +21 -0
- package/templates/skills/authoring-automations/SKILL.md +95 -0
- package/templates/skills/authoring-automations/reference/node-matrix.md +49 -0
- package/templates/skills/authoring-capabilities/SKILL.md +93 -0
- package/templates/skills/authoring-capabilities/reference/template-anatomy.md +70 -0
- package/templates/skills/authoring-playbooks/SKILL.md +102 -0
- package/templates/skills/authoring-playbooks/reference/stages-contract.md +35 -0
- package/templates/skills/authoring-playbooks/reference/worked-example.md +64 -0
- package/templates/skills/bookmark-enrichment/SKILL.md +40 -0
- package/templates/skills/coordinating-agents/SKILL.md +32 -0
- package/templates/skills/coordinating-branches/SKILL.md +27 -0
- package/templates/skills/mapping-the-server/SKILL.md +54 -0
- package/templates/skills/reading-client-progress/SKILL.md +65 -0
- package/templates/skills/routing-to-channels/SKILL.md +54 -0
- package/templates/skills/stellar-scf-grants-advisor/ASSOCIATE-CHEATSHEET.md +133 -0
- package/templates/skills/stellar-scf-grants-advisor/ASSOCIATE-ONBOARDING-GUIDE.md +761 -0
- package/templates/skills/stellar-scf-grants-advisor/CLIENT-FAQ.md +181 -0
- package/templates/skills/stellar-scf-grants-advisor/PARTNER-HANDOVER.md +130 -0
- package/templates/skills/stellar-scf-grants-advisor/SKILL.md +102 -0
- package/templates/skills/stellar-scf-grants-advisor/examples/README.md +43 -0
- package/templates/skills/stellar-scf-grants-advisor/examples/chat-summary-templates.md +158 -0
- package/templates/skills/stellar-scf-grants-advisor/examples/corpus-comparable-rows.md +136 -0
- package/templates/skills/stellar-scf-grants-advisor/examples/q10-team-rewrites.md +109 -0
- package/templates/skills/stellar-scf-grants-advisor/examples/q2-description-rewrites.md +88 -0
- package/templates/skills/stellar-scf-grants-advisor/examples/q6-integration-rewrites.md +107 -0
- package/templates/skills/stellar-scf-grants-advisor/examples/tranche-structures.md +176 -0
- package/templates/skills/stellar-scf-grants-advisor/reference/01-methodology.md +96 -0
- package/templates/skills/stellar-scf-grants-advisor/reference/02-scoring-framework.md +199 -0
- package/templates/skills/stellar-scf-grants-advisor/reference/03-rejection-patterns.md +241 -0
- package/templates/skills/stellar-scf-grants-advisor/reference/04-winner-patterns.md +120 -0
- package/templates/skills/stellar-scf-grants-advisor/reference/05-comeback-patterns.md +92 -0
- package/templates/skills/stellar-scf-grants-advisor/reference/06-budget-benchmarks.md +125 -0
- package/templates/skills/stellar-scf-grants-advisor/reference/07-integration-list.md +147 -0
- package/templates/skills/stellar-scf-grants-advisor/reference/08-abstract-fields.md +258 -0
- package/templates/skills/stellar-scf-grants-advisor/reference/09-build-fields.md +259 -0
- package/templates/skills/stellar-scf-grants-advisor/reference/10-corpus-winners.md +135 -0
- package/templates/skills/stellar-scf-grants-advisor/reference/11-corpus-rejects.md +267 -0
- package/templates/skills/stellar-scf-grants-advisor/reference/12-client-communication.md +131 -0
- package/templates/skills/stellar-scf-grants-advisor/reference/13-excel-output-spec.md +199 -0
- package/templates/skills/stellar-scf-grants-advisor/reference/14-worked-examples.md +160 -0
- package/templates/skills/stellar-scf-grants-advisor/templates/abstract-review-builder.py +253 -0
- package/templates/skills/stellar-scf-grants-advisor/templates/build-review-builder.py +213 -0
- package/dist/commands/connectors.d.ts +0 -31
- package/dist/commands/connectors.js +0 -276
- package/dist/commands/connectors.js.map +0 -1
- package/dist/commands/finish.d.ts +0 -25
- package/dist/commands/finish.js +0 -274
- package/dist/commands/finish.js.map +0 -1
- package/dist/commands/openclaw.d.ts +0 -40
- package/dist/commands/openclaw.js +0 -1148
- package/dist/commands/openclaw.js.map +0 -1
- package/dist/commands/security-audit.d.ts +0 -12
- package/dist/commands/security-audit.js +0 -100
- package/dist/commands/security-audit.js.map +0 -1
- package/dist/lib/hardening.d.ts +0 -18
- package/dist/lib/hardening.js +0 -214
- package/dist/lib/hardening.js.map +0 -1
|
@@ -19,9 +19,58 @@ import chalk from "chalk";
|
|
|
19
19
|
import * as readline from "node:readline/promises";
|
|
20
20
|
import { stdin as input, stdout as output } from "node:process";
|
|
21
21
|
import { log } from "../utils/logger.js";
|
|
22
|
-
import { resolveHubConfig, resolveUserId, hubPost, } from "../lib/hub-client.js";
|
|
22
|
+
import { resolveHubConfig, resolveUserId, hubPost, hubGet, readActiveSessionId, renderHubError, } from "../lib/hub-client.js";
|
|
23
|
+
import { unwrapList } from "../lib/unwrapList.js";
|
|
23
24
|
import { getAgentWorkspaceRouting } from "../lib/pod.js";
|
|
24
|
-
import { laneFromSource, resolveWorkspaceName, formatLaneLine, laneJsonFields, } from "../lib/capture-lane.js";
|
|
25
|
+
import { laneFromSource, resolveWorkspaceName, formatLaneLine, laneJsonFields, writeGovernance, } from "../lib/capture-lane.js";
|
|
26
|
+
import { isDegraded, degradedMessage, readCaptureExecute, } from "../lib/capture-structure.js";
|
|
27
|
+
import { UUID_RE } from "../lib/id.js";
|
|
28
|
+
// ─── Client-side length guard ────────────────────────────────────────────────
|
|
29
|
+
// Captures used to die SERVER-SIDE with a raw "String length 1404 > maximum
|
|
30
|
+
// 1000" after the user had already composed + confirmed — surface the same
|
|
31
|
+
// caps client-side, BEFORE sending, so a too-long capture gets a heads-up
|
|
32
|
+
// instead of a mid-flight rejection. Not a hard block: --yes/--json paths and
|
|
33
|
+
// a declined truncation still send as-is and let the pod be the final judge
|
|
34
|
+
// (the caps below mirror the pod's contract but are not re-validated here).
|
|
35
|
+
//
|
|
36
|
+
// Mirrors:
|
|
37
|
+
// - synap-backend CaptureStructureRequestSchema.text
|
|
38
|
+
// (packages/api/src/routers/hub-protocol/rest/_codecs/misc.ts)
|
|
39
|
+
// - the `knowledge` profile's ek_claim/ek_why/ek_evidence property defs
|
|
40
|
+
// (packages/database/src/utils/ensure-system-profiles.ts)
|
|
41
|
+
const SMART_TEXT_MAX = 8000;
|
|
42
|
+
const CLAIM_MAX = 1000;
|
|
43
|
+
const WHY_MAX = 5000;
|
|
44
|
+
const EVIDENCE_MAX = 2000;
|
|
45
|
+
/**
|
|
46
|
+
* Warn when `value` exceeds `max`, and offer to truncate (interactive) or
|
|
47
|
+
* proceed as-is. Returns the value to send (possibly truncated), or
|
|
48
|
+
* `undefined` if the user aborted.
|
|
49
|
+
*
|
|
50
|
+
* Non-interactive (`--yes` / `--json`): warns to stderr and proceeds unchanged
|
|
51
|
+
* — this is a heads-up, not a client-side hard block; the pod is still free to
|
|
52
|
+
* accept a since-raised cap.
|
|
53
|
+
*/
|
|
54
|
+
async function guardLength(label, value, max, opts) {
|
|
55
|
+
if (value.length <= max)
|
|
56
|
+
return value;
|
|
57
|
+
if (opts.yes || opts.json) {
|
|
58
|
+
log.warn(`${label} is ${value.length} chars (pod limit ~${max}) — sending as-is; the pod may reject it.`);
|
|
59
|
+
return value;
|
|
60
|
+
}
|
|
61
|
+
log.warn(`${label} is ${value.length} chars — the pod's limit is ~${max}.`);
|
|
62
|
+
const rl = readline.createInterface({ input, output });
|
|
63
|
+
try {
|
|
64
|
+
const answer = await rl.question(chalk.bold(` Truncate to ${max} chars and continue? [Y/n/(a)bort] `));
|
|
65
|
+
const a = answer.trim().toLowerCase();
|
|
66
|
+
if (a === "n" || a === "abort" || a === "a")
|
|
67
|
+
return undefined;
|
|
68
|
+
return value.slice(0, max);
|
|
69
|
+
}
|
|
70
|
+
finally {
|
|
71
|
+
rl.close();
|
|
72
|
+
}
|
|
73
|
+
}
|
|
25
74
|
/**
|
|
26
75
|
* Resolve the workspace for a DOMAIN capture (the `knowledge` entity, the Work
|
|
27
76
|
* lane). Knowledge is workspace-scoped, so the destination IS the separation:
|
|
@@ -49,6 +98,66 @@ async function resolveKnowledgeWorkspace(opts, _cfg, activeWorkspaceId) {
|
|
|
49
98
|
source: activeWorkspaceId ? "active" : "active (run `synap use <id>` to set a workspace)",
|
|
50
99
|
};
|
|
51
100
|
}
|
|
101
|
+
/**
|
|
102
|
+
* Resolve a `--project` value (id or name) to a project id on the active pod.
|
|
103
|
+
* Mirrors `synap import`'s resolveProjectArg — same shape, same "not found"
|
|
104
|
+
* wording, kept local here since neither command shares a project-resolution
|
|
105
|
+
* lib yet. Throws on no match so a typo'd project name fails loud instead of
|
|
106
|
+
* silently dropping the pin.
|
|
107
|
+
*/
|
|
108
|
+
async function resolveProjectArg(value, cfg) {
|
|
109
|
+
if (UUID_RE.test(value))
|
|
110
|
+
return value;
|
|
111
|
+
const res = (await hubGet("/projects", {}, cfg));
|
|
112
|
+
const list = unwrapList(res, ["projects"]);
|
|
113
|
+
const match = list.find((p) => String(p.name ?? "").toLowerCase() === value.toLowerCase());
|
|
114
|
+
if (!match) {
|
|
115
|
+
const names = list.map((p) => String(p.name ?? p.id)).join(", ");
|
|
116
|
+
throw new Error(`Project '${value}' not found.${names ? ` Available: ${names}` : ""}`);
|
|
117
|
+
}
|
|
118
|
+
return String(match.id);
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Render the pod's project-link receipt honestly — never a bare "✓ stored"
|
|
122
|
+
* that hides a dropped project coordinate. Read DEFENSIVELY: the two write
|
|
123
|
+
* doors this command uses shape their receipt differently —
|
|
124
|
+
* - POST /capture/execute → `res.project = { projectId, rung, status }`
|
|
125
|
+
* - POST /entities → `res.writeReceipt.projectId` (present only once
|
|
126
|
+
* applied — omitted while the write is still a pending proposal)
|
|
127
|
+
* and the exact field name may still shift as the backend's receipt work
|
|
128
|
+
* lands, so this checks both shapes rather than assuming one.
|
|
129
|
+
*/
|
|
130
|
+
function renderProjectReceipt(res, requestedProjectId, isProposed) {
|
|
131
|
+
if (!requestedProjectId)
|
|
132
|
+
return;
|
|
133
|
+
const captureProject = res.project;
|
|
134
|
+
if (captureProject?.projectId) {
|
|
135
|
+
if (captureProject.status === "linked") {
|
|
136
|
+
log.dim(` → linked to project ${captureProject.projectId.slice(0, 8)}`);
|
|
137
|
+
}
|
|
138
|
+
else if (captureProject.status === "proposed") {
|
|
139
|
+
log.dim(` → project ${captureProject.projectId.slice(0, 8)} proposed (advisory — awaiting confirm, not yet linked)`);
|
|
140
|
+
}
|
|
141
|
+
else {
|
|
142
|
+
log.dim(` → project ${captureProject.projectId.slice(0, 8)} (${captureProject.status ?? "unknown"})`);
|
|
143
|
+
}
|
|
144
|
+
return;
|
|
145
|
+
}
|
|
146
|
+
const writeReceipt = res.writeReceipt;
|
|
147
|
+
if (writeReceipt?.projectId) {
|
|
148
|
+
log.dim(` → linked to project ${writeReceipt.projectId.slice(0, 8)}`);
|
|
149
|
+
return;
|
|
150
|
+
}
|
|
151
|
+
if (isProposed) {
|
|
152
|
+
// The whole write is pending review — the project link rides along with
|
|
153
|
+
// it and applies on approval, not dropped.
|
|
154
|
+
log.dim(` → project ${requestedProjectId.slice(0, 8)} will link on approval (write is pending review)`);
|
|
155
|
+
return;
|
|
156
|
+
}
|
|
157
|
+
// A project pin was sent but no receipt confirms it — say so plainly rather
|
|
158
|
+
// than letting a silent drop look like success.
|
|
159
|
+
log.dim(` → project NOT linked (pod did not confirm ${requestedProjectId.slice(0, 8)} — it may not be reachable from this workspace)`);
|
|
160
|
+
}
|
|
52
161
|
/** Slugify free text into a knowledge_keys slug fragment. */
|
|
53
162
|
function slugify(text) {
|
|
54
163
|
return text
|
|
@@ -101,12 +210,14 @@ async function captureGlobalRunbook(opts, cfg, authorUserId) {
|
|
|
101
210
|
log.dim(` key: ${key}`);
|
|
102
211
|
console.log(" " + formatLaneLine(report));
|
|
103
212
|
}
|
|
213
|
+
// ─── Smart capture mode (no --type) ──────────────────────────────────────────
|
|
214
|
+
// Structure/execute wire shapes + the degraded/execute interpreters are shared
|
|
215
|
+
// with `synap import` in lib/capture-structure.ts (ONE mirror, no drift).
|
|
104
216
|
/** Render the /capture/structure result as a compact human-readable summary. */
|
|
105
217
|
function renderStructureResult(result) {
|
|
106
|
-
const
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
}
|
|
218
|
+
const proposals = result.proposals ?? [];
|
|
219
|
+
const relations = result.relations ?? [];
|
|
220
|
+
const followUp = result.followUp;
|
|
110
221
|
if (proposals.length === 0) {
|
|
111
222
|
log.dim("No entity proposals extracted.");
|
|
112
223
|
return;
|
|
@@ -138,17 +249,49 @@ function renderStructureResult(result) {
|
|
|
138
249
|
log.blank();
|
|
139
250
|
log.dim(` ${relations.length} relation${relations.length !== 1 ? "s" : ""} will be created.`);
|
|
140
251
|
}
|
|
141
|
-
if (
|
|
252
|
+
if (result.targetWorkspaceId || result.targetProjectId) {
|
|
142
253
|
log.blank();
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
254
|
+
if (result.targetWorkspaceId) {
|
|
255
|
+
const conf = typeof result.targetWorkspaceConfidence === "number"
|
|
256
|
+
? ` (${Math.round(result.targetWorkspaceConfidence * 100)}%)`
|
|
257
|
+
: "";
|
|
258
|
+
log.dim(` → workspace: ${result.targetWorkspaceId}${conf}`);
|
|
259
|
+
if (result.targetWorkspaceReason) {
|
|
260
|
+
log.dim(` ${result.targetWorkspaceReason.slice(0, 90)}`);
|
|
261
|
+
}
|
|
262
|
+
}
|
|
263
|
+
if (result.targetProjectId) {
|
|
264
|
+
const conf = typeof result.targetProjectConfidence === "number"
|
|
265
|
+
? ` (${Math.round(result.targetProjectConfidence * 100)}%)`
|
|
266
|
+
: "";
|
|
267
|
+
log.dim(` → project: ${result.targetProjectId}${conf}`);
|
|
268
|
+
if (result.targetProjectReason) {
|
|
269
|
+
log.dim(` ${result.targetProjectReason.slice(0, 90)}`);
|
|
270
|
+
}
|
|
271
|
+
}
|
|
272
|
+
}
|
|
273
|
+
// followUp may be a bare string (previously dropped — the `.question` guard
|
|
274
|
+
// never matched) or a { question, suggestions[] } object (chips previously
|
|
275
|
+
// rendered as "[object Object]"). Handle both; render each chip by its label.
|
|
276
|
+
if (followUp) {
|
|
277
|
+
const question = typeof followUp === "string" ? followUp : followUp.question;
|
|
278
|
+
if (question) {
|
|
279
|
+
log.blank();
|
|
280
|
+
log.info(`Follow-up: ${question}`);
|
|
281
|
+
const chips = typeof followUp === "string" ? [] : followUp.suggestions ?? [];
|
|
282
|
+
for (const c of chips) {
|
|
283
|
+
log.dim(` · ${c.label ?? c.value}`);
|
|
147
284
|
}
|
|
148
285
|
}
|
|
149
286
|
}
|
|
150
287
|
}
|
|
151
|
-
async function runSmartCapture(
|
|
288
|
+
async function runSmartCapture(rawText, opts) {
|
|
289
|
+
const guarded = await guardLength("Capture text", rawText, SMART_TEXT_MAX, opts);
|
|
290
|
+
if (guarded === undefined) {
|
|
291
|
+
log.dim("Aborted.");
|
|
292
|
+
return;
|
|
293
|
+
}
|
|
294
|
+
const text = guarded;
|
|
152
295
|
const cfg = await resolveHubConfig();
|
|
153
296
|
const userId = await resolveUserId(cfg);
|
|
154
297
|
const { workspaceId, source } = await resolveKnowledgeWorkspace(opts, cfg, cfg.workspaceId);
|
|
@@ -158,9 +301,67 @@ async function runSmartCapture(text, opts) {
|
|
|
158
301
|
" synap use <workspace-id> (manual override)"));
|
|
159
302
|
process.exit(1);
|
|
160
303
|
}
|
|
304
|
+
// Project pin: explicit --project (id or name) wins; otherwise the ambient
|
|
305
|
+
// lens (SYNAP_PROJECT_ID / the active Claude session's pinned project,
|
|
306
|
+
// already resolved into cfg.projectId by resolveHubConfig).
|
|
307
|
+
let projectId;
|
|
308
|
+
try {
|
|
309
|
+
projectId = opts.project ? await resolveProjectArg(opts.project, cfg) : cfg.projectId;
|
|
310
|
+
}
|
|
311
|
+
catch (e) {
|
|
312
|
+
console.error(chalk.red(e.message));
|
|
313
|
+
process.exit(1);
|
|
314
|
+
}
|
|
161
315
|
// 1. Structure
|
|
162
|
-
const
|
|
316
|
+
const smartSessionId = opts.session ? readActiveSessionId() : undefined;
|
|
317
|
+
const structureBody = { userId, text, workspaceId, ...(smartSessionId ? { sessionId: smartSessionId } : {}) };
|
|
163
318
|
const structureRes = await hubPost("/capture/structure", structureBody, cfg);
|
|
319
|
+
// Degraded: the IS structurer is down. The server returns a raw `item`
|
|
320
|
+
// stand-in, but we create nothing (browser does the same via
|
|
321
|
+
// offlineFallback:false) — tell the user, don't silently downgrade the
|
|
322
|
+
// capture into an unstructured blob behind a success line.
|
|
323
|
+
if (isDegraded(structureRes)) {
|
|
324
|
+
if (opts.json) {
|
|
325
|
+
console.log(JSON.stringify({
|
|
326
|
+
degraded: true,
|
|
327
|
+
degradedReason: structureRes.degradedReason ?? null,
|
|
328
|
+
created: 0,
|
|
329
|
+
message: degradedMessage(structureRes),
|
|
330
|
+
}, null, 2));
|
|
331
|
+
}
|
|
332
|
+
else {
|
|
333
|
+
log.warn(degradedMessage(structureRes));
|
|
334
|
+
}
|
|
335
|
+
return;
|
|
336
|
+
}
|
|
337
|
+
// Explicit --workspace is a deliberate pin: send it as-is, no AI routing hints.
|
|
338
|
+
// Otherwise forward the AI's routing signal and let the backend decide
|
|
339
|
+
// (auto = AI target wins over ambient when confidence is high enough AND the
|
|
340
|
+
// user is a member).
|
|
341
|
+
const isExplicitOverride = Boolean(opts.workspace);
|
|
342
|
+
const routingFields = isExplicitOverride
|
|
343
|
+
? {}
|
|
344
|
+
: {
|
|
345
|
+
workspaceRouting: "auto",
|
|
346
|
+
aiWorkspaceId: structureRes.targetWorkspaceId,
|
|
347
|
+
aiWorkspaceConfidence: structureRes.targetWorkspaceConfidence,
|
|
348
|
+
aiWorkspaceReason: structureRes.targetWorkspaceReason,
|
|
349
|
+
};
|
|
350
|
+
// Project: the explicit pin (--project / ambient lens) is the ONE
|
|
351
|
+
// deterministic field and always wins when present. The AI's own guess is
|
|
352
|
+
// forwarded ONLY as advisory (aiProjectId) — never promoted to the
|
|
353
|
+
// deterministic `projectId` field. That promotion was a real bug here
|
|
354
|
+
// (an AI guess would auto-link and widen cross-workspace access before the
|
|
355
|
+
// user ever confirmed it); the backend's aiProjectId path records it as a
|
|
356
|
+
// suggestion instead and never auto-links it.
|
|
357
|
+
if (projectId) {
|
|
358
|
+
routingFields.projectId = projectId;
|
|
359
|
+
}
|
|
360
|
+
else if (structureRes.targetProjectId) {
|
|
361
|
+
routingFields.aiProjectId = structureRes.targetProjectId;
|
|
362
|
+
routingFields.aiProjectConfidence = structureRes.targetProjectConfidence;
|
|
363
|
+
routingFields.aiProjectReason = structureRes.targetProjectReason;
|
|
364
|
+
}
|
|
164
365
|
if (opts.json) {
|
|
165
366
|
// --json without --yes: print structure result and exit
|
|
166
367
|
if (!opts.yes) {
|
|
@@ -171,11 +372,18 @@ async function runSmartCapture(text, opts) {
|
|
|
171
372
|
const executeRes = await hubPost("/capture/execute", {
|
|
172
373
|
userId,
|
|
173
374
|
workspaceId,
|
|
375
|
+
...(smartSessionId ? { sessionId: smartSessionId } : {}),
|
|
376
|
+
...routingFields,
|
|
174
377
|
entities: structureRes.proposals,
|
|
175
378
|
relations: structureRes.relations ?? [],
|
|
176
379
|
}, cfg);
|
|
177
380
|
const report = await buildSmartLaneReport(executeRes, workspaceId, source, cfg);
|
|
178
|
-
console.log(JSON.stringify({
|
|
381
|
+
console.log(JSON.stringify({
|
|
382
|
+
structure: structureRes,
|
|
383
|
+
execute: executeRes,
|
|
384
|
+
...(projectId ? { requestedProjectId: projectId } : {}),
|
|
385
|
+
...laneJsonFields(report),
|
|
386
|
+
}, null, 2));
|
|
179
387
|
return;
|
|
180
388
|
}
|
|
181
389
|
// 2. Render proposals
|
|
@@ -204,33 +412,49 @@ async function runSmartCapture(text, opts) {
|
|
|
204
412
|
const executeRes = await hubPost("/capture/execute", {
|
|
205
413
|
userId,
|
|
206
414
|
workspaceId,
|
|
415
|
+
...(smartSessionId ? { sessionId: smartSessionId } : {}),
|
|
416
|
+
...routingFields,
|
|
207
417
|
entities: structureRes.proposals,
|
|
208
418
|
relations: structureRes.relations ?? [],
|
|
209
419
|
}, cfg);
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
log.success(`${created} entr${created !== 1 ? "ies" : "y"} created.`);
|
|
214
|
-
if (executeRes.relationsCreated) {
|
|
215
|
-
log.dim(` ${executeRes.relationsCreated} relation${Number(executeRes.relationsCreated) !== 1 ? "s" : ""} created.`);
|
|
216
|
-
}
|
|
420
|
+
// Report what the pod ACTUALLY returned — applied vs proposed vs
|
|
421
|
+
// nothing-new — never the planned proposal count.
|
|
422
|
+
const outcome = readCaptureExecute(executeRes);
|
|
217
423
|
const report = await buildSmartLaneReport(executeRes, workspaceId, source, cfg);
|
|
424
|
+
if (outcome.proposed) {
|
|
425
|
+
log.info("Capture proposed — under review, not yet stored.");
|
|
426
|
+
if (outcome.proposalId)
|
|
427
|
+
log.dim(` proposal: ${outcome.proposalId}`);
|
|
428
|
+
if (outcome.reviewUrl)
|
|
429
|
+
log.dim(` review: ${outcome.reviewUrl}`);
|
|
430
|
+
}
|
|
431
|
+
else {
|
|
432
|
+
const n = outcome.entitiesCreated;
|
|
433
|
+
log.success(`${n} entr${n !== 1 ? "ies" : "y"} created.`);
|
|
434
|
+
if (outcome.entitiesLinked) {
|
|
435
|
+
log.dim(` ${outcome.entitiesLinked} linked to existing entit${outcome.entitiesLinked !== 1 ? "ies" : "y"}.`);
|
|
436
|
+
}
|
|
437
|
+
if (outcome.relationsCreated) {
|
|
438
|
+
log.dim(` ${outcome.relationsCreated} relation${outcome.relationsCreated !== 1 ? "s" : ""} created.`);
|
|
439
|
+
}
|
|
440
|
+
if (outcome.movedToWorkspace) {
|
|
441
|
+
log.dim(` → filed into workspace ${outcome.movedToWorkspace}`);
|
|
442
|
+
}
|
|
443
|
+
}
|
|
218
444
|
console.log(" " + formatLaneLine(report));
|
|
445
|
+
renderProjectReceipt(executeRes, projectId, outcome.proposed);
|
|
219
446
|
}
|
|
220
447
|
/**
|
|
221
|
-
* Build the lane report for a smart-capture execute response.
|
|
222
|
-
*
|
|
223
|
-
*
|
|
448
|
+
* Build the lane report for a smart-capture execute response. Governance
|
|
449
|
+
* (auto vs proposed) is derived by the ONE shared interpreter so this doesn't
|
|
450
|
+
* re-implement a third detector.
|
|
224
451
|
*/
|
|
225
452
|
async function buildSmartLaneReport(executeRes, workspaceId, source, cfg) {
|
|
226
|
-
const isProposed = executeRes.status === "proposed" ||
|
|
227
|
-
Boolean(executeRes.proposalId) ||
|
|
228
|
-
Number(executeRes.proposalsCreated ?? 0) > 0;
|
|
229
453
|
return {
|
|
230
454
|
lane: laneFromSource(source),
|
|
231
455
|
workspaceId,
|
|
232
456
|
workspaceName: await resolveWorkspaceName(workspaceId, cfg),
|
|
233
|
-
governance:
|
|
457
|
+
governance: readCaptureExecute(executeRes).proposed ? "proposed" : "auto",
|
|
234
458
|
};
|
|
235
459
|
}
|
|
236
460
|
// ─── Legacy engineering-memory capture ────────────────────────────────────────
|
|
@@ -258,6 +482,31 @@ export async function captureKnowledge(opts) {
|
|
|
258
482
|
console.error(chalk.red("Missing required option: --claim <text>"));
|
|
259
483
|
process.exit(1);
|
|
260
484
|
}
|
|
485
|
+
// Client-side length guard — catch the "String length N > maximum 1000"
|
|
486
|
+
// server rejection BEFORE it fires, with a chance to truncate/abort
|
|
487
|
+
// instead of a mid-flight failure after composing + confirming.
|
|
488
|
+
const guardedClaim = await guardLength("--claim", opts.claim, CLAIM_MAX, opts);
|
|
489
|
+
if (guardedClaim === undefined) {
|
|
490
|
+
log.dim("Aborted.");
|
|
491
|
+
return;
|
|
492
|
+
}
|
|
493
|
+
opts.claim = guardedClaim;
|
|
494
|
+
if (opts.why) {
|
|
495
|
+
const guardedWhy = await guardLength("--why", opts.why, WHY_MAX, opts);
|
|
496
|
+
if (guardedWhy === undefined) {
|
|
497
|
+
log.dim("Aborted.");
|
|
498
|
+
return;
|
|
499
|
+
}
|
|
500
|
+
opts.why = guardedWhy;
|
|
501
|
+
}
|
|
502
|
+
if (opts.evidence) {
|
|
503
|
+
const guardedEvidence = await guardLength("--evidence", opts.evidence, EVIDENCE_MAX, opts);
|
|
504
|
+
if (guardedEvidence === undefined) {
|
|
505
|
+
log.dim("Aborted.");
|
|
506
|
+
return;
|
|
507
|
+
}
|
|
508
|
+
opts.evidence = guardedEvidence;
|
|
509
|
+
}
|
|
261
510
|
const cfg = await resolveHubConfig();
|
|
262
511
|
const userId = await resolveUserId(cfg);
|
|
263
512
|
// GLOBAL lane: pod-wide procedural runbook → knowledge_keys.
|
|
@@ -272,6 +521,18 @@ export async function captureKnowledge(opts) {
|
|
|
272
521
|
" synap use <workspace-id> (manual override)"));
|
|
273
522
|
process.exit(1);
|
|
274
523
|
}
|
|
524
|
+
// Project pin: explicit --project (id or name) wins; otherwise the ambient
|
|
525
|
+
// lens already resolved by resolveHubConfig (SYNAP_PROJECT_ID / the active
|
|
526
|
+
// Claude session's pinned project). Previously this coordinate was simply
|
|
527
|
+
// dropped by `capture` — --pod resolved url+key but never the project lens.
|
|
528
|
+
let projectId;
|
|
529
|
+
try {
|
|
530
|
+
projectId = opts.project ? await resolveProjectArg(opts.project, cfg) : cfg.projectId;
|
|
531
|
+
}
|
|
532
|
+
catch (e) {
|
|
533
|
+
console.error(chalk.red(e.message));
|
|
534
|
+
process.exit(1);
|
|
535
|
+
}
|
|
275
536
|
const tags = opts.tags
|
|
276
537
|
? opts.tags.split(",").map((t) => t.trim()).filter(Boolean)
|
|
277
538
|
: [];
|
|
@@ -282,11 +543,14 @@ export async function captureKnowledge(opts) {
|
|
|
282
543
|
// lens that supplies its domain (so no `engineering_knowledge`). A structured
|
|
283
544
|
// decision RECORD (rationale/alternatives/status) is a different artifact, reached
|
|
284
545
|
// via smart `capture "<text>"` or `create entity --profile=decision`.
|
|
546
|
+
const sessionId = opts.session ? readActiveSessionId() : undefined;
|
|
285
547
|
const res = await hubPost("/entities", {
|
|
286
548
|
userId,
|
|
287
549
|
workspaceId,
|
|
288
550
|
profileSlug: "knowledge",
|
|
289
551
|
title,
|
|
552
|
+
...(sessionId ? { sessionId } : {}),
|
|
553
|
+
...(projectId ? { projectId } : {}),
|
|
290
554
|
properties: {
|
|
291
555
|
ek_type: opts.type,
|
|
292
556
|
ek_claim: opts.claim,
|
|
@@ -295,8 +559,9 @@ export async function captureKnowledge(opts) {
|
|
|
295
559
|
...(tags.length > 0 ? { ek_tags: tags } : {}),
|
|
296
560
|
},
|
|
297
561
|
}, cfg);
|
|
298
|
-
// Governance may queue the write as a proposal rather than creating
|
|
299
|
-
|
|
562
|
+
// Governance may queue the write as a proposal rather than creating
|
|
563
|
+
// directly — read the real outcome via the ONE shared detector.
|
|
564
|
+
const isProposed = writeGovernance(res) === "proposed";
|
|
300
565
|
// Declare which lane + workspace + governance this capture took, so the
|
|
301
566
|
// caller always knows where its knowledge landed.
|
|
302
567
|
const report = {
|
|
@@ -306,17 +571,25 @@ export async function captureKnowledge(opts) {
|
|
|
306
571
|
governance: isProposed ? "proposed" : "auto",
|
|
307
572
|
};
|
|
308
573
|
if (opts.json) {
|
|
574
|
+
const writeReceipt = res.writeReceipt;
|
|
309
575
|
if (isProposed) {
|
|
310
576
|
console.log(JSON.stringify({
|
|
311
577
|
proposed: true,
|
|
312
578
|
proposalId: res.proposalId ?? res.id,
|
|
313
579
|
reviewUrl: res.reviewUrl ?? null,
|
|
314
580
|
message: "Write queued for approval — not yet stored.",
|
|
581
|
+
...(projectId ? { requestedProjectId: projectId } : {}),
|
|
315
582
|
...laneJsonFields(report),
|
|
316
583
|
}, null, 2));
|
|
317
584
|
}
|
|
318
585
|
else {
|
|
319
|
-
console.log(JSON.stringify({
|
|
586
|
+
console.log(JSON.stringify({
|
|
587
|
+
id: res.id,
|
|
588
|
+
stored: true,
|
|
589
|
+
workspace: source,
|
|
590
|
+
...(projectId ? { requestedProjectId: projectId, linkedProjectId: writeReceipt?.projectId ?? null } : {}),
|
|
591
|
+
...laneJsonFields(report),
|
|
592
|
+
}, null, 2));
|
|
320
593
|
}
|
|
321
594
|
return;
|
|
322
595
|
}
|
|
@@ -328,15 +601,17 @@ export async function captureKnowledge(opts) {
|
|
|
328
601
|
else
|
|
329
602
|
log.dim(` Open Synap and approve the pending proposal to persist this entry.`);
|
|
330
603
|
console.log(" " + formatLaneLine(report));
|
|
604
|
+
renderProjectReceipt(res, projectId, true);
|
|
331
605
|
}
|
|
332
606
|
else {
|
|
333
607
|
log.success(`[${opts.type}] ${opts.claim.slice(0, 80)}`);
|
|
334
608
|
log.dim(` workspace: ${source} id: ${String(res.id ?? "")}`);
|
|
335
609
|
console.log(" " + formatLaneLine(report));
|
|
610
|
+
renderProjectReceipt(res, projectId, false);
|
|
336
611
|
}
|
|
337
612
|
}
|
|
338
613
|
catch (e) {
|
|
339
|
-
|
|
614
|
+
renderHubError(e);
|
|
340
615
|
process.exit(1);
|
|
341
616
|
}
|
|
342
617
|
}
|
|
@@ -366,7 +641,7 @@ export async function provisionAgentWorkspace(opts) {
|
|
|
366
641
|
}
|
|
367
642
|
}
|
|
368
643
|
catch (e) {
|
|
369
|
-
|
|
644
|
+
renderHubError(e);
|
|
370
645
|
process.exit(1);
|
|
371
646
|
}
|
|
372
647
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"knowledge.js","sourceRoot":"","sources":["../../src/commands/knowledge.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"knowledge.js","sourceRoot":"","sources":["../../src/commands/knowledge.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,QAAQ,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,KAAK,IAAI,KAAK,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,cAAc,CAAC;AAChE,OAAO,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAC;AACzC,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,OAAO,EACP,MAAM,EACN,mBAAmB,EAEnB,cAAc,GACf,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EACL,cAAc,EACd,oBAAoB,EACpB,cAAc,EACd,cAAc,EACd,eAAe,GAEhB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,UAAU,EACV,eAAe,EACf,kBAAkB,GAGnB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAIvC,gFAAgF;AAChF,4EAA4E;AAC5E,2EAA2E;AAC3E,0EAA0E;AAC1E,8EAA8E;AAC9E,4EAA4E;AAC5E,4EAA4E;AAC5E,EAAE;AACF,WAAW;AACX,uDAAuD;AACvD,mEAAmE;AACnE,0EAA0E;AAC1E,8DAA8D;AAC9D,MAAM,cAAc,GAAG,IAAI,CAAC;AAC5B,MAAM,SAAS,GAAG,IAAI,CAAC;AACvB,MAAM,OAAO,GAAG,IAAI,CAAC;AACrB,MAAM,YAAY,GAAG,IAAI,CAAC;AAE1B;;;;;;;;GAQG;AACH,KAAK,UAAU,WAAW,CACxB,KAAa,EACb,KAAa,EACb,GAAW,EACX,IAAuC;IAEvC,IAAI,KAAK,CAAC,MAAM,IAAI,GAAG;QAAE,OAAO,KAAK,CAAC;IAEtC,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QAC1B,GAAG,CAAC,IAAI,CAAC,GAAG,KAAK,OAAO,KAAK,CAAC,MAAM,sBAAsB,GAAG,2CAA2C,CAAC,CAAC;QAC1G,OAAO,KAAK,CAAC;IACf,CAAC;IAED,GAAG,CAAC,IAAI,CAAC,GAAG,KAAK,OAAO,KAAK,CAAC,MAAM,gCAAgC,GAAG,GAAG,CAAC,CAAC;IAC5E,MAAM,EAAE,GAAG,QAAQ,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;IACvD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,QAAQ,CAC9B,KAAK,CAAC,IAAI,CAAC,iBAAiB,GAAG,qCAAqC,CAAC,CACtE,CAAC;QACF,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACtC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,OAAO,IAAI,CAAC,KAAK,GAAG;YAAE,OAAO,SAAS,CAAC;QAC9D,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAC7B,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;AACH,CAAC;AAoCD;;;;;;;;;;;;GAYG;AACH,KAAK,UAAU,yBAAyB,CACtC,IAA4C,EAC5C,IAAe,EACf,iBAAqC;IAErC,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;QACnB,OAAO,EAAE,WAAW,EAAE,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;IAC7D,CAAC;IACD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,MAAM,OAAO,GAAG,wBAAwB,EAAE,CAAC;QAC3C,MAAM,MAAM,GAAG,OAAO,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,CAAC;QACjD,OAAO,EAAE,WAAW,EAAE,MAAM,IAAI,iBAAiB,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,uCAAuC,EAAE,CAAC;IACzH,CAAC;IACD,OAAO;QACL,WAAW,EAAE,iBAAiB;QAC9B,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,kDAAkD;KAC1F,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,KAAK,UAAU,iBAAiB,CAAC,KAAa,EAAE,GAAc;IAC5D,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACtC,MAAM,GAAG,GAAG,CAAC,MAAM,MAAM,CAAC,WAAW,EAAE,EAAE,EAAE,GAAG,CAAC,CAAY,CAAC;IAC5D,MAAM,IAAI,GAAG,UAAU,CAA0B,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IACpE,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;IAC3F,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjE,MAAM,IAAI,KAAK,CAAC,YAAY,KAAK,eAAe,KAAK,CAAC,CAAC,CAAC,eAAe,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACzF,CAAC;IACD,OAAO,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;AAC1B,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,oBAAoB,CAAC,GAA4B,EAAE,kBAAsC,EAAE,UAAmB;IACrH,IAAI,CAAC,kBAAkB;QAAE,OAAO;IAEhC,MAAM,cAAc,GAAG,GAAG,CAAC,OAA8D,CAAC;IAC1F,IAAI,cAAc,EAAE,SAAS,EAAE,CAAC;QAC9B,IAAI,cAAc,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YACvC,GAAG,CAAC,GAAG,CAAC,yBAAyB,cAAc,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QAC3E,CAAC;aAAM,IAAI,cAAc,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;YAChD,GAAG,CAAC,GAAG,CAAC,eAAe,cAAc,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,yDAAyD,CAAC,CAAC;QACxH,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,GAAG,CAAC,eAAe,cAAc,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,cAAc,CAAC,MAAM,IAAI,SAAS,GAAG,CAAC,CAAC;QACzG,CAAC;QACD,OAAO;IACT,CAAC;IAED,MAAM,YAAY,GAAG,GAAG,CAAC,YAAkD,CAAC;IAC5E,IAAI,YAAY,EAAE,SAAS,EAAE,CAAC;QAC5B,GAAG,CAAC,GAAG,CAAC,yBAAyB,YAAY,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QACvE,OAAO;IACT,CAAC;IAED,IAAI,UAAU,EAAE,CAAC;QACf,wEAAwE;QACxE,2CAA2C;QAC3C,GAAG,CAAC,GAAG,CAAC,eAAe,kBAAkB,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,kDAAkD,CAAC,CAAC;QACzG,OAAO;IACT,CAAC;IAED,4EAA4E;IAC5E,gDAAgD;IAChD,GAAG,CAAC,GAAG,CAAC,+CAA+C,kBAAkB,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,iDAAiD,CAAC,CAAC;AAC1I,CAAC;AAED,6DAA6D;AAC7D,SAAS,OAAO,CAAC,IAAY;IAC3B,OAAO,IAAI;SACR,WAAW,EAAE;SACb,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC;SAC3B,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC;SACvB,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,OAAO,CAAC;AAC7B,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,oBAAoB,CACjC,IAAiB,EACjB,GAAc,EACd,YAAoB;IAEpB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,WAAW,CAAC;IACtC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;IAC5C,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,GAAG,IAAI,IAAI,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;IACpD,MAAM,CAAC,SAAS,EAAE,GAAG,SAAS,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACjD,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC;IAEnD,MAAM,UAAU,GAAG,CAAC,KAAK,CAAC,CAAC;IAC3B,IAAI,IAAI,CAAC,GAAG;QAAE,UAAU,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IACxD,IAAI,IAAI,CAAC,QAAQ;QAAE,UAAU,CAAC,IAAI,CAAC,mBAAmB,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;IACvE,IAAI,IAAI,CAAC,IAAI;QAAE,UAAU,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;IAEzD,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,YAAY,EAAE;QACtC,GAAG;QACH,SAAS;QACT,IAAI;QACJ,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;QAC5B,MAAM,EAAE,YAAY;QACpB,4EAA4E;QAC5E,0EAA0E;QAC1E,yEAAyE;QACzE,0DAA0D;KAC3D,EAAE,GAAG,CAA4B,CAAC;IAEnC,MAAM,MAAM,GAAe;QACzB,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,SAAS;QACtB,aAAa,EAAE,UAAU;QACzB,UAAU,EAAE,MAAM;KACnB,CAAC;IAEF,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,cAAc,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QACnG,OAAO;IACT,CAAC;IACD,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,KAAK,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;IAC/C,GAAG,CAAC,GAAG,CAAC,UAAU,GAAG,EAAE,CAAC,CAAC;IACzB,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC;AAC7C,CAAC;AAED,gFAAgF;AAChF,+EAA+E;AAC/E,0EAA0E;AAE1E,gFAAgF;AAChF,SAAS,qBAAqB,CAAC,MAAuB;IACpD,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC;IACzC,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC;IACzC,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;IAEjC,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,GAAG,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;QAC1C,OAAO;IACT,CAAC;IAED,GAAG,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACjC,gBAAgB;IAChB,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACvF,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACnF,MAAM,MAAM,GAAG;QACb,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACzB,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAChC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;KACnC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACb,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,MAAM,CAAC,CAAC;IAC3B,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACtE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC1C,MAAM,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QACvB,MAAM,GAAG,GAAG;YACV,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YAClC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACvD,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;SACxC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACb,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC;QACxB,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;YAClB,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;QAChD,CAAC;IACH,CAAC;IAED,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzB,GAAG,CAAC,KAAK,EAAE,CAAC;QACZ,GAAG,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,MAAM,YAAY,SAAS,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,mBAAmB,CAAC,CAAC;IACjG,CAAC;IAED,IAAI,MAAM,CAAC,iBAAiB,IAAI,MAAM,CAAC,eAAe,EAAE,CAAC;QACvD,GAAG,CAAC,KAAK,EAAE,CAAC;QACZ,IAAI,MAAM,CAAC,iBAAiB,EAAE,CAAC;YAC7B,MAAM,IAAI,GACR,OAAO,MAAM,CAAC,yBAAyB,KAAK,QAAQ;gBAClD,CAAC,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,yBAAyB,GAAG,GAAG,CAAC,IAAI;gBAC7D,CAAC,CAAC,EAAE,CAAC;YACT,GAAG,CAAC,GAAG,CAAC,kBAAkB,MAAM,CAAC,iBAAiB,GAAG,IAAI,EAAE,CAAC,CAAC;YAC7D,IAAI,MAAM,CAAC,qBAAqB,EAAE,CAAC;gBACjC,GAAG,CAAC,GAAG,CAAC,SAAS,MAAM,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;YAChE,CAAC;QACH,CAAC;QACD,IAAI,MAAM,CAAC,eAAe,EAAE,CAAC;YAC3B,MAAM,IAAI,GACR,OAAO,MAAM,CAAC,uBAAuB,KAAK,QAAQ;gBAChD,CAAC,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,uBAAuB,GAAG,GAAG,CAAC,IAAI;gBAC3D,CAAC,CAAC,EAAE,CAAC;YACT,GAAG,CAAC,GAAG,CAAC,kBAAkB,MAAM,CAAC,eAAe,GAAG,IAAI,EAAE,CAAC,CAAC;YAC3D,IAAI,MAAM,CAAC,mBAAmB,EAAE,CAAC;gBAC/B,GAAG,CAAC,GAAG,CAAC,SAAS,MAAM,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;YAC9D,CAAC;QACH,CAAC;IACH,CAAC;IAED,4EAA4E;IAC5E,2EAA2E;IAC3E,8EAA8E;IAC9E,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,QAAQ,GAAG,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAC7E,IAAI,QAAQ,EAAE,CAAC;YACb,GAAG,CAAC,KAAK,EAAE,CAAC;YACZ,GAAG,CAAC,IAAI,CAAC,cAAc,QAAQ,EAAE,CAAC,CAAC;YACnC,MAAM,KAAK,GAAG,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,IAAI,EAAE,CAAC;YAC7E,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;gBACtB,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YACvC,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED,KAAK,UAAU,eAAe,CAAC,OAAe,EAAE,IAAiB;IAC/D,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,cAAc,EAAE,OAAO,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IACjF,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACpB,OAAO;IACT,CAAC;IACD,MAAM,IAAI,GAAG,OAAO,CAAC;IAErB,MAAM,GAAG,GAAG,MAAM,gBAAgB,EAAE,CAAC;IACrC,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,GAAG,CAAC,CAAC;IACxC,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,MAAM,yBAAyB,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC;IAE5F,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,CAAC,KAAK,CACX,KAAK,CAAC,GAAG,CACP,0BAA0B;YAC1B,+DAA+D;YAC/D,gDAAgD,CACjD,CACF,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,2EAA2E;IAC3E,uEAAuE;IACvE,4DAA4D;IAC5D,IAAI,SAA6B,CAAC;IAClC,IAAI,CAAC;QACH,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,iBAAiB,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC;IACxF,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAE,CAAW,CAAC,OAAO,CAAC,CAAC,CAAC;QAC/C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,eAAe;IACf,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IACxE,MAAM,aAAa,GAA4B,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;IACvI,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,oBAAoB,EAAE,aAAa,EAAE,GAAG,CAAoB,CAAC;IAEhG,uEAAuE;IACvE,6DAA6D;IAC7D,uEAAuE;IACvE,2DAA2D;IAC3D,IAAI,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAC7B,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC;gBACzB,QAAQ,EAAE,IAAI;gBACd,cAAc,EAAE,YAAY,CAAC,cAAc,IAAI,IAAI;gBACnD,OAAO,EAAE,CAAC;gBACV,OAAO,EAAE,eAAe,CAAC,YAAY,CAAC;aACvC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QACf,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC,CAAC;QAC1C,CAAC;QACD,OAAO;IACT,CAAC;IAED,gFAAgF;IAChF,uEAAuE;IACvE,6EAA6E;IAC7E,qBAAqB;IACrB,MAAM,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACnD,MAAM,aAAa,GAA4B,kBAAkB;QAC/D,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC;YACE,gBAAgB,EAAE,MAAM;YACxB,aAAa,EAAE,YAAY,CAAC,iBAAiB;YAC7C,qBAAqB,EAAE,YAAY,CAAC,yBAAyB;YAC7D,iBAAiB,EAAE,YAAY,CAAC,qBAAqB;SACtD,CAAC;IACN,kEAAkE;IAClE,0EAA0E;IAC1E,mEAAmE;IACnE,sEAAsE;IACtE,2EAA2E;IAC3E,0EAA0E;IAC1E,8CAA8C;IAC9C,IAAI,SAAS,EAAE,CAAC;QACd,aAAa,CAAC,SAAS,GAAG,SAAS,CAAC;IACtC,CAAC;SAAM,IAAI,YAAY,CAAC,eAAe,EAAE,CAAC;QACxC,aAAa,CAAC,WAAW,GAAG,YAAY,CAAC,eAAe,CAAC;QACzD,aAAa,CAAC,mBAAmB,GAAG,YAAY,CAAC,uBAAuB,CAAC;QACzE,aAAa,CAAC,eAAe,GAAG,YAAY,CAAC,mBAAmB,CAAC;IACnE,CAAC;IAED,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,wDAAwD;QACxD,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YACnD,OAAO;QACT,CAAC;QACD,yDAAyD;QACzD,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,kBAAkB,EAAE;YACnD,MAAM;YACN,WAAW;YACX,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxD,GAAG,aAAa;YAChB,QAAQ,EAAE,YAAY,CAAC,SAAS;YAChC,SAAS,EAAE,YAAY,CAAC,SAAS,IAAI,EAAE;SACxC,EAAE,GAAG,CAAkB,CAAC;QACzB,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC,UAAU,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;QAChF,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC;YACzB,SAAS,EAAE,YAAY;YACvB,OAAO,EAAE,UAAU;YACnB,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvD,GAAG,cAAc,CAAC,MAAM,CAAC;SAC1B,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QACb,OAAO;IACT,CAAC;IAED,sBAAsB;IACtB,qBAAqB,CAAC,YAAY,CAAC,CAAC;IAEpC,MAAM,KAAK,GAAG,YAAY,CAAC,SAAS,EAAE,MAAM,IAAI,CAAC,CAAC;IAClD,IAAI,KAAK,KAAK,CAAC;QAAE,OAAO;IAExB,aAAa;IACb,IAAI,SAAS,GAAG,IAAI,CAAC,GAAG,IAAI,KAAK,CAAC;IAClC,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,GAAG,CAAC,KAAK,EAAE,CAAC;QACZ,MAAM,EAAE,GAAG,QAAQ,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QACvD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,QAAQ,CAC9B,KAAK,CAAC,IAAI,CAAC,YAAY,KAAK,QAAQ,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,CACzE,CAAC;YACF,SAAS,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,GAAG,CAAC;QAClD,CAAC;gBAAS,CAAC;YACT,EAAE,CAAC,KAAK,EAAE,CAAC;QACb,CAAC;IACH,CAAC;IAED,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACpB,OAAO;IACT,CAAC;IAED,aAAa;IACb,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,kBAAkB,EAAE;QACnD,MAAM;QACN,WAAW;QACX,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACxD,GAAG,aAAa;QAChB,QAAQ,EAAE,YAAY,CAAC,SAAS;QAChC,SAAS,EAAE,YAAY,CAAC,SAAS,IAAI,EAAE;KACxC,EAAE,GAAG,CAAkB,CAAC;IAEzB,iEAAiE;IACjE,kDAAkD;IAClD,MAAM,OAAO,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC;IAC/C,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC,UAAU,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;IAEhF,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;QACrB,GAAG,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAC;QAC7D,IAAI,OAAO,CAAC,UAAU;YAAE,GAAG,CAAC,GAAG,CAAC,eAAe,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;QACrE,IAAI,OAAO,CAAC,SAAS;YAAE,GAAG,CAAC,GAAG,CAAC,aAAa,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;IACnE,CAAC;SAAM,CAAC;QACN,MAAM,CAAC,GAAG,OAAO,CAAC,eAAe,CAAC;QAClC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC;QAC1D,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;YAC3B,GAAG,CAAC,GAAG,CAAC,KAAK,OAAO,CAAC,cAAc,4BAA4B,OAAO,CAAC,cAAc,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;QAChH,CAAC;QACD,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;YAC7B,GAAG,CAAC,GAAG,CAAC,KAAK,OAAO,CAAC,gBAAgB,YAAY,OAAO,CAAC,gBAAgB,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;QACzG,CAAC;QACD,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;YAC7B,GAAG,CAAC,GAAG,CAAC,4BAA4B,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC;QAClE,CAAC;IACH,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC;IAC3C,oBAAoB,CAAC,UAAgD,EAAE,SAAS,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;AACtG,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,oBAAoB,CACjC,UAAyB,EACzB,WAAmB,EACnB,MAAc,EACd,GAAc;IAEd,OAAO;QACL,IAAI,EAAE,cAAc,CAAC,MAAM,CAAC;QAC5B,WAAW;QACX,aAAa,EAAE,MAAM,oBAAoB,CAAC,WAAW,EAAE,GAAG,CAAC;QAC3D,UAAU,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM;KAC1E,CAAC;AACJ,CAAC;AAED,iFAAiF;AAEjF,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,IAAiB;IACtD,IAAI,CAAC;QACH,iFAAiF;QACjF,8EAA8E;QAC9E,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YACvD,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,2EAA2E,CAAC,CAAC,CAAC;YACtG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,2FAA2F,CAAC,CAAC,CAAC;YACtH,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,6CAA6C;QAC7C,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YACvD,MAAM,eAAe,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACvC,OAAO;QACT,CAAC;QAED,kCAAkC;QAClC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,oEAAoE,CAAC,CAAC,CAAC;YAC/F,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,wFAAwF,CAAC,CAAC,CAAC;YACnH,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC,CAAC;YACpE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,wEAAwE;QACxE,oEAAoE;QACpE,gEAAgE;QAChE,MAAM,YAAY,GAAG,MAAM,WAAW,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;QAC/E,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YAC/B,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YACpB,OAAO;QACT,CAAC;QACD,IAAI,CAAC,KAAK,GAAG,YAAY,CAAC;QAC1B,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;YACb,MAAM,UAAU,GAAG,MAAM,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;YACvE,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;gBAC7B,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;gBACpB,OAAO;YACT,CAAC;YACD,IAAI,CAAC,GAAG,GAAG,UAAU,CAAC;QACxB,CAAC;QACD,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,MAAM,eAAe,GAAG,MAAM,WAAW,CAAC,YAAY,EAAE,IAAI,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,CAAC,CAAC;YAC3F,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;gBAClC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;gBACpB,OAAO;YACT,CAAC;YACD,IAAI,CAAC,QAAQ,GAAG,eAAe,CAAC;QAClC,CAAC;QAED,MAAM,GAAG,GAAG,MAAM,gBAAgB,EAAE,CAAC;QACrC,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,GAAG,CAAC,CAAC;QAExC,6DAA6D;QAC7D,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,MAAM,oBAAoB,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;YAC9C,OAAO;QACT,CAAC;QAED,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,MAAM,yBAAyB,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC;QAE5F,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,OAAO,CAAC,KAAK,CACX,KAAK,CAAC,GAAG,CACP,0BAA0B;gBAC1B,+DAA+D;gBAC/D,gDAAgD,CACjD,CACF,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,2EAA2E;QAC3E,2EAA2E;QAC3E,0EAA0E;QAC1E,4EAA4E;QAC5E,IAAI,SAA6B,CAAC;QAClC,IAAI,CAAC;YACH,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,iBAAiB,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC;QACxF,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAE,CAAW,CAAC,OAAO,CAAC,CAAC,CAAC;YAC/C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI;YACpB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;YAC3D,CAAC,CAAC,EAAE,CAAC;QAEP,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QAEvC,8EAA8E;QAC9E,gFAAgF;QAChF,8EAA8E;QAC9E,8EAA8E;QAC9E,mFAAmF;QACnF,sEAAsE;QACtE,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QAEnE,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,WAAW,EAAE;YACrC,MAAM;YACN,WAAW;YACX,WAAW,EAAE,WAAW;YACxB,KAAK;YACL,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACnC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACnC,UAAU,EAAE;gBACV,OAAO,EAAE,IAAI,CAAC,IAAI;gBAClB,QAAQ,EAAE,IAAI,CAAC,KAAK;gBACpB,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACzC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACxD,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC9C;SACF,EAAE,GAAG,CAA4B,CAAC;QAEnC,oEAAoE;QACpE,gEAAgE;QAChE,MAAM,UAAU,GAAG,eAAe,CAAC,GAAG,CAAC,KAAK,UAAU,CAAC;QAEvD,wEAAwE;QACxE,kDAAkD;QAClD,MAAM,MAAM,GAAe;YACzB,IAAI,EAAE,cAAc,CAAC,MAAM,CAAC;YAC5B,WAAW;YACX,aAAa,EAAE,MAAM,oBAAoB,CAAC,WAAW,EAAE,GAAG,CAAC;YAC3D,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM;SAC7C,CAAC;QAEF,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,MAAM,YAAY,GAAG,GAAG,CAAC,YAAkD,CAAC;YAC5E,IAAI,UAAU,EAAE,CAAC;gBACf,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC;oBACzB,QAAQ,EAAE,IAAI;oBACd,UAAU,EAAE,GAAG,CAAC,UAAU,IAAI,GAAG,CAAC,EAAE;oBACpC,SAAS,EAAE,GAAG,CAAC,SAAS,IAAI,IAAI;oBAChC,OAAO,EAAE,6CAA6C;oBACtD,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACvD,GAAG,cAAc,CAAC,MAAM,CAAC;iBAC1B,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YACf,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC;oBACzB,EAAE,EAAE,GAAG,CAAC,EAAE;oBACV,MAAM,EAAE,IAAI;oBACZ,SAAS,EAAE,MAAM;oBACjB,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,SAAS,EAAE,eAAe,EAAE,YAAY,EAAE,SAAS,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACzG,GAAG,cAAc,CAAC,MAAM,CAAC;iBAC1B,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YACf,CAAC;YACD,OAAO;QACT,CAAC;QAED,IAAI,UAAU,EAAE,CAAC;YACf,GAAG,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;YAClD,GAAG,CAAC,GAAG,CAAC,gEAAgE,CAAC,CAAC;YAC1E,IAAI,GAAG,CAAC,SAAS;gBAAE,GAAG,CAAC,GAAG,CAAC,aAAa,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;;gBAC5D,GAAG,CAAC,GAAG,CAAC,sEAAsE,CAAC,CAAC;YACrF,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC;YAC3C,oBAAoB,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;QAC7C,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;YACzD,GAAG,CAAC,GAAG,CAAC,gBAAgB,MAAM,SAAS,MAAM,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;YAC/D,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC;YAC3C,oBAAoB,CAAC,GAAG,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;QAC9C,CAAC;IACH,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,cAAc,CAAC,CAAC,CAAC,CAAC;QAClB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,IAA4E;IAE5E,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,gBAAgB,EAAE,CAAC;QACrC,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,GAAG,CAAC,CAAC;QACxC,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,MAAM,CAAC;QAE/C,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,6BAA6B,EAAE;YACvD,WAAW;YACX,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACnD,EAAE,GAAG,CAA8C,CAAC;QAErD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YAC1C,OAAO;QACT,CAAC;QAED,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;YAChB,GAAG,CAAC,OAAO,CAAC,4BAA4B,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;QAC7D,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,IAAI,CAAC,mCAAmC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;QACjE,CAAC;QAED,IAAI,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;YAC5B,MAAM,EAAE,oBAAoB,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC;YAC/D,oBAAoB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;YACtC,GAAG,CAAC,GAAG,CAAC,wCAAwC,GAAG,CAAC,WAAW,GAAG,CAAC,CAAC;QACtE,CAAC;IACH,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,cAAc,CAAC,CAAC,CAAC,CAAC;QAClB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `synap launch` — nothing → a working company.
|
|
3
|
+
*
|
|
4
|
+
* This is NOT a template browser. It is the opinionated, guided, run-once
|
|
5
|
+
* command that turns an empty pod into a company: one PROJECT (the cross-cutting
|
|
6
|
+
* lens) + N domain WORKSPACES, provisioned from templates and linked together.
|
|
7
|
+
* Browsing "what else could I add?" lives in the marketplace UI; `synap orient`
|
|
8
|
+
* shows what you already have.
|
|
9
|
+
*
|
|
10
|
+
* Interactive flow:
|
|
11
|
+
* 1. Ask the company/project name → attach to an existing PROJECT or create one
|
|
12
|
+
* 2. Describe the company → suggest domains → pick/adjust the set
|
|
13
|
+
* 3. Disclose the FULL plan (incl. dependencies) → confirm
|
|
14
|
+
* 4. For each template → POST /packages/apply → report the real outcome
|
|
15
|
+
*
|
|
16
|
+
* Discovery is TWO-SOURCE, merged through the ONE `mergeCatalog` door:
|
|
17
|
+
* • PUBLIC templates ship BUNDLED in @synap-core/workspace-templates — always
|
|
18
|
+
* present, zero network, offline.
|
|
19
|
+
* • PRIVATE templates live in the control plane behind the user's login and are
|
|
20
|
+
* fetched from `GET /api/packages/mine` (Bearer). Logged out or CP-unreachable
|
|
21
|
+
* degrades HONESTLY to bundled-only + a "private needs login" note — it never
|
|
22
|
+
* fails open empty.
|
|
23
|
+
* The bundle still carries the private YAMLs today, so a private template that
|
|
24
|
+
* arrives as a remote entry is installed from the identical, offline bundled
|
|
25
|
+
* definition; once a later wave drops those YAMLs it is installed from the CP.
|
|
26
|
+
*
|
|
27
|
+
* Dependencies are resolved SERVER-side: `toPackageDefinition` carries the
|
|
28
|
+
* template's `dependencies` into the body, and the apply endpoint ensures each
|
|
29
|
+
* one is present first (installing missing bases topologically) and LAYERS a
|
|
30
|
+
* `compose` template onto its base instead of creating a second workspace. So
|
|
31
|
+
* this command's job is to DISCLOSE the graph before the user commits — never to
|
|
32
|
+
* install the extras itself.
|
|
33
|
+
*
|
|
34
|
+
* Installs are GOVERNED: /packages/apply answers 202 `{status:"proposed"}` when
|
|
35
|
+
* the write needs review. That is normal, not a failure — but it means nothing is
|
|
36
|
+
* live until the proposal is approved, so we never print "ready" for it.
|
|
37
|
+
*/
|
|
38
|
+
export declare function launchList(opts: {
|
|
39
|
+
json?: boolean;
|
|
40
|
+
search?: string;
|
|
41
|
+
type?: string;
|
|
42
|
+
}): Promise<void>;
|
|
43
|
+
export declare function launch(opts: {
|
|
44
|
+
podUrl?: string;
|
|
45
|
+
apiKey?: string;
|
|
46
|
+
json?: boolean;
|
|
47
|
+
list?: boolean;
|
|
48
|
+
search?: string;
|
|
49
|
+
type?: string;
|
|
50
|
+
}): Promise<void>;
|