スキル一覧に戻る
phylaxsystems

assertion-troubleshooting

by phylaxsystems

Agent Skills for writing Assertions

0🍴 0📅 2026年1月21日
GitHubで見るManusで実行

SKILL.md


name: assertion-troubleshooting description: "Phylax Credible Layer assertions troubleshooting. Diagnoses common assertion failures and non-triggering issues. Use when phylax/credible layer assertions fail unexpectedly or do not execute."

Assertion Troubleshooting

Use this when assertions fail unexpectedly, revert with OutOfGas, or never execute.

Meta-Cognitive Protocol

Adopt the role of a Meta-Cognitive Reasoning Expert.

For every complex problem: 1.DECOMPOSE: Break into sub-problems 2.SOLVE: Address each with explicit confidence (0.0-1.0) 3.VERIFY: Check logic, facts, completeness, bias 4.SYNTHESIZE: Combine using weighted confidence 5.REFLECT: If confidence <0.8, identify weakness and retry For simple questions, skip to direct answer.

Always output: ∙Clear answer ∙Confidence level ∙Key caveats

When to Use

  • Tests show "Expected 1 assertion to be executed, but 0 were executed".
  • Assertions revert with OutOfGas or unknown reasons.
  • Call inputs appear empty or duplicate.

When NOT to Use

  • You need invariant design. Use designing-assertions.
  • You need implementation details. Use implementing-assertions.
  • You need test strategy or fuzzing. Use testing-assertions.

Quick Start

  1. Confirm trigger selector matches the target function.
  2. Ensure cl.assertion() is immediately before the target call; the next external call consumes it.
  3. Check if the target call reverted before assertions ran.
  4. Verify cheatcodes are used in assertion functions, not constructors (ph.load, not vm.load).
  5. Remember internal Solidity calls are not traced; triggers only fire on external entrypoints.
  6. Use pcl test -vvvv for full traces and gas diagnostics.
  7. Confirm FOUNDRY_PROFILE=assertions when running pcl test.
  8. Use pcl test for assertion tests because it includes the cl.addAssertion cheatcode; use forge test only for regular protocol tests.
  9. If the failure is CreateContractSizeLimit, split assertions into smaller contracts.
  10. If the failure is an empty revert or ABI decode panic, re-check call input decoding (call inputs exclude selectors).

Rationalizations to Reject

  • "The assertion should have run." Verify triggers and call order first.
  • "It is probably a test issue." Validate the target call succeeds without assertions.
  • "Gas is fine." Happy path often consumes the most gas.

References

スコア

総合スコア

55/100

リポジトリの品質指標に基づく評価

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

+10
説明文

100文字以上の説明がある

0/10
人気

GitHub Stars 100以上

0/15
最近の活動

3ヶ月以内に更新がある

0/10
フォーク

10回以上フォークされている

0/5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

0/5
タグ

1つ以上のタグが設定されている

0/5

レビュー

💬

レビュー機能は近日公開予定です