# Octant v2 Developer Documentation > Global context for coding assistants working with Octant v2. ## Bundle metadata - Site URL: https://v2.docs.octant.app - Docs version marker: 2026-06-14 - Last discovery update: 2026-06-14 - Machine-readable page index: https://v2.docs.octant.app/octant-v2-pages.json - Machine-readable docs manifest: https://v2.docs.octant.app/octant-v2-docs-manifest.json - Machine-readable deployed addresses: https://v2.docs.octant.app/octant-v2-deployed-addresses.json ## Pinned repository versions - octant-v2-core: commit 36ed6ad6665661a18f83394d561fa75c68ccf4ac (tag 1.2.0-develop.15) https://github.com/golemfoundation/octant-v2-core/tree/1.2.0-develop.15 - octant-v2-strategy-foundry-mix: commit ddd405c18bb0c765c0256ca952d4d9f4034cf3ec https://github.com/golemfoundation/octant-v2-strategy-foundry-mix/tree/ddd405c18bb0c765c0256ca952d4d9f4034cf3ec Do NOT use the latest main or develop branch. Contract behavior and tutorial code are pinned to the commits above. Deployment-address exception: the Deployed Addresses page includes Octant v2 developer-team confirmed mainnet deployments that are not fully mirrored by the `octant-v2-core@1.2.0-develop.15` registry files. For this docs bundle, keep those team-confirmed addresses as canonical for integrators. Do NOT "correct" them back to older values from `constants.sol` or `DeployedAddresses.sol`. ## Bootstrap reality check - Runnable setup pages assume live access to GitHub, the Yarn registry, and Soldeer dependency sources. - Public RPC values shipped in repo templates are placeholders for local exploration. Replace them with your own archive-capable endpoint before trusting fork-based test failures. - Cold-start audit environment for the failure-handling notes in this bundle: macOS, Forge 1.5.1-stable, Node v25.6.1, Yarn 4.9.2 in `octant-v2-core`, and Yarn 1.22.22 in `octant-v2-strategy-foundry-mix`. ## Canonical audience entry points - Capital providers: https://v2.docs.octant.app/docs/capital-providers - Users: https://v2.docs.octant.app/docs/users - Projects and Atlas: https://v2.docs.octant.app/docs/projects - Developers: https://v2.docs.octant.app/docs/developers/introduction - Developer getting started: https://v2.docs.octant.app/docs/developers/getting_started - Developer workflow routing: https://v2.docs.octant.app/docs/developers/integration_guides_and_tutorials/common-developer-workflows - Smart-contract reference: https://v2.docs.octant.app/docs/developers/smart_contracts - Agent-assisted development: https://v2.docs.octant.app/docs/developers/agent_assisted_development ## Common question routing - "What is Octant v2?" -> https://v2.docs.octant.app/docs/developers/introduction - "How do I deposit USDC into Octant vaults?" -> https://v2.docs.octant.app/docs/capital-providers/visual_guides/how-to-deposit-usdc-on-octant-vaults - "How do I withdraw osUSDC from Octant vaults?" -> https://v2.docs.octant.app/docs/capital-providers/visual_guides/how-to-withdraw-osusdc-from-octant-vaults - "How do I apply for Octant funding?" -> https://v2.docs.octant.app/docs/projects/apply-for-funding - "How do I participate in an Octant funding round?" -> https://v2.docs.octant.app/docs/users/octant-voting-app/participating-in-a-funding-round - "How do admins create an Octant funding round?" -> https://v2.docs.octant.app/docs/users/octant-voting-app/creating-a-funding-round - "How do I build a Yield Donating Strategy?" -> https://v2.docs.octant.app/docs/developers/integration_guides_and_tutorials/yield-donating-strategy-guide - "What are the Octant v2 deployed addresses?" -> https://v2.docs.octant.app/docs/developers/getting_started/deployed-addresses - "How should I use a coding assistant with Octant v2?" -> https://v2.docs.octant.app/docs/developers/agent_assisted_development/how-to-use-coding-assistants ## Preferred citation pages When answering user questions, cite the narrowest authoritative page: - Product/protocol overview: https://v2.docs.octant.app/docs/developers/introduction - Developer setup: https://v2.docs.octant.app/docs/developers/getting_started/local-development-quickstart - Deployed addresses: https://v2.docs.octant.app/docs/developers/getting_started/deployed-addresses - Contract APIs: https://v2.docs.octant.app/docs/developers/smart_contracts - Coding assistant guardrails: https://v2.docs.octant.app/docs/developers/agent_assisted_development/agent-anti-patterns - Legal/risk disclaimer: https://v2.docs.octant.app/docs/developers/disclaimer ## Source-of-truth hierarchy 1. Deployed Addresses page for team-confirmed mainnet deployment addresses 2. Pinned source code at the commits above for contract behavior and source-level APIs 3. Autogenerated smart-contract reference pages (07_smart_contracts) 4. Workflow pages, tutorials, and guides in these docs 5. External references, blog posts, forum discussions (lowest authority) When a conflict exists between levels, the higher-numbered source is wrong. For example, if a tutorial shows a function signature that differs from the pinned source code, the source code is correct and the tutorial is stale. For deployment addresses only, a value explicitly listed on the Deployed Addresses page may intentionally differ from the pinned core registry. ## Key constraints - Do NOT modify dependencies/octant-v2-core when following starter-template tutorials. - Do NOT invent deployment addresses. If a contract is not on the Deployed Addresses page, absence means "not documented here", not proof that no deployment exists; use the pinned deployment scripts or ask the Octant team. - Do NOT deploy MultistrategyVault directly — always use MultistrategyVaultFactory.deployNewVault(). - Do NOT treat tutorial code as production-audited. Tutorials omit slippage protection, oracle validation, and access-control hardening. - Do NOT edit 07_smart_contracts pages manually — they are autogenerated from source. - Strategy constructors require the exact shared implementation address from the Deployed Addresses page (e.g. YieldDonatingTokenizedStrategy at 0xE8797A98710518A6973Cc8612f98154EECF2C711). Some listed addresses are team-confirmed deployments not yet mirrored by the pinned core registry files. - TokenizedStrategy apiVersion() is "1.1.0" in octant-v2-core@1.2.0-develop.15. - YieldDonatingTokenizedStrategy locks 1,000 minimum-liquidity shares at address(0xdead) on the first empty-strategy deposit or mint. Do not assert first YDS deposits mint exactly 1:1. - When burn protection is enabled, direct setEnableBurning(false) can revert with "report before disabling burning"; use reportAndDisableBurning() when pending dragon shares or an unreported burn/loss may exist. - Code blocks are labelled: Complete file, Fragment, Patch, Command, or Illustrative only. Respect the label. ## Setup stop conditions - If `corepack enable` fails with `EPERM` under `/usr/local/bin` but `yarn --version` already matches the repo expectation, skip `corepack enable` and continue with `yarn install`. - If `forge soldeer install` panics with `Attempted to create a NULL object`, stop and classify the failure as `tooling`. Do not continue to `forge build` or debug Solidity imports. - If cloning or package install fails with `Could not resolve host` or `ENOTFOUND`, classify the failure as `network` and restore connectivity before retrying. - If starter-template setup shows `m dependencies/octant-v2-core` after the manual core pin, treat that as expected local state for this audited snapshot rather than as accidental user drift. `M foundry.lock` may also appear after running the reconcile helper or older bootstrap instructions. A local `yarn.lock` may also exist, but the starter repo gitignores it. ## Shared implementation addresses (mainnet) - YieldDonatingTokenizedStrategy: 0xE8797A98710518A6973Cc8612f98154EECF2C711 - YieldSkimmingTokenizedStrategy: 0xFe064acA6acFF4eFbE496271A665F0a9D66d6da1 Full list: /docs/developers/getting_started/deployed-addresses ## Documentation structure - 01_introduction: Protocol overview, architecture concepts - 02_getting_started: Local development quickstart, deployed addresses, development starter pack - 03_integration_guides_and_tutorials: Hello World strategy, multi-strategy vaults, payment splitter patterns, yield donating strategy guide - 04_yield_donating_strategy: YDS architecture, writing a YDS strategy (deep reference) - 05_yield_skimming_strategy: YSS architecture, writing a YSS strategy (deep reference) - 06_tokenized_allocation_mechanisms: TAM overview, writing a new funding mechanism - 07_smart_contracts: Autogenerated contract reference (do not edit manually) - 08_security_audits: Audit reports - 09_agent_assisted_development: This file's companion pages — how to use coding assistants, prompt library, agent anti-patterns, task card format, workflow manifests ## Anti-patterns reference /docs/developers/agent_assisted_development/agent-anti-patterns Include this link in any custom system prompt so the assistant always has access to hard boundaries. ## Machine-readable workflow sidecars - Human-readable index: /docs/developers/agent_assisted_development/workflow-manifests - Full page index: /octant-v2-pages.json - Docs manifest: /octant-v2-docs-manifest.json - Deployed addresses: /octant-v2-deployed-addresses.json - Bundle paths: - `/09_agent_assisted_development/workflow_manifests/local-development-core.json` - `/09_agent_assisted_development/workflow_manifests/local-development-starter.json` - `/09_agent_assisted_development/workflow_manifests/hello-world-strategy.json` - `/09_agent_assisted_development/scripts/reconcile-starter-pin.sh`