Skip to content

fix: harden Discussion and Agent Core v2 workflows - #273

Open
elkaix wants to merge 3 commits into
mainfrom
fix/discussion-preferences-effort
Open

fix: harden Discussion and Agent Core v2 workflows#273
elkaix wants to merge 3 commits into
mainfrom
fix/discussion-preferences-effort

Conversation

@elkaix

@elkaix elkaix commented Sep 1, 2026

Copy link
Copy Markdown
Member

Related Issue

No public issue. This is direct repository-owner requested work for reported Discussion regressions and approved Agent Core v2 reconciliation.

Problem

Discussion did not preserve the selected model pair, had no per-role reasoning effort, exposed inactive state in the composer, and rejected valid catalog models through the unrelated subagent pool. Live exchanges could also stop after a late tool call, lose reasoning updates, or let one model panel overgrow the other.

Several applicable Agent Core v2 fixes were also missing from this branch, including provider compatibility, safe command handling, config formatting preservation, transcript recovery, and Tower workspace-state safeguards.

What changed

  • Persist Discussion model and effort preferences across sessions, validate configured catalog models directly, and make New Discussion reuse the current workspace and saved pair.
  • Stream live reasoning in equal-height scrollable panes, restore the final agreement/differences/uncertainty comparison, improve dark model menus, align Dynamic Workflow status dots, and anchor action/manual-stop toasts above the composer.
  • Harden the Discussion workflow against late tool calls, provider-idle failures, cancellation races, partial participant creation, cleanup failures, malformed Fusion output, and stale live snapshots without increasing request limits.
  • Reconcile applicable non-breaking Agent Core v2 fixes for Pythinker Responses, secondary-model routing, telemetry, Tower state, transcript identity, TOML writeback, and dangerous Bash command approval.
  • Update Web, TUI, gateway, klient, docs, tests, changesets, and the committed Web bundle together.

Verification

  • pnpm lint — 0 errors
  • pnpm typecheck
  • pnpm exec vitest run --maxWorkers=8 — 1,244 files and 21,143 tests passed
  • Focused Agent Core v2, gateway, and Web Discussion suites
  • pnpm run build:web && pnpm run check:web
  • npm run build in docs/
  • node scripts/check-nix-workspace.mjs
  • nix build .#pythinker-code --print-build-logs
  • pnpm package:desktop and strict deep code-sign verification
  • Launched the exact packaged worktree app successfully

Two unrelated timing tests each failed once under unbounded full-suite saturation. Both passed immediately in isolation; the complete bounded-worker suite passed cleanly.

Checklist

  • I have read the CONTRIBUTING document.
  • I have linked a related issue. Not applicable: direct repository-owner requested work; no public issue was authorized.
  • I have added tests that prove the behavior works.
  • Ran gen-changesets skill.
  • Ran gen-docs skill.
elkaix added 3 commits August 31, 2026 19:33
Preserve configured model pairs and per-role effort, restore Discussion naming and comparison, and align Dynamic Workflow status dots.
@coderabbitai

coderabbitai Bot commented Sep 1, 2026

Copy link
Copy Markdown

Important

Review skipped

Too many files!

This PR contains 327 files, which is 27 over the limit of 300.

To get a review, reduce the PR to 300 files or fewer by splitting it into smaller PRs or changing its base branch.

Usage-priced reviews support at most 300 files.

⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Team

Run ID: 3a91a8d9-6f29-435e-8b44-005cda5c5ad0

📥 Commits

Reviewing files that changed from the base of the PR and between 0d57540 and 04b865f.

