---
id: {HOOK_ID}
title: {Hook 策略标题}
status: draft
related_features: []
related_decisions: []
---

# {HOOK_ID}: {Hook 策略标题}

<!-- 本模板是插件 starter 指导，项目本地模板可完全覆盖 -->
<!-- 插件模板是入门指导，项目本地模板是权威 -->

## 概述

{描述这个 Hook 策略的用途、适用范围和主要约束}

## 策略信息

- **策略名称**：{policy_name}
- **适用范围**：{适用范围}
- **优先级**：{优先级}
- **执行阶段**：{pre-commit/post-commit/pre-push 等}

## 触发条件

### 触发事件

| 事件 | 触发条件 | 执行频率 |
|------|---------|---------|
| {事件1} | {条件} | {频率} |
| {事件2} | {条件} | {频率} |

### 排除条件

- {排除条件 1}
- {排除条件 2}

## 门禁规则

### 规则 1：{规则名称}

**描述**：{规则描述}

**检查内容**：
- {检查项 1}
- {检查项 2}

**通过条件**：{通过条件}

**失败处理**：{失败处理方式}

### 规则 2：{规则名称}

{同上结构}

## 绕过审批

### 绕过条件

{描述什么情况下可以绕过此策略}

### 审批流程

1. {审批步骤 1}
2. {审批步骤 2}

### 审批记录

| 日期 | 申请人 | 审批人 | 原因 | 有效期 |
|------|--------|--------|------|--------|
| {日期} | {申请人} | {审批人} | {原因} | {有效期} |

## 执行脚本

```bash
#!/bin/bash
# Hook 执行脚本

# 检查条件
if [条件]; then
  # 执行检查
  {检查命令}

  # 验证结果
  if [验证条件]; then
    echo "检查通过"
    exit 0
  else
    echo "检查失败"
    exit 1
  fi
fi
```

## 审计日志

### 日志格式

```json
{
  "timestamp": "ISO8601",
  "hook": "{hook_name}",
  "event": "{event}",
  "result": "pass/fail",
  "user": "{user}",
  "details": {}
}
```

### 日志存储

- **位置**：{日志路径}
- **保留期**：{保留期限}
- **轮转策略**：{轮转策略}

## 监控与告警

| 指标 | 阈值 | 告警方式 |
|------|------|---------|
| 执行失败率 | < 5% | {告警方式} |
| 执行时间 | < 10s | {告警方式} |

## 关联制品

- 功能特性：{related_features}
- 决策：{related_decisions}
- 设计文档：{related_designs}

## 变更日志

| 日期 | 变更 | 作者 |
|------|------|------|
| {YYYY-MM-DD} | 初始版本 | {作者} |
