commercial-policy

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

commercial-policy

commercial-policy

Purpose

用途

Design the rules of engagement that govern discounting off list price — the artifact that Deal Desk and AEs operate under. Three deterministic tools:
  1. discount_matrix_builder.py
    — builds a 4-dimensional matrix (ARR band × term length × payment terms × strategic value tier), each cell carrying an approved discount band backed by current win-rate + NRR data, plus an approver tier (AE / Manager / Director / VP / CFO).
  2. exception_router.py
    — when an asks-for-discount lands outside the matrix, routes it through the named approver chain, attaches required compensating commitments (multi-year prepay + named expansion path + reference commitment + MSA tightening), produces machine-readable audit-trail metadata, and flags precedent risk if 3+ similar exceptions have landed in the trailing quarter.
  3. policy_linter.py
    — lints the matrix for governance defects: approver inversion, band inversion, margin-floor violation, coverage gaps, cliff edges, undefined strategic tiers, inconsistent margin floors, thin data backing.
The output is the policy itself (matrix + exception flow + lint report), not a per-deal application of it.
设计管控标价折扣的参与规则——即Deal Desk和AEs执行工作所依据的规则文档。包含三个确定性工具:
  1. discount_matrix_builder.py
    ——构建一个四维矩阵(ARR区间 × 合同期限 × 付款条款 × 战略价值层级),每个单元格包含基于当前赢单率+NRR数据的获批折扣区间,以及对应的审批层级(AE / 经理 / 总监 / 副总裁 / CFO)。
  2. exception_router.py
    ——当申请的折扣超出矩阵范围时,将其转入指定的审批链,附加必需的补偿承诺(多年预付+明确的拓展路径+推荐承诺+MSA条款收紧),生成机器可读的审计跟踪元数据,若过去一季度出现3次及以上类似异常申请,会标记先例风险。
  3. policy_linter.py
    ——检查矩阵中的管控缺陷:审批层级倒置、区间倒置、违反最低利润率、覆盖空白、断崖式规则、未定义战略层级、最低利润率不一致、数据支撑不足。
输出结果是政策本身(矩阵+异常流程+检查报告),而非针对单笔交易的政策应用。

When to use

使用场景

  • A new Head of Commercial or Head of Deal Desk is writing the company's first formal commercial policy
  • The existing matrix is older than 6 months and discount drift is showing in margin reviews
  • Reps are citing "Maria approved 28% on Acme last quarter" as precedent and you need to break the precedent loop
  • Q-over-Q exception count is rising and you suspect the matrix bands are mispriced
  • CFO has tightened the margin floor and the matrix needs to be rebuilt against the new constraint
  • A board / exec is asking "why do we discount this much?" and you need a data-backed defensible policy
Do NOT use this skill to:
  • Approve a specific deal — that's
    commercial/skills/deal-desk
  • Set the pricing model + list price — that's
    commercial/skills/pricing-strategist
  • Author a proposal / SOW / MSA prose — that's
    business-growth/contract-and-proposal-writer
  • Make the strategic "when do we hire a VP Sales" call — that's
    c-level-advisor/cro-advisor
  • 新任商业负责人或Deal Desk主管正在制定公司首份正式商业政策
  • 现有矩阵已使用超过6个月,且利润率审查中发现折扣偏差
  • 销售代表以"Maria上季度批准了Acme公司28%的折扣"作为先例,你需要打破这种先例循环
  • 季度间异常申请数量上升,你怀疑矩阵区间定价不合理
  • CFO收紧了最低利润率要求,需要基于新约束重建矩阵
  • 董事会/高管询问"我们为何给出如此高的折扣?",你需要一份有数据支撑、可辩护的政策
请勿将此技能用于:
  • 审批特定交易——该场景属于
    commercial/skills/deal-desk
  • 设置定价模型+标价——该场景属于
    commercial/skills/pricing-strategist
  • 撰写提案/SOW/MSA文案——该场景属于
    business-growth/contract-and-proposal-writer
  • 做出"何时招聘销售副总裁"这类战略决策——该场景属于
    c-level-advisor/cro-advisor

Workflow

