Auditing A Pigment Application

作者 gopigment6fec49f4ce9d無授權條款22 個星標收錄於 2026年10月8日更新於 2026年10月8日儲存庫2 天前更新

Execution skill. Use when auditing, reviewing, or health-checking a Pigment application. Covers the structured audit checklist, severity classification, and output format. Also triggers on requests to clean up, find unused blocks, assess model quality, or find what is wrong with an application.

僅含說明Business & Finance
AI 產生的概覽

對 Pigment 應用程式執行唯讀稽核,檢查公式健康度、相依性、治理與規範,並依嚴重程度輸出報告。

功能
此技能引導對 Pigment 規劃應用程式進行結構化、唯讀的稽核。它依序檢查公式健康度、相依性追蹤、公式反模式掃描、週期與版本檢查、行事曆涵蓋範圍、情境治理、程式庫與建模治理、命名規範、未使用區塊、資料夾組織與看板品質。最後產出包含執行摘要、依嚴重程度分組的發現、修復優先順序清單與後續建議的報告。除非使用者在檢閱報告後要求修復,否則不會修改應用程式。
適用情境
適用於稽核、審查或健康檢查 Pigment 應用程式,或被要求清理應用程式、尋找未使用區塊、評估模型品質或找出應用程式問題時。
執行需求
需要透過可用工具(list_issues、search_metrics_and_lists、get_metric_dependencies、list_cycles、calendar_get、list_scenarios、list_application_libraries、search_boards、get_board)存取 Pigment 應用程式。此技能不附帶指令碼,修復指引會引用其他技能。

Auditing a Pigment Application

Run a structured, read-only audit. Do not modify anything unless the user explicitly asks for fixes after reviewing the report.

CRITICAL -- Collect Formula Health Evidence First

Start every audit with tool:list_issues to surface active formula computation errors. These are highest-severity because they produce wrong or missing outputs.

For each errored block, retrieve its formula with tool:search_metrics_and_lists (show_details: true) and identify the root cause (type mismatch, missing reference, scenario-specific failure). Use tool:get_metric_dependencies on errored blocks to trace downstream impact and distinguish root causes from cascading symptoms.

CRITICAL -- Trace Dependency Fragility

Use tool:get_metric_dependencies on critical output metrics (cashflow totals, P&L summaries, KPIs).

Flag:

  • Long chains where a single upstream error cascades to many outputs
  • Missing intermediate metrics (too much logic in one formula)
  • Fragile roll-forward patterns (e.g. CUMULATE + SELECT: Month-1 without clear beginning/ending balance separation)

HIGH -- Scan Formula Patterns

Use tool:search_metrics_and_lists with formula_regex_search pattern queries. Do not rewrite formulas during the audit. For the full anti-pattern reference, see skill:writing-performant-formulas. For AR anti-patterns, see skill:securing-with-access-rights.

Flag these patterns (highest priority first):

  • Unguarded ACCESSRIGHTS: no IFDEFINED('Users roles', ...) guard — AR computed for every user
  • ACCESSRIGHTS guarded only by IFDEFINED(User, ...): flag for review — not a substitute for 'Users roles'
  • ACCESSRIGHTS(x, FALSE): densifies denied cells; should use BLANK
  • ISBLANK / ISNOTBLANK: densifies; should use ISDEFINED / IFDEFINED
  • [ADD: X][FILTER: ...]: densify-then-subset; use IF(condition, value)
  • [FILTER: NOT ...]: use [EXCLUDE: ...]
  • Heavy PREVIOUS chains / multiple PREVIOUS(...) calls: check if CUMULATE, FILLFORWARD, or SELECT fits
  • IFBLANK(X, PREVIOUS(...)) or IFBLANK(X, PREVIOUSOF(...)): use FILLFORWARD
  • [ADD: X][REMOVE: X] / [REMOVE: X][ADD: Y] round-trips: use BY with mapping
  • Chained [BY:][BY:] on Transaction List: drops properties; use single BY with comma-separated mappings
  • [REMOVE: Version]: collapses scenario meaning; verify intentional
  • REMOVE in formulas: scope loss; check with tool:get_metric_dependencies
  • 2-arg IF(cond, expr) on 6+ dim metrics with non-trivial second arg: use expr[FILTER: cond]
  • Hard-coded year / DATE(YYYY, ...): use Date-typed or Dimension-typed input metrics
  • Periods or colons in block names: breaks formula references
  • Unresolved Copy of X default names: leftover from duplication
  • Formula metrics with input overrides enabled: audit risk if untracked

HIGH -- Check Cycles and Versions

Use tool:list_cycles to check planning cycles. Use tool:search_metrics_and_lists with kind: ["Dimension"] and a name regex to verify a Version dimension exists. A missing Version dimension is a high-severity structural gap; see skill:building-versions-and-planning-cycles for fixes.

HIGH -- Verify Calendar Coverage

