# ARIS bundle layer for DeepSeek Harness.
#
# Applied after the profile's surface bundle. Patch config replacement is
# whole-value, so rows that adjust shipped configuration restate every field
# they need.

# ARIS review runs on the current executor. DeepSeek-V4.1-Flash (deepseek-flash)
# is the adapter's default model and has comprehensively surpassed V4 Pro in
# performance, cost, speed, and total time; V4 Pro retires 2026-09-14 12:00 and
# its traffic is routed here at the Flash price.
- id: agent-default-model
  config:
    provider: deepseek-official
    model: deepseek-flash

- insert:
    # Skill corpus, ARIS_REPO, and the Codex threadId projection.
    - id: aris-skills
      name: 'dsh-aris-panel'

    # Optional: apply ARIS's scope limits to the executor as well as the
    # reviewer. Off by default — it spends tokens on every request, and the
    # reviewer side is already covered by the skills. Flip to enable.
    - id: aris-scope-limits
      name: 'dsh-aris-panel/scope-limits'
      disabled: true

    # The independent reviewer. Model and reasoning effort come from the host
    # Codex installation (~/.codex/config.toml) — that file is the reviewer
    # posture contract, and dsh deliberately does not override it.
    - id: aris-codex
      name: '@deepseek-ai/dsh-mcp-client'
      config:
        transport: stdio
        serverName: codex
        command: python
        args: [C:/Users/admin/.dsh/profiles/web/node_modules/dsh-aris-panel/mcp-servers/codex-review/server.py]
        # Pinned to a directory that outlives the run. Inheriting the Harness's
        # launch directory makes every review depend on it still existing:
        # remove or rename it and Codex fails to load its own configuration,
        # which ARIS survives by degrading to a transport that cannot attest
        # reviewer identity. Review prompts address artifacts absolutely.
        cwd: !!js process.env.HOME
        # dsh defaults to 60s and Codex's progress notifications do not extend it.
        # 20 minutes is ARIS's own threshold for calling a review hung.
        toolCallTimeoutMs: 1200000
        failOnStartupError: true