工作流程

  1. Audit current discount distribution. Pull the last 4 quarters of closed-won + closed-lost deals from CRM. Fill
    assets/policy_design_template.md
    (~20 minutes). Capture:
    arr
    ,
    discount_pct
    ,
    term_months
    ,
    payment_terms_days
    ,
    strategic_value
    ,
    win_lost
    ,
    nrr_12mo
    per deal.
  2. Design the data-backed matrix. Run
    scripts/discount_matrix_builder.py --input policy_intake.json --profile {saas|enterprise-software|api|marketplace|services}
    . Output is a 4-dimensional matrix with approved discount band + approver tier + margin floor + observed win-rate + observed NRR per cell. Cells with
    n < 5
    observed deals are flagged
    THIN
    .
  3. Design the exception flow. Run
    scripts/exception_router.py --sample
    to see the structure. For each severity band of exception (0-5 pts over, 5-10, 10-20, 20+), the router enforces required compensating commitments. Codify the flow in your policy doc; the router becomes the operational implementation.
  4. Lint the matrix. Run
    scripts/policy_linter.py --input matrix.json
    . Get a ranked findings report — BLOCKER / MAJOR / MINOR — across 10 lint rules. Resolve every BLOCKER before publishing the matrix to AEs.
  5. Publish + quarterly review. Publish the matrix as a versioned artifact. Re-run the builder and the linter every quarter against the new 4-quarter rolling deal corpus. Cells where observed NRR <
    target_nrr
    are flagged for review.
  1. 审计当前折扣分布。从CRM中提取过去4个季度的已赢单+已丢单数据。填写
    assets/policy_design_template.md
    (约20分钟)。记录每笔交易的:
    arr
    discount_pct
    term_months
    payment_terms_days
    strategic_value
    win_lost
    nrr_12mo
  2. 设计基于数据的矩阵。运行
    scripts/discount_matrix_builder.py --input policy_intake.json --profile {saas|enterprise-software|api|marketplace|services}
    。输出为四维矩阵,包含每个单元格的获批折扣区间+审批层级+最低利润率+观测赢单率+观测NRR。观测交易数
    n < 5
    的单元格会标记为
    THIN
  3. 设计异常流程。运行
    scripts/exception_router.py --sample
    查看结构。对于每个严重程度的异常申请(超出0-5个百分点、5-10个百分点、10-20个百分点、20个百分点以上),路由工具会强制执行必需的补偿承诺。在政策文档中固化该流程,路由工具将作为实际执行的实现方案。
  4. 检查矩阵。运行
    scripts/policy_linter.py --input matrix.json
    。获取分级发现报告——阻塞项(BLOCKER)/主要问题(MAJOR)/次要问题(MINOR),涵盖10条检查规则。在向AEs发布矩阵前,需解决所有阻塞项。
  5. 发布+季度审查。将矩阵作为版本化文档发布。每季度基于过去4个季度的滚动交易数据,重新运行构建工具和检查工具。观测NRR <
    target_nrr
    的单元格会标记为需审查。

Scripts

脚本

ScriptPurposeIndustry profiles
scripts/discount_matrix_builder.py
4-dim data-backed matrix with approver tiers + margin floorssaas, enterprise-software, api, marketplace, services
scripts/exception_router.py
Routes exception requests with compensating commitments + audit trailn/a (matrix-driven)
scripts/policy_linter.py
10-rule lint pass over the matrixn/a (deterministic across profiles)
All three: stdlib-only,
--help
,
--sample
,
--input <json>
,
--output {markdown,json}
.
脚本用途行业配置文件
scripts/discount_matrix_builder.py
生成带审批层级+最低利润率的四维数据驱动矩阵saas, enterprise-software, api, marketplace, services
scripts/exception_router.py
处理异常申请路由,附加补偿承诺+审计跟踪n/a(基于矩阵驱动)
scripts/policy_linter.py
对矩阵执行10条规则的检查n/a(跨配置文件通用)
所有脚本:仅依赖标准库,支持
--help
--sample
--input <json>
--output {markdown,json}
参数。

References