Use tool:calendar_get to read the current configuration. Flag:

  • Calendar end date before the next fiscal year (blocks future planning)
  • Missing Quarter dimension when the app is FP&A-oriented
  • Daily calendar with a large range (performance risk for iterative formulas)

For fixes, see skill:setting-up-calendar.

MEDIUM -- Review Scenario Governance

Use tool:list_scenarios. Flag:

  • Duplicate or near-duplicate names (case differences like Budget vs budget)
  • Non-descriptive names (child, test, scenario1)
  • Total count above 5-6 in a non-enterprise app (each scenario increases recalculation cost)
  • Scenarios with formula errors (cross-reference with formula health findings)

MEDIUM -- Audit Library and Shared Content

Use tool:list_application_libraries. Flag:

  • Libraries enabled but providing no actively used blocks
  • Old or versioned library names (e.g. FY24 library on an FY25 app)
  • Excessive shared surface exposing internal blocks
  • Shared metrics consumed locally but not through the library mechanism (direct cross-app references instead of PULL/PUSH)

MEDIUM -- Check Modeling Governance

Use tool:search_metrics_and_lists and tool:get_metric_dependencies to identify structural debt:

  • Repeated logic across metrics: Same subexpression duplicated in multiple formulas instead of centralized in a shared intermediary metric
  • Multi-purpose metrics: A single metric doing aggregation, filtering, and business logic; should be split into focused layers
  • Hidden-metric access gaps: Metrics with AR Apply rules that reference dimensions not in the metric's own structure, or metrics consuming AR-protected data without their own AR coverage
  • Access rights enforced only via Board visibility: Data is hidden on boards but has no AR metric backing it; users with Block Explorer access can see everything. See skill:securing-with-access-rights

LOW -- Inspect Naming Hygiene

Use tool:search_metrics_and_lists with friendly_name_regex_search to find blocks matching test/copy/temporary patterns:

  • copy, Copy, COPY: Leftover duplicates
  • test, Test, TEST: Experimental blocks not cleaned up
  • new metric, New Metric, NewBlock: Default names never renamed
  • tmp, TMP, ZZ, TBD: Explicitly temporary blocks
  • Hex-dash sequences (UUID-like): Auto-generated names

Count them, note their folder, flag as cleanup candidates.

LOW -- Find Unused Blocks

Use tool:search_metrics_and_lists with kind: ["Metric"] to page through all metrics, then tool:get_metric_dependencies on each to find orphans (zero usages). Batch dependency checks in parallel.

Safe to delete: no formula references, no views, no boards, no automations, no ARM. Not safe: displayed on a board/view, shared via library (other apps may consume), input metrics with user data, metrics with overrides, or settings/parameters folder items. Always present the list to the user before deleting; group by folder; highlight input and shared metrics separately.

LOW -- Check Folder Organization

Use tool:search_metrics_and_lists with parent_folder_regex_search: ["^/$"] or an empty-path filter to identify blocks in root / no folder. Check whether a standard folder structure exists (numbered prefixes like 0. Settings, 1. Dimensions). Mixed-purpose or flat layouts are a maintenance risk. For fixes, see skill:naming-and-organizing-applications.

LOW -- Evaluate Board Quality

Use tool:search_boards and tool:get_board for suspicious boards. Flag:

  • Total board count above 20
  • UUID-like or meaningless board names
  • Duplicate boards (same or very similar names)
  • Homepage action cards pointing to wrong destinations
  • Boards with more than 20 widgets (load-time risk)

Report Structure

  1. Executive summary: 2-3 sentences on model health and top priorities
  2. Findings by severity: CRITICAL (active errors) → HIGH (structural risks) → MEDIUM (governance debt) → LOW (cosmetic). Name specific blocks with mention: syntax.
  3. Remediation priority: numbered list; errors first, then structural, then hygiene
  4. Next steps: offer cleanup plan, fixes, or deeper performance analysis

Audit Checklist

Before delivering the report, confirm all checks ran:

  • Formula health (tool:list_issues + dependency tracing)
  • Dependency fragility (critical output chains)
  • Formula patterns (sparsity, ACCESSRIGHTS guards, iterative, structural, dimension-aware, naming)
  • Cycles and versions (tool:list_cycles)
  • Calendar coverage (tool:calendar_get)
  • Scenario governance (tool:list_scenarios)
  • Library surface (tool:list_application_libraries)
  • Naming hygiene (test/copy/tmp/UUID patterns)
  • Unused blocks (tool:get_metric_dependencies zero usages)
  • Modeling governance (repeated logic, multi-purpose metrics, hidden-metric access gaps)
  • Folder organization (blocks in root)
  • Board quality (tool:get_board)

來源與署名

來源:gopigment/ai-plugins位於skills/auditing-a-pigment-application提交6fec49f

授權條款: 無授權條款

內容歸原作者所有。SourceWeft 從公開儲存庫中收錄這些內容。

檢舉或申請下架