⛔ Files ignored due to path filters (1)
  • apps/pythinker-web/src/icons/pythinker/expert_opinion.svg is excluded by !**/*.svg
📒 Files selected for processing (327)
  • apps/pythinker-code/dist-web/.web-bundle-manifest.json
  • apps/pythinker-code/dist-web/assets/CodeBlockNode-CjK-qql8.js
  • apps/pythinker-code/dist-web/assets/DesignSystemView-6T_jYJrH.js
  • apps/pythinker-code/dist-web/assets/Tooltip-c4Won1tt.js
  • apps/pythinker-code/dist-web/assets/abnfDiagram-VCTEODGH-BovSjQXX.js
  • apps/pythinker-code/dist-web/assets/arc-CHCuM8EI.js
  • apps/pythinker-code/dist-web/assets/architectureDiagram-5GKGNRK7-CBU00cgM.js
  • apps/pythinker-code/dist-web/assets/blockDiagram-NRAW4CY4-DxgsRiFS.js
  • apps/pythinker-code/dist-web/assets/c4Diagram-UCG6FXSJ-DiSWOTH6.js
  • apps/pythinker-code/dist-web/assets/channel-C0IJimYb.js
  • apps/pythinker-code/dist-web/assets/chunk-2Q5K7J3B-D1736ECk.js
  • apps/pythinker-code/dist-web/assets/chunk-5VM5RSS4-N4SkS_5j.js
  • apps/pythinker-code/dist-web/assets/chunk-F27PBJKO-Cj5fiomV.js
  • apps/pythinker-code/dist-web/assets/chunk-G27WJ6UU-2Efyl-dX.js
  • apps/pythinker-code/dist-web/assets/chunk-JWPE2WC7-DEZr87p-.js
  • apps/pythinker-code/dist-web/assets/chunk-LCL6LL3I-0gpIySMQ.js
  • apps/pythinker-code/dist-web/assets/chunk-POPQ4Y6H-CF_VrAXY.js
  • apps/pythinker-code/dist-web/assets/chunk-SVP7TREG-Bto4ZW7D.js
  • apps/pythinker-code/dist-web/assets/chunk-XXDRQBXY-B5xstnDi.js
  • apps/pythinker-code/dist-web/assets/classDiagram-DTDB5LWJ-CVRUQTG-.js
  • apps/pythinker-code/dist-web/assets/classDiagram-v2-JRS7N3AN-CVRUQTG-.js
  • apps/pythinker-code/dist-web/assets/cose-bilkent-JH36ORCC-v5LmJ4Mi.js
  • apps/pythinker-code/dist-web/assets/cssMode-DZGxQBT9.js
  • apps/pythinker-code/dist-web/assets/cynefin-OW5HDTMX-DgrwM5Y2.js
  • apps/pythinker-code/dist-web/assets/cynefinDiagram-5FMLGOSQ-DTXmqxjM.js
  • apps/pythinker-code/dist-web/assets/dagre-3AP2YEHR-B9I7HaTF.js
  • apps/pythinker-code/dist-web/assets/diagram-S7CK7UJ4-DNmZBRG2.js
  • apps/pythinker-code/dist-web/assets/diagram-UQ7AKVKN-9fkQpB3C.js
  • apps/pythinker-code/dist-web/assets/diagram-VSXAHHWV-B6sO84Hg.js
  • apps/pythinker-code/dist-web/assets/diagram-VX7I27RA-UIiL0hBU.js
  • apps/pythinker-code/dist-web/assets/diagram-Z3DM3KII-B1m2itRU.js
  • apps/pythinker-code/dist-web/assets/ebnfDiagram-PWID7BFC-D3HuSK2t.js
  • apps/pythinker-code/dist-web/assets/editor.main-C6TNVlCF.js
  • apps/pythinker-code/dist-web/assets/erDiagram-SSCWMZ5O-BFL22x5t.js
  • apps/pythinker-code/dist-web/assets/flowDiagram-A5DVABFB-C0yaALpQ.js
  • apps/pythinker-code/dist-web/assets/freemarker2-xV6BS7VV.js
  • apps/pythinker-code/dist-web/assets/ganttDiagram-EL5Y4UJY-wayv-I5Q.js
  • apps/pythinker-code/dist-web/assets/gitGraphDiagram-WWUBYQGX-DbBm0NgJ.js
  • apps/pythinker-code/dist-web/assets/handlebars-m2itLTIt.js
  • apps/pythinker-code/dist-web/assets/html-Cu-c8xRD.js
  • apps/pythinker-code/dist-web/assets/htmlMode-DXgcuJ8c.js
  • apps/pythinker-code/dist-web/assets/index-2v_-81jl.js
  • apps/pythinker-code/dist-web/assets/index-CfeF0e0x.js
  • apps/pythinker-code/dist-web/assets/index-DHt1OT2i.js
  • apps/pythinker-code/dist-web/assets/index-DPav7Wdq.css
  • apps/pythinker-code/dist-web/assets/index-DXqzNghF.js
  • apps/pythinker-code/dist-web/assets/index10-DYIoNraK.js
  • apps/pythinker-code/dist-web/assets/index11-Bz_hnOOg.js
  • apps/pythinker-code/dist-web/assets/index5-B2LEFjrZ.js
  • apps/pythinker-code/dist-web/assets/index6-DG3Q2Ncx.js
  • apps/pythinker-code/dist-web/assets/index7-DKf1iAuq.js
  • apps/pythinker-code/dist-web/assets/index8-1Hb5LUXu.js
  • apps/pythinker-code/dist-web/assets/infoDiagram-RXCK75RN-BfOUuyWA.js
  • apps/pythinker-code/dist-web/assets/ishikawaDiagram-5VMMS53U-DSsgLWOp.js
  • apps/pythinker-code/dist-web/assets/javascript-BGUex-fn.js
  • apps/pythinker-code/dist-web/assets/journeyDiagram-EYS64GPL-DhRE4NjD.js
  • apps/pythinker-code/dist-web/assets/jsonMode-BPY3yx49.js
  • apps/pythinker-code/dist-web/assets/kanban-definition-3QL26DDD-CnDi_UGA.js
  • apps/pythinker-code/dist-web/assets/layout-BBEpZ_1t.js
  • apps/pythinker-code/dist-web/assets/linear-NqoMO5q_.js
  • apps/pythinker-code/dist-web/assets/liquid-Dfvy1iBr.js
  • apps/pythinker-code/dist-web/assets/lspLanguageFeatures-BW9B-tPg.js
  • apps/pythinker-code/dist-web/assets/mdx-BXc6MuOc.js
  • apps/pythinker-code/dist-web/assets/mermaid.core-CVcgJ56o.js
  • apps/pythinker-code/dist-web/assets/mindmap-definition-FBJOCRG2-BGo4-sXq.js
  • apps/pythinker-code/dist-web/assets/pegDiagram-XKGWAZYB-D6JBhoh5.js
  • apps/pythinker-code/dist-web/assets/pieDiagram-E7YTZNPT-BTtXMHAE.js
  • apps/pythinker-code/dist-web/assets/python-BzmtQ1P9.js
  • apps/pythinker-code/dist-web/assets/quadrantDiagram-AXDQQJYC-CreGC5_y.js
  • apps/pythinker-code/dist-web/assets/railroadDiagram-O6MQD6OU-DF_BK7Or.js
  • apps/pythinker-code/dist-web/assets/razor-B8gDshAu.js
  • apps/pythinker-code/dist-web/assets/requirementDiagram-EFPCY7ZU-y6v1n-Cd.js
  • apps/pythinker-code/dist-web/assets/sankeyDiagram-P5KCCOFB-BUXxiSje.js
  • apps/pythinker-code/dist-web/assets/sequenceDiagram-WJ2MYXX4-CvCapL06.js
  • apps/pythinker-code/dist-web/assets/sizeCapture-X5ZJPWSS-SYi_9Qll.js
  • apps/pythinker-code/dist-web/assets/stateDiagram-HBIQ2CUA-BS8cTIVf.js
  • apps/pythinker-code/dist-web/assets/stateDiagram-v2-4QOOHH4V-CHKkl1Ic.js
  • apps/pythinker-code/dist-web/assets/swimlanes-XN3QIQJK-TFuOiGgY.js
  • apps/pythinker-code/dist-web/assets/swimlanesDiagram-VK2B7HYN-CK44WQH6.js
  • apps/pythinker-code/dist-web/assets/timeline-definition-24CTP7MA-TX06oFD8.js
  • apps/pythinker-code/dist-web/assets/tsMode-Dw_GDg88.js
  • apps/pythinker-code/dist-web/assets/typescript-BOrvMAyl.js
  • apps/pythinker-code/dist-web/assets/vennDiagram-4TSXK5OY-IfImDi7g.js
  • apps/pythinker-code/dist-web/assets/vue.runtime.esm-bundler-CofjRIsJ.js
  • apps/pythinker-code/dist-web/assets/wardleyDiagram-VM6X3IG4-DIEFLrvL.js
  • apps/pythinker-code/dist-web/assets/xml-D6a408Eo.js
  • apps/pythinker-code/dist-web/assets/xychartDiagram-S5SC5T6Z-VIqk5Xsx.js
  • apps/pythinker-code/dist-web/assets/yaml-p8_mHh2O.js
  • apps/pythinker-code/dist-web/index.html
  • apps/pythinker-code/src/cli/v2/run-v2-print.ts
  • apps/pythinker-code/src/tui/commands/dispatch.ts
  • apps/pythinker-code/src/tui/commands/expert-talk.ts
  • apps/pythinker-code/src/tui/commands/registry.ts
  • apps/pythinker-code/src/tui/components/chrome/footer.ts
  • apps/pythinker-code/src/tui/components/messages/expert-talk-panel.ts
  • apps/pythinker-code/src/tui/controllers/editor-keyboard.ts
  • apps/pythinker-code/src/tui/pythinker-tui.ts
  • apps/pythinker-code/test/tui/commands/expert-talk.test.ts
  • apps/pythinker-code/test/tui/commands/registry.test.ts
  • apps/pythinker-code/test/tui/components/chrome/footer.test.ts
  • apps/pythinker-web/src/App.vue
  • apps/pythinker-web/src/api/daemon/client.ts
  • apps/pythinker-web/src/api/daemon/mappers.ts
  • apps/pythinker-web/src/api/daemon/wire.ts
  • apps/pythinker-web/src/api/types.ts
  • apps/pythinker-web/src/components/chat/Composer.vue
  • apps/pythinker-web/src/components/chat/ConversationPane.vue
  • apps/pythinker-web/src/components/chat/ExpertTalkControl.vue
  • apps/pythinker-web/src/components/chat/ExpertTalkExchange.vue
  • apps/pythinker-web/src/components/chat/tool-calls/DynamicWorkflowTool.vue
  • apps/pythinker-web/src/components/settings/SecondaryModelPicker.vue
  • apps/pythinker-web/src/components/settings/SettingsDialog.vue
  • apps/pythinker-web/src/components/ui/ActionToast.vue
  • apps/pythinker-web/src/composables/client/useExpertTalkState.ts
  • apps/pythinker-web/src/composables/client/useModelProviderState.ts
  • apps/pythinker-web/src/composables/usePythinkerWebClient.ts
  • apps/pythinker-web/src/i18n/locales/en/commands.ts
  • apps/pythinker-web/src/i18n/locales/en/expertTalk.ts
  • apps/pythinker-web/src/i18n/locales/en/settings.ts
  • apps/pythinker-web/src/i18n/locales/en/sidebar.ts
  • apps/pythinker-web/src/lib/modelThinking.test.ts
  • apps/pythinker-web/src/lib/slashCommands.ts
  • apps/pythinker-web/src/lib/storage.ts
  • apps/pythinker-web/test/action-toast.test.ts
  • apps/pythinker-web/test/app-shell-contracts.test.ts
  • apps/pythinker-web/test/composer-toolbar.test.ts
  • apps/pythinker-web/test/daemon-client.test.ts
  • apps/pythinker-web/test/daemon-contracts.test.ts
  • apps/pythinker-web/test/dynamic-workflow-card.test.ts
  • apps/pythinker-web/test/expert-talk-control.test.ts
  • apps/pythinker-web/test/settings-ui.test.ts
  • docs/configuration/config-files.md
  • docs/configuration/env-vars.md
  • docs/guides/interaction.md
  • docs/guides/web.md
  • docs/reference/slash-commands.md
  • docs/reference/tools.md
  • packages/agent-core-v2/docs/config-manifest.toml
  • packages/agent-core-v2/docs/state-manifest.d.ts
  • packages/agent-core-v2/docs/wire-manifest.d.ts
  • packages/agent-core-v2/src/_base/di/cascadeEngine.ts
  • packages/agent-core-v2/src/_base/di/scope.ts
  • packages/agent-core-v2/src/agent/llmRequester/llmRequesterService.ts
  • packages/agent-core-v2/src/agent/loop/loopService.ts
  • packages/agent-core-v2/src/agent/loop/turnEvents.ts
  • packages/agent-core-v2/src/agent/loop/turnOps.ts
  • packages/agent-core-v2/src/agent/media/mediaResolverService.ts
  • packages/agent-core-v2/src/agent/permissionPolicy/permissionPolicyService.ts
  • packages/agent-core-v2/src/agent/permissionRules/configSection.ts
  • packages/agent-core-v2/src/agent/prompt/promptService.ts
  • packages/agent-core-v2/src/agent/shellCommand/shellCommandService.ts
  • packages/agent-core-v2/src/app/bootstrap/bootstrap.ts
  • packages/agent-core-v2/src/app/config/configService.ts
  • packages/agent-core-v2/src/app/config/migrations.ts
  • packages/agent-core-v2/src/app/sessionIndex/sessionIndexMirrorService.ts
  • packages/agent-core-v2/src/app/sessionIndex/sessionIndexService.ts
  • packages/agent-core-v2/src/app/telemetry/events.ts
  • packages/agent-core-v2/src/app/web/providers/pymodel-fetch-url.ts
  • packages/agent-core-v2/src/app/web/webService.ts
  • packages/agent-core-v2/src/features/skill/catalog/builtin/update-config.md
  • packages/agent-core-v2/src/features/tower/injection/tower-mode-full-reminder.md
  • packages/agent-core-v2/src/features/tower/protocol/git.ts
  • packages/agent-core-v2/src/features/tower/protocol/index.ts
  • packages/agent-core-v2/src/features/tower/protocol/store.ts
  • packages/agent-core-v2/src/features/tower/protocol/types.ts
  • packages/agent-core-v2/src/features/tower/tools/merge/merge.md
  • packages/agent-core-v2/src/features/tower/tools/spawn/spawn.md
  • packages/agent-core-v2/src/features/tower/tools/spawn/spawnTool.ts
  • packages/agent-core-v2/src/features/tower/tools/teardown/teardown.md
  • packages/agent-core-v2/src/features/tower/tools/teardown/teardownTool.ts
  • packages/agent-core-v2/src/features/tower/towerService.ts
  • packages/agent-core-v2/src/index.ts
  • packages/agent-core-v2/src/kosong/provider/providers/pythinker/pythinker.contrib.ts
  • packages/agent-core-v2/src/persistence/backends/node-fs/atomicDocumentStore.ts
  • packages/agent-core-v2/src/persistence/interface/atomicDocumentStore.ts
  • packages/agent-core-v2/src/session/agentLifecycle/agentLifecycleService.ts
  • packages/agent-core-v2/src/session/expertTalk/expertTalk.ts
  • packages/agent-core-v2/src/session/expertTalk/expertTalkPrompts.ts
  • packages/agent-core-v2/src/session/expertTalk/expertTalkPure.ts
  • packages/agent-core-v2/src/session/expertTalk/expertTalkService.ts
  • packages/agent-core-v2/src/session/expertTalk/flag.ts
  • packages/agent-core-v2/src/session/subagent/flag.ts
  • packages/agent-core-v2/src/workspace/sessionLifecycle/sessionLifecycleService.ts
  • packages/agent-core-v2/test/_base/di/cascade.test.ts
  • packages/agent-core-v2/test/agent/loop/loop.test.ts
  • packages/agent-core-v2/test/agent/permissionPolicy/permissionPolicyService.test.ts
  • packages/agent-core-v2/test/agent/prompt/promptService.test.ts
  • packages/agent-core-v2/test/app/config/config.test.ts
  • packages/agent-core-v2/test/app/sessionIndex/sessionIndex.test.ts
  • packages/agent-core-v2/test/app/sessionIndex/sessionIndexMirror.test.ts
  • packages/agent-core-v2/test/features/plan/plan.test.ts
  • packages/agent-core-v2/test/features/tower/store.test.ts
  • packages/agent-core-v2/test/features/tower/tools/spawnTool.test.ts
  • packages/agent-core-v2/test/features/tower/tools/towerTools.test.ts
  • packages/agent-core-v2/test/features/tower/towerService.test.ts
  • packages/agent-core-v2/test/index.test.ts
  • packages/agent-core-v2/test/kosong/provider/composition.test.ts
  • packages/agent-core-v2/test/session/expertTalk/expertTalkPure.test.ts
  • packages/agent-core-v2/test/state/builtinReplayableKeys.ts
  • packages/agent-core-v2/test/tool/tool.test.ts
  • packages/agent-core-v2/test/wire/resume.test.ts
  • packages/agent-gateway/src/protocol/rest-expert-talk.ts
  • packages/agent-gateway/src/routes/expertTalk.ts
  • packages/agent-gateway/src/services/transcript/coreBinding.ts
  • packages/agent-gateway/src/services/transcript/coreEventMap.ts
  • packages/agent-gateway/src/services/transcript/transcriptService.ts
  • packages/agent-gateway/test/config.test.ts
  • packages/agent-gateway/test/expertTalk.test.ts
  • packages/agent-gateway/test/subagentModelPolicy.test.ts
  • packages/klient/src/contract/session/expertTalk.ts
  • packages/klient/test/contract.test.ts
  • packages/node-sdk/test/v1-v2-parity.test.ts
  • packages/transcript/src/contract/schema.ts
  • packages/transcript/src/history/foldFacts.ts
  • packages/transcript/src/history/groupTurns.ts
  • packages/transcript/src/model/turn.ts
  • packages/transcript/src/ops/apply.ts
  • .changeset/add-pythinker-responses.md
  • .changeset/enable-secondary-model-routing.md
  • .changeset/fix-action-toast-layout.md
  • .changeset/fix-discussion-model-preferences.md
  • .changeset/fix-discussion-workflow-reliability.md
  • .changeset/fix-dynamic-workflow-status-alignment.md
  • .changeset/fix-transcript-turn-recovery.md
  • .changeset/guard-dangerous-shell-commands.md
  • .changeset/preserve-config-formatting.md
  • .changeset/preserve-tower-workspace-state.md
  • .changeset/restore-discussion-comparison.md
  • .changeset/restore-discussion-name.md
  • .changeset/stream-discussion-reasoning.md
  • apps/pythinker-code/dist-web/assets/CodeBlockNode-CY7pKxCh.js
  • apps/pythinker-code/dist-web/assets/DesignSystemView-CSHKE58i.js
  • apps/pythinker-code/dist-web/assets/Tooltip-DvufBEhr.js
  • apps/pythinker-code/dist-web/assets/abnfDiagram-VCTEODGH-C-Oxxgrn.js
  • apps/pythinker-code/dist-web/assets/arc-0SRHvzAa.js
  • apps/pythinker-code/dist-web/assets/architectureDiagram-5GKGNRK7-D0kUPSdn.js
  • apps/pythinker-code/dist-web/assets/blockDiagram-NRAW4CY4-DeRVeaRA.js
  • apps/pythinker-code/dist-web/assets/c4Diagram-UCG6FXSJ-C5Yd_8fi.js
  • apps/pythinker-code/dist-web/assets/channel-ChsbqN1Q.js
  • apps/pythinker-code/dist-web/assets/chunk-2Q5K7J3B-BPBR84KJ.js
  • apps/pythinker-code/dist-web/assets/chunk-5VM5RSS4-CxMkyOwP.js
  • apps/pythinker-code/dist-web/assets/chunk-F27PBJKO-3riiqIxG.js
  • apps/pythinker-code/dist-web/assets/chunk-G27WJ6UU-DrPxSEWc.js
  • apps/pythinker-code/dist-web/assets/chunk-JWPE2WC7-HS-aH569.js
  • apps/pythinker-code/dist-web/assets/chunk-LCL6LL3I-_00MAQpl.js
  • apps/pythinker-code/dist-web/assets/chunk-POPQ4Y6H-DaQ3XMWt.js
  • apps/pythinker-code/dist-web/assets/chunk-SVP7TREG-Cnh7Zacf.js
  • apps/pythinker-code/dist-web/assets/chunk-XXDRQBXY-BaiR96hA.js
  • apps/pythinker-code/dist-web/assets/classDiagram-DTDB5LWJ-B-NT61xZ.js
  • apps/pythinker-code/dist-web/assets/classDiagram-v2-JRS7N3AN-B-NT61xZ.js
  • apps/pythinker-code/dist-web/assets/cose-bilkent-JH36ORCC-BW9h0Zzm.js
  • apps/pythinker-code/dist-web/assets/cssMode-2KJP7-kG.js
  • apps/pythinker-code/dist-web/assets/cynefin-OW5HDTMX-CE5-qral.js
  • apps/pythinker-code/dist-web/assets/cynefinDiagram-5FMLGOSQ-CNt_j2dy.js
  • apps/pythinker-code/dist-web/assets/dagre-3AP2YEHR-DP4xs9My.js
  • apps/pythinker-code/dist-web/assets/diagram-S7CK7UJ4-D2hRiT4T.js
  • apps/pythinker-code/dist-web/assets/diagram-UQ7AKVKN-BYjGYJ-M.js
  • apps/pythinker-code/dist-web/assets/diagram-VSXAHHWV-BIeRAUu6.js
  • apps/pythinker-code/dist-web/assets/diagram-VX7I27RA-BkrTvyrU.js
  • apps/pythinker-code/dist-web/assets/diagram-Z3DM3KII-Cq71wXw_.js
  • apps/pythinker-code/dist-web/assets/ebnfDiagram-PWID7BFC-DkxDRX4J.js
  • apps/pythinker-code/dist-web/assets/editor.main-BS91Tx5P.js
  • apps/pythinker-code/dist-web/assets/erDiagram-SSCWMZ5O-ClDQNjW1.js
  • apps/pythinker-code/dist-web/assets/flowDiagram-A5DVABFB-CX38VJ5k.js
  • apps/pythinker-code/dist-web/assets/freemarker2-C7cuCutb.js
  • apps/pythinker-code/dist-web/assets/ganttDiagram-EL5Y4UJY-y3yoX0qU.js
  • apps/pythinker-code/dist-web/assets/gitGraphDiagram-WWUBYQGX-BmBUm2Rj.js
  • apps/pythinker-code/dist-web/assets/handlebars-Brq4QUNR.js
  • apps/pythinker-code/dist-web/assets/html-N7MpipNG.js
  • apps/pythinker-code/dist-web/assets/htmlMode-vm23QBtJ.js
  • apps/pythinker-code/dist-web/assets/index-BtQiDx75.js
  • apps/pythinker-code/dist-web/assets/index-DA7nr8PA.js
  • apps/pythinker-code/dist-web/assets/index-DLKdCtNk.js
  • apps/pythinker-code/dist-web/assets/index-FrW0TDIh.css
  • apps/pythinker-code/dist-web/assets/index-q2Z9spcI.js
  • apps/pythinker-code/dist-web/assets/index10-DEfQ7viZ.js
  • apps/pythinker-code/dist-web/assets/index11-BVFIYvmm.js
  • apps/pythinker-code/dist-web/assets/index5-D8i_cPCq.js
  • apps/pythinker-code/dist-web/assets/index6-DYs75zI1.js
  • apps/pythinker-code/dist-web/assets/index7-CPjpHxva.js
  • apps/pythinker-code/dist-web/assets/index8-BrMj77ds.js
  • apps/pythinker-code/dist-web/assets/infoDiagram-RXCK75RN-Dtkf5bM-.js
  • apps/pythinker-code/dist-web/assets/ishikawaDiagram-5VMMS53U-CfzzwV3L.js
  • apps/pythinker-code/dist-web/assets/javascript-Cx8FQbG7.js
  • apps/pythinker-code/dist-web/assets/journeyDiagram-EYS64GPL-CI7FcTDf.js
  • apps/pythinker-code/dist-web/assets/jsonMode-DZUWXXND.js
  • apps/pythinker-code/dist-web/assets/kanban-definition-3QL26DDD-DrUPy0l4.js
  • apps/pythinker-code/dist-web/assets/layout-xF80iG_v.js
  • apps/pythinker-code/dist-web/assets/linear-mr7Zurq8.js
  • apps/pythinker-code/dist-web/assets/liquid-kOLMCRG2.js
  • apps/pythinker-code/dist-web/assets/lspLanguageFeatures-DqZLKgFz.js
  • apps/pythinker-code/dist-web/assets/mdx-YKbHUwdq.js
  • apps/pythinker-code/dist-web/assets/mermaid.core-Cri-5Ftp.js
  • apps/pythinker-code/dist-web/assets/mindmap-definition-FBJOCRG2-Dsu19iCK.js
  • apps/pythinker-code/dist-web/assets/pegDiagram-XKGWAZYB--4E9G5M5.js
  • apps/pythinker-code/dist-web/assets/pieDiagram-E7YTZNPT-CZh-Pexi.js
  • apps/pythinker-code/dist-web/assets/python-BZkGRzmN.js
  • apps/pythinker-code/dist-web/assets/quadrantDiagram-AXDQQJYC-6FQ3KBfJ.js
  • apps/pythinker-code/dist-web/assets/railroadDiagram-O6MQD6OU-1mjscgu0.js
  • apps/pythinker-code/dist-web/assets/razor-DeTKcREq.js
  • apps/pythinker-code/dist-web/assets/requirementDiagram-EFPCY7ZU-DFc7lAa3.js
  • apps/pythinker-code/dist-web/assets/sankeyDiagram-P5KCCOFB-C-KdGnKf.js
  • apps/pythinker-code/dist-web/assets/sequenceDiagram-WJ2MYXX4-CE1xgOIF.js
  • apps/pythinker-code/dist-web/assets/sizeCapture-X5ZJPWSS-uwIYJX7I.js
  • apps/pythinker-code/dist-web/assets/stateDiagram-HBIQ2CUA-CWzcgRlR.js
  • apps/pythinker-code/dist-web/assets/stateDiagram-v2-4QOOHH4V-DxGkZL83.js
  • apps/pythinker-code/dist-web/assets/swimlanes-XN3QIQJK-Cfesf2lC.js
  • apps/pythinker-code/dist-web/assets/swimlanesDiagram-VK2B7HYN-1YpS_7ou.js
  • apps/pythinker-code/dist-web/assets/timeline-definition-24CTP7MA-BHgFWg1l.js
  • apps/pythinker-code/dist-web/assets/tsMode-BlOIi2Z2.js
  • apps/pythinker-code/dist-web/assets/typescript-KCdKOibJ.js
  • apps/pythinker-code/dist-web/assets/vennDiagram-4TSXK5OY-DUjnRJJe.js
  • apps/pythinker-code/dist-web/assets/vue.runtime.esm-bundler-C8b3KlKf.js
  • apps/pythinker-code/dist-web/assets/wardleyDiagram-VM6X3IG4-DBnjDaWp.js
  • apps/pythinker-code/dist-web/assets/xml-BbBKP0Zy.js
  • apps/pythinker-code/dist-web/assets/xychartDiagram-S5SC5T6Z-CViU4BAD.js
  • apps/pythinker-code/dist-web/assets/yaml-CuA8tJGk.js
  • apps/pythinker-web/test/model-provider-state.test.ts
  • packages/agent-core-v2/src/agent/modeMutex/modeMutex.ts
  • packages/agent-core-v2/src/agent/modeMutex/modeMutexService.ts
  • packages/agent-core-v2/src/agent/permissionPolicy/policies/dangerous-command-ask.ts
  • packages/agent-core-v2/src/app/config/tomlWriteback.ts
  • packages/agent-core-v2/src/features/tower/protocol/baseWip.ts
  • packages/agent-core-v2/test/agent/modeMutex/modeMutex.test.ts
  • packages/agent-core-v2/test/app/config/tomlWriteback.test.ts
  • packages/agent-core-v2/test/app/config/writeback.test.ts
  • packages/agent-core-v2/test/session/expertTalk/expertTalkService.test.ts

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.


Comment @coderabbitai help to get the list of available commands.

@pkg-pr-new

pkg-pr-new Bot commented Sep 1, 2026

Copy link
Copy Markdown
pnpm dlx https://pkg.pr.new/@pymodel/pythinker-code@04b865f
npx https://pkg.pr.new/@pymodel/pythinker-code@04b865f

commit: 04b865f

@@ -1,4 +1,4 @@
import{g as te}from"./chunk-XXDRQBXY-B5xstnDi.js";import{s as ee}from"./chunk-POPQ4Y6H-CF_VrAXY.js";import{_ as f,l as _,c as $,y as se,z as ie,a as re,b as ae,g as ne,s as oe,p as le,q as ce,aa as he,k as j,r as ue,j as bt}from"./mermaid.core-CVcgJ56o.js";import{f as de}from"./chunk-F27PBJKO-Cj5fiomV.js";import{p as fe}from"./purify.es-5AjVNlXF.js";var vt=(function(){var t=f(function(V,a,u,r){for(u=u||{},r=V.length;r--;u[V[r]]=a);return u},"o"),e=[1,2],o=[1,3],s=[1,4],c=[2,4],h=[1,9],p=[1,11],y=[1,16],n=[1,17],T=[1,18],m=[1,19],N=[1,33],x=[1,20],k=[1,21],d=[1,22],L=[1,23],R=[1,24],v=[1,26],F=[1,27],C=[1,28],P=[1,29],I=[1,30],H=[1,31],it=[1,32],rt=[1,35],at=[1,36],nt=[1,37],ot=[1,38],z=[1,34],S=[1,4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],lt=[1,4,5,14,15,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,39,40,41,45,48,51,52,53,54,57],xt=[4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],yt={trace:f(function(){},"trace"),yy:{},symbols_:{error:2,start:3,SPACE:4,NL:5,SD:6,document:7,line:8,statement:9,classDefStatement:10,styleStatement:11,cssClassStatement:12,idStatement:13,DESCR:14,"-->":15,HIDE_EMPTY:16,scale:17,WIDTH:18,COMPOSIT_STATE:19,STRUCT_START:20,STRUCT_STOP:21,STATE_DESCR:22,AS:23,ID:24,FORK:25,JOIN:26,CHOICE:27,CONCURRENT:28,note:29,notePosition:30,NOTE_TEXT:31,direction:32,acc_title:33,acc_title_value:34,acc_descr:35,acc_descr_value:36,acc_descr_multiline_value:37,CLICK:38,STRING:39,HREF:40,classDef:41,CLASSDEF_ID:42,CLASSDEF_STYLEOPTS:43,DEFAULT:44,style:45,STYLE_IDS:46,STYLEDEF_STYLEOPTS:47,class:48,CLASSENTITY_IDS:49,STYLECLASS:50,direction_tb:51,direction_bt:52,direction_rl:53,direction_lr:54,eol:55,";":56,EDGE_STATE:57,STYLE_SEPARATOR:58,left_of:59,right_of:60,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NL",6:"SD",14:"DESCR",15:"-->",16:"HIDE_EMPTY",17:"scale",18:"WIDTH",19:"COMPOSIT_STATE",20:"STRUCT_START",21:"STRUCT_STOP",22:"STATE_DESCR",23:"AS",24:"ID",25:"FORK",26:"JOIN",27:"CHOICE",28:"CONCURRENT",29:"note",31:"NOTE_TEXT",33:"acc_title",34:"acc_title_value",35:"acc_descr",36:"acc_descr_value",37:"acc_descr_multiline_value",38:"CLICK",39:"STRING",40:"HREF",41:"classDef",42:"CLASSDEF_ID",43:"CLASSDEF_STYLEOPTS",44:"DEFAULT",45:"style",46:"STYLE_IDS",47:"STYLEDEF_STYLEOPTS",48:"class",49:"CLASSENTITY_IDS",50:"STYLECLASS",51:"direction_tb",52:"direction_bt",53:"direction_rl",54:"direction_lr",56:";",57:"EDGE_STATE",58:"STYLE_SEPARATOR",59:"left_of",60:"right_of"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[8,1],[8,1],[9,1],[9,1],[9,1],[9,1],[9,2],[9,3],[9,4],[9,1],[9,2],[9,1],[9,4],[9,3],[9,6],[9,1],[9,1],[9,1],[9,1],[9,4],[9,4],[9,1],[9,2],[9,2],[9,1],[9,5],[9,5],[10,3],[10,3],[11,3],[12,3],[32,1],[32,1],[32,1],[32,1],[55,1],[55,1],[13,1],[13,1],[13,3],[13,3],[30,1],[30,1]],performAction:f(function(a,u,r,g,E,i,B){var l=i.length-1;switch(E){case 3:return g.setRootDoc(i[l]),i[l];case 4:this.$=[];break;case 5:i[l]!="nl"&&(i[l-1].push(i[l]),this.$=i[l-1]);break;case 6:case 7:this.$=i[l];break;case 8:this.$="nl";break;case 12:this.$=i[l];break;case 13:const Q=i[l-1];Q.description=g.trimColon(i[l]),this.$=Q;break;case 14:this.$={stmt:"relation",state1:i[l-2],state2:i[l]};break;case 15:const gt=g.trimColon(i[l]);this.$={stmt:"relation",state1:i[l-3],state2:i[l-1],description:gt};break;case 19:this.$={stmt:"state",id:i[l-3],type:"default",description:"",doc:i[l-1]};break;case 20:var Y=i[l],K=i[l-2].trim();if(i[l].match(":")){var ht=i[l].split(":");Y=ht[0],K=[K,ht[1]]}this.$={stmt:"state",id:Y,type:"default",description:K};break;case 21:this.$={stmt:"state",id:i[l-3],type:"default",description:i[l-5],doc:i[l-1]};break;case 22:this.$={stmt:"state",id:i[l],type:"fork"};break;case 23:this.$={stmt:"state",id:i[l],type:"join"};break;case 24:this.$={stmt:"state",id:i[l],type:"choice"};break;case 25:this.$={stmt:"state",id:g.getDividerId(),type:"divider"};break;case 26:this.$={stmt:"state",id:i[l-1].trim(),note:{position:i[l-2].trim(),text:i[l].trim()}};break;case 29:this.$=i[l].trim(),g.setAccTitle(this.$);break;case 30:case 31:this.$=i[l].trim(),g.setAccDescription(this.$);break;case 32:this.$={stmt:"click",id:i[l-3],url:i[l-2],tooltip:i[l-1]};break;case 33:this.$={stmt:"click",id:i[l-3],url:i[l-1],tooltip:""};break;case 34:case 35:this.$={stmt:"classDef",id:i[l-1].trim(),classes:i[l].trim()};break;case 36:this.$={stmt:"style",id:i[l-1].trim(),styleClass:i[l].trim()};break;case 37:this.$={stmt:"applyClass",id:i[l-1].trim(),styleClass:i[l].trim()};break;case 38:g.setDirection("TB"),this.$={stmt:"dir",value:"TB"};break;case 39:g.setDirection("BT"),this.$={stmt:"dir",value:"BT"};break;case 40:g.setDirection("RL"),this.$={stmt:"dir",value:"RL"};break;case 41:g.setDirection("LR"),this.$={stmt:"dir",value:"LR"};break;case 44:case 45:this.$={stmt:"state",id:i[l].trim(),type:"default",description:""};break;case 46:this.$={stmt:"state",id:i[l-2].trim(),classes:[i[l].trim()],type:"default",description:""};break;case 47:this.$={stmt:"state",id:i[l-2].trim(),classes:[i[l].trim()],type:"default",description:""};break}},"anonymous"),table:[{3:1,4:e,5:o,6:s},{1:[3]},{3:5,4:e,5:o,6:s},{3:6,4:e,5:o,6:s},t([1,4,5,16,17,19,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],c,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:h,5:p,8:8,9:10,10:12,11:13,12:14,13:15,16:y,17:n,19:T,22:m,24:N,25:x,26:k,27:d,28:L,29:R,32:25,33:v,35:F,37:C,38:P,41:I,45:H,48:it,51:rt,52:at,53:nt,54:ot,57:z},t(S,[2,5]),{9:39,10:12,11:13,12:14,13:15,16:y,17:n,19:T,22:m,24:N,25:x,26:k,27:d,28:L,29:R,32:25,33:v,35:F,37:C,38:P,41:I,45:H,48:it,51:rt,52:at,53:nt,54:ot,57:z},t(S,[2,7]),t(S,[2,8]),t(S,[2,9]),t(S,[2,10]),t(S,[2,11]),t(S,[2,12],{14:[1,40],15:[1,41]}),t(S,[2,16]),{18:[1,42]},t(S,[2,18],{20:[1,43]}),{23:[1,44]},t(S,[2,22]),t(S,[2,23]),t(S,[2,24]),t(S,[2,25]),{30:45,31:[1,46],59:[1,47],60:[1,48]},t(S,[2,28]),{34:[1,49]},{36:[1,50]},t(S,[2,31]),{13:51,24:N,57:z},{42:[1,52],44:[1,53]},{46:[1,54]},{49:[1,55]},t(lt,[2,44],{58:[1,56]}),t(lt,[2,45],{58:[1,57]}),t(S,[2,38]),t(S,[2,39]),t(S,[2,40]),t(S,[2,41]),t(S,[2,6]),t(S,[2,13]),{13:58,24:N,57:z},t(S,[2,17]),t(xt,c,{7:59}),{24:[1,60]},{24:[1,61]},{23:[1,62]},{24:[2,48]},{24:[2,49]},t(S,[2,29]),t(S,[2,30]),{39:[1,63],40:[1,64]},{43:[1,65]},{43:[1,66]},{47:[1,67]},{50:[1,68]},{24:[1,69]},{24:[1,70]},t(S,[2,14],{14:[1,71]}),{4:h,5:p,8:8,9:10,10:12,11:13,12:14,13:15,16:y,17:n,19:T,21:[1,72],22:m,24:N,25:x,26:k,27:d,28:L,29:R,32:25,33:v,35:F,37:C,38:P,41:I,45:H,48:it,51:rt,52:at,53:nt,54:ot,57:z},t(S,[2,20],{20:[1,73]}),{31:[1,74]},{24:[1,75]},{39:[1,76]},{39:[1,77]},t(S,[2,34]),t(S,[2,35]),t(S,[2,36]),t(S,[2,37]),t(lt,[2,46]),t(lt,[2,47]),t(S,[2,15]),t(S,[2,19]),t(xt,c,{7:78}),t(S,[2,26]),t(S,[2,27]),{5:[1,79]},{5:[1,80]},{4:h,5:p,8:8,9:10,10:12,11:13,12:14,13:15,16:y,17:n,19:T,21:[1,81],22:m,24:N,25:x,26:k,27:d,28:L,29:R,32:25,33:v,35:F,37:C,38:P,41:I,45:H,48:it,51:rt,52:at,53:nt,54:ot,57:z},t(S,[2,32]),t(S,[2,33]),t(S,[2,21])],defaultActions:{5:[2,1],6:[2,2],47:[2,48],48:[2,49]},parseError:f(function(a,u){if(u.recoverable)this.trace(a);else{var r=new Error(a);throw r.hash=u,r}},"parseError"),parse:f(function(a){var u=this,r=[0],g=[],E=[null],i=[],B=this.table,l="",Y=0,K=0,ht=2,Q=1,gt=i.slice.call(arguments,1),b=Object.create(this.lexer),U={yy:{}};for(var Tt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Tt)&&(U.yy[Tt]=this.yy[Tt]);b.setInput(a,U.yy),U.yy.lexer=b,U.yy.parser=this,typeof b.yylloc>"u"&&(b.yylloc={});var Et=b.yylloc;i.push(Et);var Qt=b.options&&b.options.ranges;typeof U.yy.parseError=="function"?this.parseError=U.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Zt(w){r.length=r.length-2*w,E.length=E.length-w,i.length=i.length-w}f(Zt,"popStack");function Lt(){var w;return w=g.pop()||b.lex()||Q,typeof w!="number"&&(w instanceof Array&&(g=w,w=g.pop()),w=u.symbols_[w]||w),w}f(Lt,"lex");for(var A,W,O,_t,X={},ut,G,It,dt;;){if(W=r[r.length-1],this.defaultActions[W]?O=this.defaultActions[W]:((A===null||typeof A>"u")&&(A=Lt()),O=B[W]&&B[W][A]),typeof O>"u"||!O.length||!O[0]){var mt="";dt=[];for(ut in B[W])this.terminals_[ut]&&ut>ht&&dt.push("'"+this.terminals_[ut]+"'");b.showPosition?mt="Parse error on line "+(Y+1)+`:
import{g as te}from"./chunk-XXDRQBXY-BaiR96hA.js";import{s as ee}from"./chunk-POPQ4Y6H-DaQ3XMWt.js";import{_ as f,l as _,c as $,y as se,z as ie,a as re,b as ae,g as ne,s as oe,p as le,q as ce,aa as he,k as j,r as ue,j as bt}from"./mermaid.core-Cri-5Ftp.js";import{f as de}from"./chunk-F27PBJKO-3riiqIxG.js";import{p as fe}from"./purify.es-5AjVNlXF.js";var vt=(function(){var t=f(function(V,a,u,r){for(u=u||{},r=V.length;r--;u[V[r]]=a);return u},"o"),e=[1,2],o=[1,3],s=[1,4],c=[2,4],h=[1,9],p=[1,11],y=[1,16],n=[1,17],T=[1,18],m=[1,19],N=[1,33],x=[1,20],k=[1,21],d=[1,22],L=[1,23],R=[1,24],v=[1,26],F=[1,27],C=[1,28],P=[1,29],I=[1,30],H=[1,31],it=[1,32],rt=[1,35],at=[1,36],nt=[1,37],ot=[1,38],z=[1,34],S=[1,4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],lt=[1,4,5,14,15,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,39,40,41,45,48,51,52,53,54,57],xt=[4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],yt={trace:f(function(){},"trace"),yy:{},symbols_:{error:2,start:3,SPACE:4,NL:5,SD:6,document:7,line:8,statement:9,classDefStatement:10,styleStatement:11,cssClassStatement:12,idStatement:13,DESCR:14,"-->":15,HIDE_EMPTY:16,scale:17,WIDTH:18,COMPOSIT_STATE:19,STRUCT_START:20,STRUCT_STOP:21,STATE_DESCR:22,AS:23,ID:24,FORK:25,JOIN:26,CHOICE:27,CONCURRENT:28,note:29,notePosition:30,NOTE_TEXT:31,direction:32,acc_title:33,acc_title_value:34,acc_descr:35,acc_descr_value:36,acc_descr_multiline_value:37,CLICK:38,STRING:39,HREF:40,classDef:41,CLASSDEF_ID:42,CLASSDEF_STYLEOPTS:43,DEFAULT:44,style:45,STYLE_IDS:46,STYLEDEF_STYLEOPTS:47,class:48,CLASSENTITY_IDS:49,STYLECLASS:50,direction_tb:51,direction_bt:52,direction_rl:53,direction_lr:54,eol:55,";":56,EDGE_STATE:57,STYLE_SEPARATOR:58,left_of:59,right_of:60,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NL",6:"SD",14:"DESCR",15:"-->",16:"HIDE_EMPTY",17:"scale",18:"WIDTH",19:"COMPOSIT_STATE",20:"STRUCT_START",21:"STRUCT_STOP",22:"STATE_DESCR",23:"AS",24:"ID",25:"FORK",26:"JOIN",27:"CHOICE",28:"CONCURRENT",29:"note",31:"NOTE_TEXT",33:"acc_title",34:"acc_title_value",35:"acc_descr",36:"acc_descr_value",37:"acc_descr_multiline_value",38:"CLICK",39:"STRING",40:"HREF",41:"classDef",42:"CLASSDEF_ID",43:"CLASSDEF_STYLEOPTS",44:"DEFAULT",45:"style",46:"STYLE_IDS",47:"STYLEDEF_STYLEOPTS",48:"class",49:"CLASSENTITY_IDS",50:"STYLECLASS",51:"direction_tb",52:"direction_bt",53:"direction_rl",54:"direction_lr",56:";",57:"EDGE_STATE",58:"STYLE_SEPARATOR",59:"left_of",60:"right_of"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[8,1],[8,1],[9,1],[9,1],[9,1],[9,1],[9,2],[9,3],[9,4],[9,1],[9,2],[9,1],[9,4],[9,3],[9,6],[9,1],[9,1],[9,1],[9,1],[9,4],[9,4],[9,1],[9,2],[9,2],[9,1],[9,5],[9,5],[10,3],[10,3],[11,3],[12,3],[32,1],[32,1],[32,1],[32,1],[55,1],[55,1],[13,1],[13,1],[13,3],[13,3],[30,1],[30,1]],performAction:f(function(a,u,r,g,E,i,B){var l=i.length-1;switch(E){case 3:return g.setRootDoc(i[l]),i[l];case 4:this.$=[];break;case 5:i[l]!="nl"&&(i[l-1].push(i[l]),this.$=i[l-1]);break;case 6:case 7:this.$=i[l];break;case 8:this.$="nl";break;case 12:this.$=i[l];break;case 13:const Q=i[l-1];Q.description=g.trimColon(i[l]),this.$=Q;break;case 14:this.$={stmt:"relation",state1:i[l-2],state2:i[l]};break;case 15:const gt=g.trimColon(i[l]);this.$={stmt:"relation",state1:i[l-3],state2:i[l-1],description:gt};break;case 19:this.$={stmt:"state",id:i[l-3],type:"default",description:"",doc:i[l-1]};break;case 20:var Y=i[l],K=i[l-2].trim();if(i[l].match(":")){var ht=i[l].split(":");Y=ht[0],K=[K,ht[1]]}this.$={stmt:"state",id:Y,type:"default",description:K};break;case 21:this.$={stmt:"state",id:i[l-3],type:"default",description:i[l-5],doc:i[l-1]};break;case 22:this.$={stmt:"state",id:i[l],type:"fork"};break;case 23:this.$={stmt:"state",id:i[l],type:"join"};break;case 24:this.$={stmt:"state",id:i[l],type:"choice"};break;case 25:this.$={stmt:"state",id:g.getDividerId(),type:"divider"};break;case 26:this.$={stmt:"state",id:i[l-1].trim(),note:{position:i[l-2].trim(),text:i[l].trim()}};break;case 29:this.$=i[l].trim(),g.setAccTitle(this.$);break;case 30:case 31:this.$=i[l].trim(),g.setAccDescription(this.$);break;case 32:this.$={stmt:"click",id:i[l-3],url:i[l-2],tooltip:i[l-1]};break;case 33:this.$={stmt:"click",id:i[l-3],url:i[l-1],tooltip:""};break;case 34:case 35:this.$={stmt:"classDef",id:i[l-1].trim(),classes:i[l].trim()};break;case 36:this.$={stmt:"style",id:i[l-1].trim(),styleClass:i[l].trim()};break;case 37:this.$={stmt:"applyClass",id:i[l-1].trim(),styleClass:i[l].trim()};break;case 38:g.setDirection("TB"),this.$={stmt:"dir",value:"TB"};break;case 39:g.setDirection("BT"),this.$={stmt:"dir",value:"BT"};break;case 40:g.setDirection("RL"),this.$={stmt:"dir",value:"RL"};break;case 41:g.setDirection("LR"),this.$={stmt:"dir",value:"LR"};break;case 44:case 45:this.$={stmt:"state",id:i[l].trim(),type:"default",description:""};break;case 46:this.$={stmt:"state",id:i[l-2].trim(),classes:[i[l].trim()],type:"default",description:""};break;case 47:this.$={stmt:"state",id:i[l-2].trim(),classes:[i[l].trim()],type:"default",description:""};break}},"anonymous"),table:[{3:1,4:e,5:o,6:s},{1:[3]},{3:5,4:e,5:o,6:s},{3:6,4:e,5:o,6:s},t([1,4,5,16,17,19,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],c,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:h,5:p,8:8,9:10,10:12,11:13,12:14,13:15,16:y,17:n,19:T,22:m,24:N,25:x,26:k,27:d,28:L,29:R,32:25,33:v,35:F,37:C,38:P,41:I,45:H,48:it,51:rt,52:at,53:nt,54:ot,57:z},t(S,[2,5]),{9:39,10:12,11:13,12:14,13:15,16:y,17:n,19:T,22:m,24:N,25:x,26:k,27:d,28:L,29:R,32:25,33:v,35:F,37:C,38:P,41:I,45:H,48:it,51:rt,52:at,53:nt,54:ot,57:z},t(S,[2,7]),t(S,[2,8]),t(S,[2,9]),t(S,[2,10]),t(S,[2,11]),t(S,[2,12],{14:[1,40],15:[1,41]}),t(S,[2,16]),{18:[1,42]},t(S,[2,18],{20:[1,43]}),{23:[1,44]},t(S,[2,22]),t(S,[2,23]),t(S,[2,24]),t(S,[2,25]),{30:45,31:[1,46],59:[1,47],60:[1,48]},t(S,[2,28]),{34:[1,49]},{36:[1,50]},t(S,[2,31]),{13:51,24:N,57:z},{42:[1,52],44:[1,53]},{46:[1,54]},{49:[1,55]},t(lt,[2,44],{58:[1,56]}),t(lt,[2,45],{58:[1,57]}),t(S,[2,38]),t(S,[2,39]),t(S,[2,40]),t(S,[2,41]),t(S,[2,6]),t(S,[2,13]),{13:58,24:N,57:z},t(S,[2,17]),t(xt,c,{7:59}),{24:[1,60]},{24:[1,61]},{23:[1,62]},{24:[2,48]},{24:[2,49]},t(S,[2,29]),t(S,[2,30]),{39:[1,63],40:[1,64]},{43:[1,65]},{43:[1,66]},{47:[1,67]},{50:[1,68]},{24:[1,69]},{24:[1,70]},t(S,[2,14],{14:[1,71]}),{4:h,5:p,8:8,9:10,10:12,11:13,12:14,13:15,16:y,17:n,19:T,21:[1,72],22:m,24:N,25:x,26:k,27:d,28:L,29:R,32:25,33:v,35:F,37:C,38:P,41:I,45:H,48:it,51:rt,52:at,53:nt,54:ot,57:z},t(S,[2,20],{20:[1,73]}),{31:[1,74]},{24:[1,75]},{39:[1,76]},{39:[1,77]},t(S,[2,34]),t(S,[2,35]),t(S,[2,36]),t(S,[2,37]),t(lt,[2,46]),t(lt,[2,47]),t(S,[2,15]),t(S,[2,19]),t(xt,c,{7:78}),t(S,[2,26]),t(S,[2,27]),{5:[1,79]},{5:[1,80]},{4:h,5:p,8:8,9:10,10:12,11:13,12:14,13:15,16:y,17:n,19:T,21:[1,81],22:m,24:N,25:x,26:k,27:d,28:L,29:R,32:25,33:v,35:F,37:C,38:P,41:I,45:H,48:it,51:rt,52:at,53:nt,54:ot,57:z},t(S,[2,32]),t(S,[2,33]),t(S,[2,21])],defaultActions:{5:[2,1],6:[2,2],47:[2,48],48:[2,49]},parseError:f(function(a,u){if(u.recoverable)this.trace(a);else{var r=new Error(a);throw r.hash=u,r}},"parseError"),parse:f(function(a){var u=this,r=[0],g=[],E=[null],i=[],B=this.table,l="",Y=0,K=0,ht=2,Q=1,gt=i.slice.call(arguments,1),b=Object.create(this.lexer),U={yy:{}};for(var Tt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Tt)&&(U.yy[Tt]=this.yy[Tt]);b.setInput(a,U.yy),U.yy.lexer=b,U.yy.parser=this,typeof b.yylloc>"u"&&(b.yylloc={});var Et=b.yylloc;i.push(Et);var Qt=b.options&&b.options.ranges;typeof U.yy.parseError=="function"?this.parseError=U.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Zt(w){r.length=r.length-2*w,E.length=E.length-w,i.length=i.length-w}f(Zt,"popStack");function Lt(){var w;return w=g.pop()||b.lex()||Q,typeof w!="number"&&(w instanceof Array&&(g=w,w=g.pop()),w=u.symbols_[w]||w),w}f(Lt,"lex");for(var A,W,O,_t,X={},ut,G,It,dt;;){if(W=r[r.length-1],this.defaultActions[W]?O=this.defaultActions[W]:((A===null||typeof A>"u")&&(A=Lt()),O=B[W]&&B[W][A]),typeof O>"u"||!O.length||!O[0]){var mt="";dt=[];for(ut in B[W])this.terminals_[ut]&&ut>ht&&dt.push("'"+this.terminals_[ut]+"'");b.showPosition?mt="Parse error on line "+(Y+1)+`:
@@ -1,4 +1,4 @@
import{g as te}from"./chunk-XXDRQBXY-B5xstnDi.js";import{s as ee}from"./chunk-POPQ4Y6H-CF_VrAXY.js";import{_ as f,l as _,c as $,y as se,z as ie,a as re,b as ae,g as ne,s as oe,p as le,q as ce,aa as he,k as j,r as ue,j as bt}from"./mermaid.core-CVcgJ56o.js";import{f as de}from"./chunk-F27PBJKO-Cj5fiomV.js";import{p as fe}from"./purify.es-5AjVNlXF.js";var vt=(function(){var t=f(function(V,a,u,r){for(u=u||{},r=V.length;r--;u[V[r]]=a);return u},"o"),e=[1,2],o=[1,3],s=[1,4],c=[2,4],h=[1,9],p=[1,11],y=[1,16],n=[1,17],T=[1,18],m=[1,19],N=[1,33],x=[1,20],k=[1,21],d=[1,22],L=[1,23],R=[1,24],v=[1,26],F=[1,27],C=[1,28],P=[1,29],I=[1,30],H=[1,31],it=[1,32],rt=[1,35],at=[1,36],nt=[1,37],ot=[1,38],z=[1,34],S=[1,4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],lt=[1,4,5,14,15,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,39,40,41,45,48,51,52,53,54,57],xt=[4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],yt={trace:f(function(){},"trace"),yy:{},symbols_:{error:2,start:3,SPACE:4,NL:5,SD:6,document:7,line:8,statement:9,classDefStatement:10,styleStatement:11,cssClassStatement:12,idStatement:13,DESCR:14,"-->":15,HIDE_EMPTY:16,scale:17,WIDTH:18,COMPOSIT_STATE:19,STRUCT_START:20,STRUCT_STOP:21,STATE_DESCR:22,AS:23,ID:24,FORK:25,JOIN:26,CHOICE:27,CONCURRENT:28,note:29,notePosition:30,NOTE_TEXT:31,direction:32,acc_title:33,acc_title_value:34,acc_descr:35,acc_descr_value:36,acc_descr_multiline_value:37,CLICK:38,STRING:39,HREF:40,classDef:41,CLASSDEF_ID:42,CLASSDEF_STYLEOPTS:43,DEFAULT:44,style:45,STYLE_IDS:46,STYLEDEF_STYLEOPTS:47,class:48,CLASSENTITY_IDS:49,STYLECLASS:50,direction_tb:51,direction_bt:52,direction_rl:53,direction_lr:54,eol:55,";":56,EDGE_STATE:57,STYLE_SEPARATOR:58,left_of:59,right_of:60,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NL",6:"SD",14:"DESCR",15:"-->",16:"HIDE_EMPTY",17:"scale",18:"WIDTH",19:"COMPOSIT_STATE",20:"STRUCT_START",21:"STRUCT_STOP",22:"STATE_DESCR",23:"AS",24:"ID",25:"FORK",26:"JOIN",27:"CHOICE",28:"CONCURRENT",29:"note",31:"NOTE_TEXT",33:"acc_title",34:"acc_title_value",35:"acc_descr",36:"acc_descr_value",37:"acc_descr_multiline_value",38:"CLICK",39:"STRING",40:"HREF",41:"classDef",42:"CLASSDEF_ID",43:"CLASSDEF_STYLEOPTS",44:"DEFAULT",45:"style",46:"STYLE_IDS",47:"STYLEDEF_STYLEOPTS",48:"class",49:"CLASSENTITY_IDS",50:"STYLECLASS",51:"direction_tb",52:"direction_bt",53:"direction_rl",54:"direction_lr",56:";",57:"EDGE_STATE",58:"STYLE_SEPARATOR",59:"left_of",60:"right_of"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[8,1],[8,1],[9,1],[9,1],[9,1],[9,1],[9,2],[9,3],[9,4],[9,1],[9,2],[9,1],[9,4],[9,3],[9,6],[9,1],[9,1],[9,1],[9,1],[9,4],[9,4],[9,1],[9,2],[9,2],[9,1],[9,5],[9,5],[10,3],[10,3],[11,3],[12,3],[32,1],[32,1],[32,1],[32,1],[55,1],[55,1],[13,1],[13,1],[13,3],[13,3],[30,1],[30,1]],performAction:f(function(a,u,r,g,E,i,B){var l=i.length-1;switch(E){case 3:return g.setRootDoc(i[l]),i[l];case 4:this.$=[];break;case 5:i[l]!="nl"&&(i[l-1].push(i[l]),this.$=i[l-1]);break;case 6:case 7:this.$=i[l];break;case 8:this.$="nl";break;case 12:this.$=i[l];break;case 13:const Q=i[l-1];Q.description=g.trimColon(i[l]),this.$=Q;break;case 14:this.$={stmt:"relation",state1:i[l-2],state2:i[l]};break;case 15:const gt=g.trimColon(i[l]);this.$={stmt:"relation",state1:i[l-3],state2:i[l-1],description:gt};break;case 19:this.$={stmt:"state",id:i[l-3],type:"default",description:"",doc:i[l-1]};break;case 20:var Y=i[l],K=i[l-2].trim();if(i[l].match(":")){var ht=i[l].split(":");Y=ht[0],K=[K,ht[1]]}this.$={stmt:"state",id:Y,type:"default",description:K};break;case 21:this.$={stmt:"state",id:i[l-3],type:"default",description:i[l-5],doc:i[l-1]};break;case 22:this.$={stmt:"state",id:i[l],type:"fork"};break;case 23:this.$={stmt:"state",id:i[l],type:"join"};break;case 24:this.$={stmt:"state",id:i[l],type:"choice"};break;case 25:this.$={stmt:"state",id:g.getDividerId(),type:"divider"};break;case 26:this.$={stmt:"state",id:i[l-1].trim(),note:{position:i[l-2].trim(),text:i[l].trim()}};break;case 29:this.$=i[l].trim(),g.setAccTitle(this.$);break;case 30:case 31:this.$=i[l].trim(),g.setAccDescription(this.$);break;case 32:this.$={stmt:"click",id:i[l-3],url:i[l-2],tooltip:i[l-1]};break;case 33:this.$={stmt:"click",id:i[l-3],url:i[l-1],tooltip:""};break;case 34:case 35:this.$={stmt:"classDef",id:i[l-1].trim(),classes:i[l].trim()};break;case 36:this.$={stmt:"style",id:i[l-1].trim(),styleClass:i[l].trim()};break;case 37:this.$={stmt:"applyClass",id:i[l-1].trim(),styleClass:i[l].trim()};break;case 38:g.setDirection("TB"),this.$={stmt:"dir",value:"TB"};break;case 39:g.setDirection("BT"),this.$={stmt:"dir",value:"BT"};break;case 40:g.setDirection("RL"),this.$={stmt:"dir",value:"RL"};break;case 41:g.setDirection("LR"),this.$={stmt:"dir",value:"LR"};break;case 44:case 45:this.$={stmt:"state",id:i[l].trim(),type:"default",description:""};break;case 46:this.$={stmt:"state",id:i[l-2].trim(),classes:[i[l].trim()],type:"default",description:""};break;case 47:this.$={stmt:"state",id:i[l-2].trim(),classes:[i[l].trim()],type:"default",description:""};break}},"anonymous"),table:[{3:1,4:e,5:o,6:s},{1:[3]},{3:5,4:e,5:o,6:s},{3:6,4:e,5:o,6:s},t([1,4,5,16,17,19,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],c,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:h,5:p,8:8,9:10,10:12,11:13,12:14,13:15,16:y,17:n,19:T,22:m,24:N,25:x,26:k,27:d,28:L,29:R,32:25,33:v,35:F,37:C,38:P,41:I,45:H,48:it,51:rt,52:at,53:nt,54:ot,57:z},t(S,[2,5]),{9:39,10:12,11:13,12:14,13:15,16:y,17:n,19:T,22:m,24:N,25:x,26:k,27:d,28:L,29:R,32:25,33:v,35:F,37:C,38:P,41:I,45:H,48:it,51:rt,52:at,53:nt,54:ot,57:z},t(S,[2,7]),t(S,[2,8]),t(S,[2,9]),t(S,[2,10]),t(S,[2,11]),t(S,[2,12],{14:[1,40],15:[1,41]}),t(S,[2,16]),{18:[1,42]},t(S,[2,18],{20:[1,43]}),{23:[1,44]},t(S,[2,22]),t(S,[2,23]),t(S,[2,24]),t(S,[2,25]),{30:45,31:[1,46],59:[1,47],60:[1,48]},t(S,[2,28]),{34:[1,49]},{36:[1,50]},t(S,[2,31]),{13:51,24:N,57:z},{42:[1,52],44:[1,53]},{46:[1,54]},{49:[1,55]},t(lt,[2,44],{58:[1,56]}),t(lt,[2,45],{58:[1,57]}),t(S,[2,38]),t(S,[2,39]),t(S,[2,40]),t(S,[2,41]),t(S,[2,6]),t(S,[2,13]),{13:58,24:N,57:z},t(S,[2,17]),t(xt,c,{7:59}),{24:[1,60]},{24:[1,61]},{23:[1,62]},{24:[2,48]},{24:[2,49]},t(S,[2,29]),t(S,[2,30]),{39:[1,63],40:[1,64]},{43:[1,65]},{43:[1,66]},{47:[1,67]},{50:[1,68]},{24:[1,69]},{24:[1,70]},t(S,[2,14],{14:[1,71]}),{4:h,5:p,8:8,9:10,10:12,11:13,12:14,13:15,16:y,17:n,19:T,21:[1,72],22:m,24:N,25:x,26:k,27:d,28:L,29:R,32:25,33:v,35:F,37:C,38:P,41:I,45:H,48:it,51:rt,52:at,53:nt,54:ot,57:z},t(S,[2,20],{20:[1,73]}),{31:[1,74]},{24:[1,75]},{39:[1,76]},{39:[1,77]},t(S,[2,34]),t(S,[2,35]),t(S,[2,36]),t(S,[2,37]),t(lt,[2,46]),t(lt,[2,47]),t(S,[2,15]),t(S,[2,19]),t(xt,c,{7:78}),t(S,[2,26]),t(S,[2,27]),{5:[1,79]},{5:[1,80]},{4:h,5:p,8:8,9:10,10:12,11:13,12:14,13:15,16:y,17:n,19:T,21:[1,81],22:m,24:N,25:x,26:k,27:d,28:L,29:R,32:25,33:v,35:F,37:C,38:P,41:I,45:H,48:it,51:rt,52:at,53:nt,54:ot,57:z},t(S,[2,32]),t(S,[2,33]),t(S,[2,21])],defaultActions:{5:[2,1],6:[2,2],47:[2,48],48:[2,49]},parseError:f(function(a,u){if(u.recoverable)this.trace(a);else{var r=new Error(a);throw r.hash=u,r}},"parseError"),parse:f(function(a){var u=this,r=[0],g=[],E=[null],i=[],B=this.table,l="",Y=0,K=0,ht=2,Q=1,gt=i.slice.call(arguments,1),b=Object.create(this.lexer),U={yy:{}};for(var Tt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Tt)&&(U.yy[Tt]=this.yy[Tt]);b.setInput(a,U.yy),U.yy.lexer=b,U.yy.parser=this,typeof b.yylloc>"u"&&(b.yylloc={});var Et=b.yylloc;i.push(Et);var Qt=b.options&&b.options.ranges;typeof U.yy.parseError=="function"?this.parseError=U.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Zt(w){r.length=r.length-2*w,E.length=E.length-w,i.length=i.length-w}f(Zt,"popStack");function Lt(){var w;return w=g.pop()||b.lex()||Q,typeof w!="number"&&(w instanceof Array&&(g=w,w=g.pop()),w=u.symbols_[w]||w),w}f(Lt,"lex");for(var A,W,O,_t,X={},ut,G,It,dt;;){if(W=r[r.length-1],this.defaultActions[W]?O=this.defaultActions[W]:((A===null||typeof A>"u")&&(A=Lt()),O=B[W]&&B[W][A]),typeof O>"u"||!O.length||!O[0]){var mt="";dt=[];for(ut in B[W])this.terminals_[ut]&&ut>ht&&dt.push("'"+this.terminals_[ut]+"'");b.showPosition?mt="Parse error on line "+(Y+1)+`:
import{g as te}from"./chunk-XXDRQBXY-BaiR96hA.js";import{s as ee}from"./chunk-POPQ4Y6H-DaQ3XMWt.js";import{_ as f,l as _,c as $,y as se,z as ie,a as re,b as ae,g as ne,s as oe,p as le,q as ce,aa as he,k as j,r as ue,j as bt}from"./mermaid.core-Cri-5Ftp.js";import{f as de}from"./chunk-F27PBJKO-3riiqIxG.js";import{p as fe}from"./purify.es-5AjVNlXF.js";var vt=(function(){var t=f(function(V,a,u,r){for(u=u||{},r=V.length;r--;u[V[r]]=a);return u},"o"),e=[1,2],o=[1,3],s=[1,4],c=[2,4],h=[1,9],p=[1,11],y=[1,16],n=[1,17],T=[1,18],m=[1,19],N=[1,33],x=[1,20],k=[1,21],d=[1,22],L=[1,23],R=[1,24],v=[1,26],F=[1,27],C=[1,28],P=[1,29],I=[1,30],H=[1,31],it=[1,32],rt=[1,35],at=[1,36],nt=[1,37],ot=[1,38],z=[1,34],S=[1,4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],lt=[1,4,5,14,15,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,39,40,41,45,48,51,52,53,54,57],xt=[4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],yt={trace:f(function(){},"trace"),yy:{},symbols_:{error:2,start:3,SPACE:4,NL:5,SD:6,document:7,line:8,statement:9,classDefStatement:10,styleStatement:11,cssClassStatement:12,idStatement:13,DESCR:14,"-->":15,HIDE_EMPTY:16,scale:17,WIDTH:18,COMPOSIT_STATE:19,STRUCT_START:20,STRUCT_STOP:21,STATE_DESCR:22,AS:23,ID:24,FORK:25,JOIN:26,CHOICE:27,CONCURRENT:28,note:29,notePosition:30,NOTE_TEXT:31,direction:32,acc_title:33,acc_title_value:34,acc_descr:35,acc_descr_value:36,acc_descr_multiline_value:37,CLICK:38,STRING:39,HREF:40,classDef:41,CLASSDEF_ID:42,CLASSDEF_STYLEOPTS:43,DEFAULT:44,style:45,STYLE_IDS:46,STYLEDEF_STYLEOPTS:47,class:48,CLASSENTITY_IDS:49,STYLECLASS:50,direction_tb:51,direction_bt:52,direction_rl:53,direction_lr:54,eol:55,";":56,EDGE_STATE:57,STYLE_SEPARATOR:58,left_of:59,right_of:60,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NL",6:"SD",14:"DESCR",15:"-->",16:"HIDE_EMPTY",17:"scale",18:"WIDTH",19:"COMPOSIT_STATE",20:"STRUCT_START",21:"STRUCT_STOP",22:"STATE_DESCR",23:"AS",24:"ID",25:"FORK",26:"JOIN",27:"CHOICE",28:"CONCURRENT",29:"note",31:"NOTE_TEXT",33:"acc_title",34:"acc_title_value",35:"acc_descr",36:"acc_descr_value",37:"acc_descr_multiline_value",38:"CLICK",39:"STRING",40:"HREF",41:"classDef",42:"CLASSDEF_ID",43:"CLASSDEF_STYLEOPTS",44:"DEFAULT",45:"style",46:"STYLE_IDS",47:"STYLEDEF_STYLEOPTS",48:"class",49:"CLASSENTITY_IDS",50:"STYLECLASS",51:"direction_tb",52:"direction_bt",53:"direction_rl",54:"direction_lr",56:";",57:"EDGE_STATE",58:"STYLE_SEPARATOR",59:"left_of",60:"right_of"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[8,1],[8,1],[9,1],[9,1],[9,1],[9,1],[9,2],[9,3],[9,4],[9,1],[9,2],[9,1],[9,4],[9,3],[9,6],[9,1],[9,1],[9,1],[9,1],[9,4],[9,4],[9,1],[9,2],[9,2],[9,1],[9,5],[9,5],[10,3],[10,3],[11,3],[12,3],[32,1],[32,1],[32,1],[32,1],[55,1],[55,1],[13,1],[13,1],[13,3],[13,3],[30,1],[30,1]],performAction:f(function(a,u,r,g,E,i,B){var l=i.length-1;switch(E){case 3:return g.setRootDoc(i[l]),i[l];case 4:this.$=[];break;case 5:i[l]!="nl"&&(i[l-1].push(i[l]),this.$=i[l-1]);break;case 6:case 7:this.$=i[l];break;case 8:this.$="nl";break;case 12:this.$=i[l];break;case 13:const Q=i[l-1];Q.description=g.trimColon(i[l]),this.$=Q;break;case 14:this.$={stmt:"relation",state1:i[l-2],state2:i[l]};break;case 15:const gt=g.trimColon(i[l]);this.$={stmt:"relation",state1:i[l-3],state2:i[l-1],description:gt};break;case 19:this.$={stmt:"state",id:i[l-3],type:"default",description:"",doc:i[l-1]};break;case 20:var Y=i[l],K=i[l-2].trim();if(i[l].match(":")){var ht=i[l].split(":");Y=ht[0],K=[K,ht[1]]}this.$={stmt:"state",id:Y,type:"default",description:K};break;case 21:this.$={stmt:"state",id:i[l-3],type:"default",description:i[l-5],doc:i[l-1]};break;case 22:this.$={stmt:"state",id:i[l],type:"fork"};break;case 23:this.$={stmt:"state",id:i[l],type:"join"};break;case 24:this.$={stmt:"state",id:i[l],type:"choice"};break;case 25:this.$={stmt:"state",id:g.getDividerId(),type:"divider"};break;case 26:this.$={stmt:"state",id:i[l-1].trim(),note:{position:i[l-2].trim(),text:i[l].trim()}};break;case 29:this.$=i[l].trim(),g.setAccTitle(this.$);break;case 30:case 31:this.$=i[l].trim(),g.setAccDescription(this.$);break;case 32:this.$={stmt:"click",id:i[l-3],url:i[l-2],tooltip:i[l-1]};break;case 33:this.$={stmt:"click",id:i[l-3],url:i[l-1],tooltip:""};break;case 34:case 35:this.$={stmt:"classDef",id:i[l-1].trim(),classes:i[l].trim()};break;case 36:this.$={stmt:"style",id:i[l-1].trim(),styleClass:i[l].trim()};break;case 37:this.$={stmt:"applyClass",id:i[l-1].trim(),styleClass:i[l].trim()};break;case 38:g.setDirection("TB"),this.$={stmt:"dir",value:"TB"};break;case 39:g.setDirection("BT"),this.$={stmt:"dir",value:"BT"};break;case 40:g.setDirection("RL"),this.$={stmt:"dir",value:"RL"};break;case 41:g.setDirection("LR"),this.$={stmt:"dir",value:"LR"};break;case 44:case 45:this.$={stmt:"state",id:i[l].trim(),type:"default",description:""};break;case 46:this.$={stmt:"state",id:i[l-2].trim(),classes:[i[l].trim()],type:"default",description:""};break;case 47:this.$={stmt:"state",id:i[l-2].trim(),classes:[i[l].trim()],type:"default",description:""};break}},"anonymous"),table:[{3:1,4:e,5:o,6:s},{1:[3]},{3:5,4:e,5:o,6:s},{3:6,4:e,5:o,6:s},t([1,4,5,16,17,19,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],c,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:h,5:p,8:8,9:10,10:12,11:13,12:14,13:15,16:y,17:n,19:T,22:m,24:N,25:x,26:k,27:d,28:L,29:R,32:25,33:v,35:F,37:C,38:P,41:I,45:H,48:it,51:rt,52:at,53:nt,54:ot,57:z},t(S,[2,5]),{9:39,10:12,11:13,12:14,13:15,16:y,17:n,19:T,22:m,24:N,25:x,26:k,27:d,28:L,29:R,32:25,33:v,35:F,37:C,38:P,41:I,45:H,48:it,51:rt,52:at,53:nt,54:ot,57:z},t(S,[2,7]),t(S,[2,8]),t(S,[2,9]),t(S,[2,10]),t(S,[2,11]),t(S,[2,12],{14:[1,40],15:[1,41]}),t(S,[2,16]),{18:[1,42]},t(S,[2,18],{20:[1,43]}),{23:[1,44]},t(S,[2,22]),t(S,[2,23]),t(S,[2,24]),t(S,[2,25]),{30:45,31:[1,46],59:[1,47],60:[1,48]},t(S,[2,28]),{34:[1,49]},{36:[1,50]},t(S,[2,31]),{13:51,24:N,57:z},{42:[1,52],44:[1,53]},{46:[1,54]},{49:[1,55]},t(lt,[2,44],{58:[1,56]}),t(lt,[2,45],{58:[1,57]}),t(S,[2,38]),t(S,[2,39]),t(S,[2,40]),t(S,[2,41]),t(S,[2,6]),t(S,[2,13]),{13:58,24:N,57:z},t(S,[2,17]),t(xt,c,{7:59}),{24:[1,60]},{24:[1,61]},{23:[1,62]},{24:[2,48]},{24:[2,49]},t(S,[2,29]),t(S,[2,30]),{39:[1,63],40:[1,64]},{43:[1,65]},{43:[1,66]},{47:[1,67]},{50:[1,68]},{24:[1,69]},{24:[1,70]},t(S,[2,14],{14:[1,71]}),{4:h,5:p,8:8,9:10,10:12,11:13,12:14,13:15,16:y,17:n,19:T,21:[1,72],22:m,24:N,25:x,26:k,27:d,28:L,29:R,32:25,33:v,35:F,37:C,38:P,41:I,45:H,48:it,51:rt,52:at,53:nt,54:ot,57:z},t(S,[2,20],{20:[1,73]}),{31:[1,74]},{24:[1,75]},{39:[1,76]},{39:[1,77]},t(S,[2,34]),t(S,[2,35]),t(S,[2,36]),t(S,[2,37]),t(lt,[2,46]),t(lt,[2,47]),t(S,[2,15]),t(S,[2,19]),t(xt,c,{7:78}),t(S,[2,26]),t(S,[2,27]),{5:[1,79]},{5:[1,80]},{4:h,5:p,8:8,9:10,10:12,11:13,12:14,13:15,16:y,17:n,19:T,21:[1,81],22:m,24:N,25:x,26:k,27:d,28:L,29:R,32:25,33:v,35:F,37:C,38:P,41:I,45:H,48:it,51:rt,52:at,53:nt,54:ot,57:z},t(S,[2,32]),t(S,[2,33]),t(S,[2,21])],defaultActions:{5:[2,1],6:[2,2],47:[2,48],48:[2,49]},parseError:f(function(a,u){if(u.recoverable)this.trace(a);else{var r=new Error(a);throw r.hash=u,r}},"parseError"),parse:f(function(a){var u=this,r=[0],g=[],E=[null],i=[],B=this.table,l="",Y=0,K=0,ht=2,Q=1,gt=i.slice.call(arguments,1),b=Object.create(this.lexer),U={yy:{}};for(var Tt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Tt)&&(U.yy[Tt]=this.yy[Tt]);b.setInput(a,U.yy),U.yy.lexer=b,U.yy.parser=this,typeof b.yylloc>"u"&&(b.yylloc={});var Et=b.yylloc;i.push(Et);var Qt=b.options&&b.options.ranges;typeof U.yy.parseError=="function"?this.parseError=U.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Zt(w){r.length=r.length-2*w,E.length=E.length-w,i.length=i.length-w}f(Zt,"popStack");function Lt(){var w;return w=g.pop()||b.lex()||Q,typeof w!="number"&&(w instanceof Array&&(g=w,w=g.pop()),w=u.symbols_[w]||w),w}f(Lt,"lex");for(var A,W,O,_t,X={},ut,G,It,dt;;){if(W=r[r.length-1],this.defaultActions[W]?O=this.defaultActions[W]:((A===null||typeof A>"u")&&(A=Lt()),O=B[W]&&B[W][A]),typeof O>"u"||!O.length||!O[0]){var mt="";dt=[];for(ut in B[W])this.terminals_[ut]&&ut>ht&&dt.push("'"+this.terminals_[ut]+"'");b.showPosition?mt="Parse error on line "+(Y+1)+`:
@@ -1,4 +1,4 @@
import{g as gt}from"./chunk-5VM5RSS4-N4SkS_5j.js";import{a as mt,b as lt,h as xt,d as kt}from"./chunk-F27PBJKO-Cj5fiomV.js";import{g as _t,s as vt,a as bt,b as wt,q as Tt,p as St,_ as s,c as R,j as X,d as $t,r as Mt}from"./mermaid.core-CVcgJ56o.js";import{d as it}from"./arc-CHCuM8EI.js";import"./index-DXqzNghF.js";import"./purify.es-5AjVNlXF.js";var U=(function(){var t=s(function(h,r,n,l){for(n=n||{},l=h.length;l--;n[h[l]]=r);return n},"o"),e=[6,8,10,11,12,14,16,17,18],a=[1,9],f=[1,10],i=[1,11],u=[1,12],p=[1,13],o=[1,14],g={trace:s(function(){},"trace"),yy:{},symbols_:{error:2,start:3,journey:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,title:11,acc_title:12,acc_title_value:13,acc_descr:14,acc_descr_value:15,acc_descr_multiline_value:16,section:17,taskName:18,taskData:19,$accept:0,$end:1},terminals_:{2:"error",4:"journey",6:"EOF",8:"SPACE",10:"NEWLINE",11:"title",12:"acc_title",13:"acc_title_value",14:"acc_descr",15:"acc_descr_value",16:"acc_descr_multiline_value",17:"section",18:"taskName",19:"taskData"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,2]],performAction:s(function(r,n,l,y,d,c,v){var k=c.length-1;switch(d){case 1:return c[k-1];case 2:this.$=[];break;case 3:c[k-1].push(c[k]),this.$=c[k-1];break;case 4:case 5:this.$=c[k];break;case 6:case 7:this.$=[];break;case 8:y.setDiagramTitle(c[k].substr(6)),this.$=c[k].substr(6);break;case 9:this.$=c[k].trim(),y.setAccTitle(this.$);break;case 10:case 11:this.$=c[k].trim(),y.setAccDescription(this.$);break;case 12:y.addSection(c[k].substr(8)),this.$=c[k].substr(8);break;case 13:y.addTask(c[k-1],c[k]),this.$="task";break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:a,12:f,14:i,16:u,17:p,18:o},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:15,11:a,12:f,14:i,16:u,17:p,18:o},t(e,[2,5]),t(e,[2,6]),t(e,[2,8]),{13:[1,16]},{15:[1,17]},t(e,[2,11]),t(e,[2,12]),{19:[1,18]},t(e,[2,4]),t(e,[2,9]),t(e,[2,10]),t(e,[2,13])],defaultActions:{},parseError:s(function(r,n){if(n.recoverable)this.trace(r);else{var l=new Error(r);throw l.hash=n,l}},"parseError"),parse:s(function(r){var n=this,l=[0],y=[],d=[null],c=[],v=this.table,k="",C=0,Q=0,yt=2,D=1,dt=c.slice.call(arguments,1),_=Object.create(this.lexer),I={yy:{}};for(var O in this.yy)Object.prototype.hasOwnProperty.call(this.yy,O)&&(I.yy[O]=this.yy[O]);_.setInput(r,I.yy),I.yy.lexer=_,I.yy.parser=this,typeof _.yylloc>"u"&&(_.yylloc={});var Y=_.yylloc;c.push(Y);var ft=_.options&&_.options.ranges;typeof I.yy.parseError=="function"?this.parseError=I.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function pt(w){l.length=l.length-2*w,d.length=d.length-w,c.length=c.length-w}s(pt,"popStack");function tt(){var w;return w=y.pop()||_.lex()||D,typeof w!="number"&&(w instanceof Array&&(y=w,w=y.pop()),w=n.symbols_[w]||w),w}s(tt,"lex");for(var b,A,T,q,F={},N,M,et,z;;){if(A=l[l.length-1],this.defaultActions[A]?T=this.defaultActions[A]:((b===null||typeof b>"u")&&(b=tt()),T=v[A]&&v[A][b]),typeof T>"u"||!T.length||!T[0]){var H="";z=[];for(N in v[A])this.terminals_[N]&&N>yt&&z.push("'"+this.terminals_[N]+"'");_.showPosition?H="Parse error on line "+(C+1)+`:
import{g as gt}from"./chunk-5VM5RSS4-CxMkyOwP.js";import{a as mt,b as lt,h as xt,d as kt}from"./chunk-F27PBJKO-3riiqIxG.js";import{g as _t,s as vt,a as bt,b as wt,q as Tt,p as St,_ as s,c as R,j as X,d as $t,r as Mt}from"./mermaid.core-Cri-5Ftp.js";import{d as it}from"./arc-0SRHvzAa.js";import"./index-DA7nr8PA.js";import"./purify.es-5AjVNlXF.js";var U=(function(){var t=s(function(h,r,n,l){for(n=n||{},l=h.length;l--;n[h[l]]=r);return n},"o"),e=[6,8,10,11,12,14,16,17,18],a=[1,9],f=[1,10],i=[1,11],u=[1,12],p=[1,13],o=[1,14],g={trace:s(function(){},"trace"),yy:{},symbols_:{error:2,start:3,journey:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,title:11,acc_title:12,acc_title_value:13,acc_descr:14,acc_descr_value:15,acc_descr_multiline_value:16,section:17,taskName:18,taskData:19,$accept:0,$end:1},terminals_:{2:"error",4:"journey",6:"EOF",8:"SPACE",10:"NEWLINE",11:"title",12:"acc_title",13:"acc_title_value",14:"acc_descr",15:"acc_descr_value",16:"acc_descr_multiline_value",17:"section",18:"taskName",19:"taskData"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,2]],performAction:s(function(r,n,l,y,d,c,v){var k=c.length-1;switch(d){case 1:return c[k-1];case 2:this.$=[];break;case 3:c[k-1].push(c[k]),this.$=c[k-1];break;case 4:case 5:this.$=c[k];break;case 6:case 7:this.$=[];break;case 8:y.setDiagramTitle(c[k].substr(6)),this.$=c[k].substr(6);break;case 9:this.$=c[k].trim(),y.setAccTitle(this.$);break;case 10:case 11:this.$=c[k].trim(),y.setAccDescription(this.$);break;case 12:y.addSection(c[k].substr(8)),this.$=c[k].substr(8);break;case 13:y.addTask(c[k-1],c[k]),this.$="task";break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:a,12:f,14:i,16:u,17:p,18:o},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:15,11:a,12:f,14:i,16:u,17:p,18:o},t(e,[2,5]),t(e,[2,6]),t(e,[2,8]),{13:[1,16]},{15:[1,17]},t(e,[2,11]),t(e,[2,12]),{19:[1,18]},t(e,[2,4]),t(e,[2,9]),t(e,[2,10]),t(e,[2,13])],defaultActions:{},parseError:s(function(r,n){if(n.recoverable)this.trace(r);else{var l=new Error(r);throw l.hash=n,l}},"parseError"),parse:s(function(r){var n=this,l=[0],y=[],d=[null],c=[],v=this.table,k="",C=0,Q=0,yt=2,D=1,dt=c.slice.call(arguments,1),_=Object.create(this.lexer),I={yy:{}};for(var O in this.yy)Object.prototype.hasOwnProperty.call(this.yy,O)&&(I.yy[O]=this.yy[O]);_.setInput(r,I.yy),I.yy.lexer=_,I.yy.parser=this,typeof _.yylloc>"u"&&(_.yylloc={});var Y=_.yylloc;c.push(Y);var ft=_.options&&_.options.ranges;typeof I.yy.parseError=="function"?this.parseError=I.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function pt(w){l.length=l.length-2*w,d.length=d.length-w,c.length=c.length-w}s(pt,"popStack");function tt(){var w;return w=y.pop()||_.lex()||D,typeof w!="number"&&(w instanceof Array&&(y=w,w=y.pop()),w=n.symbols_[w]||w),w}s(tt,"lex");for(var b,A,T,q,F={},N,M,et,z;;){if(A=l[l.length-1],this.defaultActions[A]?T=this.defaultActions[A]:((b===null||typeof b>"u")&&(b=tt()),T=v[A]&&v[A][b]),typeof T>"u"||!T.length||!T[0]){var H="";z=[];for(N in v[A])this.terminals_[N]&&N>yt&&z.push("'"+this.terminals_[N]+"'");_.showPosition?H="Parse error on line "+(C+1)+`:
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

1 participant