参考资料

  • references/discount_governance_canon.md
    — Discount governance evidence base: OpenView Partners benchmarks, David Skok (For Entrepreneurs) discount math, Tomasz Tunguz on discount distribution, Bessemer State of the Cloud, KeyBanc Capital Markets SaaS Survey, Bridge Group AE-compensation research, RevOps Co-op playbooks, Forrester deal-desk research. 8 sources.
  • references/policy_design_canon.md
    — Policy-as-artifact design: SaaStr (Jason Lemkin), Winning by Design (Jacco van der Kooij) on commercial discipline, Forrester deal-desk maturity research, MIT Sloan on incentive-system gaming, McKinsey on commercial-policy effectiveness, Bain Pricing Power, Salesforce CPQ implementation guides. 7 sources.
  • references/policy_anti_patterns.md
    — 8 named anti-patterns with sourced studies + countermeasures + lint-rule mapping: precedent-sets-policy, no-data-backing, no-compensating-commitments, approver/margin misalignment, no audit trail, cliff edges, undefined "strategic value", no quarterly review. 8 sources.
  • references/discount_governance_canon.md
    ——折扣管控证据库:OpenView Partners基准数据、David Skok(For Entrepreneurs)的折扣计算方法、Tomasz Tunguz关于折扣分布的研究、Bessemer云状态报告、KeyBanc Capital Markets SaaS调研、Bridge Group AE薪酬研究、RevOps Co-op操作手册、Forrester交易台研究。共8个来源。
  • references/policy_design_canon.md
    ——政策文档设计:SaaStr(Jason Lemkin)、Winning by Design(Jacco van der Kooij)关于商业纪律的内容、Forrester交易台成熟度研究、MIT Sloan关于激励系统漏洞的研究、McKinsey关于商业政策有效性的研究、Bain《定价力》、Salesforce CPQ实施指南。共7个来源。
  • references/policy_anti_patterns.md
    ——8种已命名的反模式,包含来源研究+应对措施+检查规则映射:先例替代政策、无数据支撑、无补偿承诺、审批/利润率不一致、无审计跟踪、断崖式规则、"战略价值"未定义、无季度审查。共8个来源。

Assumptions

假设前提

  • The skill assumes the pricing model and list price already exist (set via
    commercial/skills/pricing-strategist
    ). Commercial-policy governs discounts off list — it does not set list.
  • The CFO owns the
    min_margin_pct
    constraint (margin floor). The CRO / Head of Deal Desk owns the
    max_discount_pct_without_exception
    constraint (band cap). The skill keeps these inputs separate by design (per Bain Pricing Power — mixing accountability is the most common cause of policy drift).
  • Industry profiles bake in customary band widths. Companies with idiosyncratic economics should pass overrides via the input JSON.
  • The matrix is data-backed but not data-driven: the band is set by the constraints + profile; observed data is annotation that tells you whether the cell is performing. If observed NRR < target, that's a signal to review the band, not to keep discounting deeper.
  • "Strategic value" tiers (
    logo
    ,
    expansion
    ,
    lighthouse
    ) are useful only if defined with concrete tests. The lint rule L06 enforces this.
  • This is a policy-design skill, not a deal-approval skill. It never says "approve" — it produces the matrix + exception flow that deal-desk then applies.
  • 本技能假设定价模型和标价已确定(由
    commercial/skills/pricing-strategist
    设置)。商业政策管控标价折扣——不负责设定标价。
  • CFO拥有
    min_margin_pct
    约束(最低利润率)。CRO/Deal Desk主管拥有
    max_discount_pct_without_exception
    约束(区间上限)。本技能设计上将这些输入分开(依据Bain《定价力》——权责混淆是政策偏差最常见的原因)。
  • 行业配置文件内置了常规的区间宽度。具有特殊经济模式的公司可通过输入JSON传递覆盖参数。
  • 矩阵基于数据但不由数据驱动:区间由约束+配置文件设定;观测数据用于标注单元格是否表现达标。若观测NRR < 目标值,这是审查区间的信号,而非进一步加大折扣的理由。
  • "战略价值"层级(
    logo
    expansion
    lighthouse
    )只有在定义了具体验证标准时才有用。检查规则L06强制执行此要求。
  • 这是政策设计技能,而非交易审批技能。它从不直接"批准"交易——而是生成矩阵+异常流程,供deal-desk技能后续应用。

Anti-patterns

反模式

  • Setting discount bands without data backing. "VP Sales argued for it in a Slack thread" is not data backing. If you can't show win-rate and NRR for the band, the band is rhetoric. (Caught by
    data_backing
    per cell + lint L08.)
  • Letting precedent set policy. "Maria approved 28% on Acme last quarter" is not a band — it's an exception that didn't break the policy.
    exception_router.py
    flags 3+ similar exceptions as a signal that the matrix is wrong, not the deal. (Anti-pattern AP-1.)
  • Approving exceptions without compensating commitments. Discount-for-nothing is a leak (Winning by Design). Every exception severity band requires non-negotiable commitments. (
    exception_router.COMPENSATING_LIBRARY
    .)
  • Cliff edges at round-number ARR thresholds. A hard $100K threshold produces deal-size gaming within 2 quarters (MIT Sloan agency theory). Smooth the gradient. (Lint L05.)
  • "Strategic value" as an undefined catch-all. If "strategic" is undefined, within a quarter 60% of deals will be flagged strategic and the matrix is dead. Define with concrete tests. (Lint L06.)
  • No quarterly review. Markets shift; matrices unchanged for 12 months are mispriced. Re-run the builder and linter every quarter. (Anti-pattern AP-8.)
  • Mixing CFO and CRO accountabilities. CFO owns the margin floor; CRO owns the band cap. Same accountable owner = predictable drift toward whatever they're compensated on (Bain Pricing Power).
  • Skipping the lint pass before publishing. BLOCKER findings (approver inversion, margin-floor violation, inverted bands) make the policy unsignable. Lint is the gate, not the after-action review.
  • 无数据支撑设定折扣区间。"销售副总裁在Slack线程中主张该区间"不属于数据支撑。若无法展示该区间的赢单率和NRR,该区间只是空谈。(由每个单元格的
    data_backing
    检查+规则L08捕获。)
  • 让先例替代政策。"Maria上季度批准了Acme公司28%的折扣"不是区间——而是未违反政策的异常申请。
    exception_router.py
    会将3次及以上类似异常申请标记为矩阵存在问题的信号,而非交易存在问题。(反模式AP-1。)
  • 无补偿承诺批准异常申请。无回报的折扣是利润流失(Winning by Design)。每个严重程度的异常申请都需要不可协商的承诺。(
    exception_router.COMPENSATING_LIBRARY
    。)
  • 在整数ARR阈值处设置断崖式规则。硬性的10万美元阈值会在2个季度内引发交易规模操纵(MIT Sloan代理理论)。应平滑梯度。(检查规则L05。)
  • "战略价值"作为未定义的万能项。若"战略"未定义,一个季度内60%的交易都会被标记为战略交易,矩阵将失效。需定义具体验证标准。(检查规则L06。)
  • 无季度审查。市场在变化;12个月未更新的矩阵定价不合理。每季度重新运行构建工具和检查工具。(反模式AP-8。)
  • 混淆CFO和CRO的权责。CFO负责最低利润率;CRO负责区间上限。同一负责人会导致政策向其考核指标倾斜(Bain《定价力》)。
  • 发布前跳过检查步骤。阻塞项(审批层级倒置、违反最低利润率、区间倒置)会导致政策无法生效。检查是发布的前置关卡,而非事后回顾。

Distinct from

与其他技能的区别

SiblingScopeDifference
commercial/skills/deal-desk
Applies the policy to one deal at a timeCommercial-policy designs the policy itself. Deal-desk consumes the matrix; commercial-policy produces it.
commercial/skills/pricing-strategist
Sets pricing model (per-seat / usage / value / tiered) + list priceCommercial-policy governs discounts off list. Pricing-strategist sets the menu; commercial-policy governs the menu's discount discipline.
c-level-advisor/cro-advisor
Strategic CRO judgment ("when do we hire VP Sales?", "is our motion product-led or sales-led?")Strategic, not operational. Commercial-policy is the artifact CRO commissions; it isn't CRO judgment itself.
c-level-advisor/cfo-advisor
Margin floor + unit-economics judgmentThe CFO supplies
min_margin_pct
to commercial-policy as an input. Commercial-policy operationalizes the CFO's constraint as per-cell margin floors.
business-growth/contract-and-proposal-writer
Authors proposal/SOW/MSA proseCommercial-policy emits structured matrix + audit-trail JSON, not customer-facing prose.
关联技能范围差异
commercial/skills/deal-desk
将政策应用于单笔交易本商业政策技能设计政策本身。Deal-desk技能使用矩阵;商业政策技能生成矩阵。
commercial/skills/pricing-strategist
设置定价模型(按席位/使用量/价值/分层)+ 标价商业政策技能管控标价折扣。Pricing-strategist技能制定定价菜单;商业政策技能管控菜单的折扣纪律。
c-level-advisor/cro-advisor
战略CRO决策("何时招聘销售副总裁?"、"我们的模式是产品驱动还是销售驱动?")战略层面,非运营层面。商业政策是CRO委托生成的文档;而非CRO决策本身。
c-level-advisor/cfo-advisor
最低利润率+单位经济决策CFO向商业政策技能提供
min_margin_pct
作为输入。商业政策技能将CFO的约束落地为每个单元格的最低利润率。
business-growth/contract-and-proposal-writer
撰写提案/SOW/MSA文案商业政策技能输出结构化矩阵+审计跟踪JSON,而非面向客户的文案。

Forcing-question library (Matt Pocock grill discipline)

强制问题库(Matt Pocock grill discipline)

Walked one at a time by
/cs:grill-commercial
or the Commercial orchestrator before the skill runs. Recommended answer + canon citation per question. Never bundled.
  1. "What's your observed discount distribution across the last 4 quarters — and is the median inside or outside your current matrix?" Recommended: pull the corpus before designing any band. If the observed median is outside the matrix, the matrix is rhetoric. Canon: OpenView SaaS Benchmarks; RevOps Co-op playbooks. Anti-pattern AP-2.
  2. "What's the win-rate AND the 12-month NRR for deals at your current 'max discount' band?" Recommended: both, not one. A band with high win-rate but low NRR is buying logos with leaky-bucket retention. Tunguz benchmarks: top-NRR-quartile companies discount 6 pts less than bottom quartile. Canon: Tomasz Tunguz; Bessemer State of the Cloud.
  3. "Who at the company owns the margin floor, AND who owns the discount-band cap — are those the same person?" Recommended: CFO owns floor; CRO/Head of Deal Desk owns cap. Same owner = drift toward what they're compensated on. Canon: Bain Pricing Power — separation of accountability is the structural fix. Anti-pattern AP-4.
  4. "How is 'strategic value' defined in your current policy — with concrete tests, or with adjectives?" Recommended: concrete tests. "Top-20 named account in 2026 target list" is a test; "important customer" is not. Canon: SaaStr (Lemkin); Forrester deal-desk research. Lint rule L06. Anti-pattern AP-7.
  5. "For exceptions above your matrix max, what compensating commitments are required — and are they in writing before the approver signs?" Recommended: minimum multi-year prepay + named expansion path; deeper exceptions require reference commitment + MSA tightening + executive sponsor. Canon: Winning by Design (van der Kooij); McKinsey B2B pricing studies. Anti-pattern AP-3.
  6. "Has the same kind of exception been approved 3+ times in the trailing quarter — and if so, is the matrix wrong?" Recommended: 3+ similar exceptions means the band is mispriced. Rebuild the matrix; don't keep approving exceptions. Canon: OpenView discount drift studies;
    exception_router._precedent_risk
    . Anti-pattern AP-1.
  7. "When was the last time you re-ran the matrix against the previous 4 quarters of data?" Recommended: quarterly. Annual review is too slow; the disciplined cohort revises quarterly. Canon: OpenView benchmarks; RevOps Co-op. Anti-pattern AP-8.
  8. "For every exception in the last quarter, is there a machine-readable audit-trail record — or is the approval in Slack and email?" Recommended: structured record in CPQ or equivalent. Slack/email approvals don't survive year-2 renewal negotiations. Canon: Salesforce CPQ best practices; Forrester deal-desk maturity research. Anti-pattern AP-5.
Walk depth-first. Lock 1-4 before opening 5-8. After all 8 are answered, invoke
discount_matrix_builder.py
policy_linter.py
exception_router.py --sample
in sequence to produce the policy artifact.
在技能运行前,由
/cs:grill-commercial
或商业编排器逐个提问。每个问题配有推荐答案+参考资料引用。请勿批量提问。
  1. "过去4个季度的观测折扣分布如何——中位数是否在当前矩阵范围内?" 推荐答案:在设计任何区间前先提取交易数据。若观测中位数超出矩阵范围,说明矩阵只是空谈。 参考资料:OpenView SaaS基准数据;RevOps Co-op操作手册。反模式AP-2。
  2. "当前‘最高折扣’区间的交易赢单率和12个月NRR分别是多少?" 推荐答案:两者都要提供,不能只给其一。赢单率高但NRR低的区间相当于用高流失率换取客户。Tunguz基准数据:NRR前四分之一的公司比后四分之一的公司折扣低6个百分点。 参考资料:Tomasz Tunguz;Bessemer云状态报告。
  3. "公司中谁负责最低利润率,谁负责折扣区间上限——是同一人吗?" 推荐答案:CFO负责最低利润率;CRO/Deal Desk主管负责区间上限。同一负责人会导致政策向其考核指标倾斜。 参考资料:Bain《定价力》——权责分离是结构性解决方案。反模式AP-4。
  4. "当前政策中‘战略价值’如何定义——是具体的验证标准,还是形容词?" 推荐答案:具体验证标准。"2026年目标客户列表中的前20名指定客户"是验证标准;"重要客户"不是。 参考资料:SaaStr(Lemkin);Forrester交易台研究。检查规则L06。反模式AP-7。
  5. "对于超出矩阵上限的异常申请,需要哪些补偿承诺——且这些承诺是否在审批人签字前以书面形式确认?" 推荐答案:至少包含多年预付+明确的拓展路径;更严重的异常申请需要推荐承诺+MSA条款收紧+高管 Sponsor。 参考资料:Winning by Design(van der Kooij);McKinsey B2B定价研究。反模式AP-3。
  6. "过去一季度是否有3次及以上同类异常申请获批——如果有,是不是矩阵存在问题?" 推荐答案:3次及以上同类异常说明区间定价不合理。应重建矩阵,而非继续批准异常申请。 参考资料:OpenView折扣偏差研究;
    exception_router._precedent_risk
    。反模式AP-1。
  7. "上次基于过去4个季度数据重新生成矩阵是什么时候?" 推荐答案:每季度一次。年度审查太慢;规范的团队每季度修订一次。 参考资料:OpenView基准数据;RevOps Co-op。反模式AP-8。
  8. "过去一季度的每笔异常申请,是否都有机器可读的审计跟踪记录——还是审批仅在Slack和邮件中进行?" 推荐答案:在CPQ或类似系统中生成结构化记录。Slack/邮件审批无法支撑第二年的续约谈判。 参考资料:Salesforce CPQ最佳实践;Forrester交易台成熟度研究。反模式AP-5。
按深度优先顺序提问。在回答完1-4题后再提问5-8题。所有8题回答完毕后,依次调用
discount_matrix_builder.py
policy_linter.py
exception_router.py --sample
生成政策文档。

Quick examples

快速示例

bash
undefined
bash
undefined

Design the matrix

设计矩阵

python3 scripts/discount_matrix_builder.py --sample python3 scripts/discount_matrix_builder.py --input policy_intake.json --profile saas --output json > matrix.json
python3 scripts/discount_matrix_builder.py --sample python3 scripts/discount_matrix_builder.py --input policy_intake.json --profile saas --output json > matrix.json

Lint the matrix

检查矩阵

python3 scripts/policy_linter.py --sample python3 scripts/policy_linter.py --input matrix.json
python3 scripts/policy_linter.py --sample python3 scripts/policy_linter.py --input matrix.json

Walk the exception flow

查看异常流程

python3 scripts/exception_router.py --sample python3 scripts/exception_router.py --input request.json --output json

The sample matrix lints to **FAIL** with 4 BLOCKERs + 6 MAJORs + 2 MINORs — by design, to exercise every rule path. A real policy intake should lint to PASS or PASS_WITH_WARNINGS. The sample exception (42% on a $320K logo deal) routes to AE → Sales Manager → Director → VP Sales with 3 required compensating commitments (multi-year 36mo, prepay, named expansion path).
python3 scripts/exception_router.py --sample python3 scripts/exception_router.py --input request.json --output json

示例矩阵检查结果为**FAIL**,包含4个阻塞项+6个主要问题+2个次要问题——这是故意设计的,用于覆盖所有规则路径。真实的政策输入应检查通过(PASS)或带警告通过(PASS_WITH_WARNINGS)。示例异常申请(32万美元logo交易申请42%折扣)的审批路径为AE → 销售经理 → 总监 → 销售副总裁,需满足3项补偿承诺(36个月多年合同、预付、明确的拓展路径)。