Skills DirectorySkills Directory
SkillsLearnSecurityCategoriesDocsCommunityBlog
Sign InSubmit Skill
Skills Directory

Security-tested agent skills for Claude, coding agents, and AI workflows.

Directory

  • Browse Skills
  • All Skills A–Z
  • Claude Skills
  • Claude Code Skills
  • Agent Skills
  • Categories
  • Authors
  • Submit a Skill

Learn

  • Learn Hub
  • Install Claude Skills
  • Write SKILL.md
  • Skills vs MCP
  • Directories Compared

Security

  • Security
  • Methodology
  • Secure Claude Skills
  • Security Badges

Company

  • About
  • Community
  • Blog
  • API Docs
  • Advertise

2026 Skills Directory. All rights reserved.

ProTermsPrivacyRefunds
Back to skills

E2020 Perturbation Immunity Verification Levels

ASecurity

Allocate every power-bus perturbation immunity requirement to the verification level that can actually reproduce it, under ECSS-E-ST-20-20C clause 5.2.16.2.1. Use when a protection-device immunity list has to be split between unit-level bench testing and spacecraft-level testing instead of deferred whole: refuse an inverted frequency band or a repeated identifier, send to spacecraft level anything needing the flight harness, the real bus source impedance or cross-user coupling, keep the rest ...

2 stars
0 votes
0 copies
0 views
Added 9/27/2026
ai-agentspythontesting

Works with

claude code

Security Analysis

A100/100

Scanned 9/27/2026

Install to Claude Code

$npx -y skills add ashfordeOU/aero-agent-skills --skill e2020-perturbation-immunity-verification-levels --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of E2020 Perturbation Immunity Verification Levels?

Add the live security badge to your README — it updates automatically with every re-scan.

Security grade badge for E2020 Perturbation Immunity Verification Levels
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/ashfordeou-e2020-perturbation-immunity-verification-levels/badge)](https://www.skillsdirectory.com/skills/ashfordeou-e2020-perturbation-immunity-verification-levels)

More formats (shields.io, HTML) on the badges page.

Download with Pro
Files
SKILL.md
---
name: e2020-perturbation-immunity-verification-levels
description: "Allocate every power-bus perturbation immunity requirement to the verification level that can actually reproduce it, under ECSS-E-ST-20-20C clause 5.2.16.2.1. Use when a protection-device immunity list has to be split between unit-level bench testing and spacecraft-level testing instead of deferred whole: refuse an inverted frequency band or a repeated identifier, send to spacecraft level anything needing the flight harness, the real bus source impedance or cross-user coupling, keep the rest at the earliest representative level, name a stimulus beyond both the bench and the facility, then merge the bands actually verified and report every uncovered slice of the specified band. Trigger: ecss, e-st-20-20c-clause-5-2-16, lcl-perturbation-immunity-allocation, power-bus-unit-level-immunity-test, power-bus-spacecraft-level-immunity-test, bus-source-impedance-representativeness, flight-harness-representativeness, immunity-frequency-band-coverage."
license: Apache-2.0
compliance: STANDARDS-REF
standards:
  - id: ecss
    reference-only: true
gated: false
domain: space-systems
pack: space-systems
compatibility: "agentskills.io SKILL.md; any SKILL.md host (Claude Code, Hermes, OpenClaw)"
metadata:
  domain: space-systems
  subdomain: ecss
  tags: [ecss, e-st-20-20-power-protection-device-scope, e2020-perturbation-immunity-verification-levels, lcl-perturbation-immunity-allocation, power-bus-unit-level-immunity-test, power-bus-spacecraft-level-immunity-test, bus-source-impedance-representativeness, flight-harness-representativeness, immunity-frequency-band-coverage]
  version: 0.1.0
  author: Aero Agent Skills
---

# ECSS Power Protection Devices -- Perturbation Immunity Verification Levels (space-systems/ecss/e2020-perturbation-immunity-verification-levels)

Use when the task is the clause 5.2.16.2.1 split of ECSS-E-ST-20-20C:
the immunity a protection device owes against the perturbations living
on its power bus has to be demonstrated, and each requirement has to be
placed at unit level or at spacecraft level before anybody can claim the
set will actually be verified.

## Domain quick reference

- The two levels are not two ways of doing the same test. Unit level is
  the device alone on a bench, driven by a laboratory source through a
  laboratory harness. Spacecraft level is the device in its flight
  position, fed by the real bus through the real harness, with the other
  users of that bus connected and running.
- Some perturbations only exist once the flight harness inductance, the
  real source impedance of the bus and the switching of the neighbouring
  users are all present together. A bench cannot manufacture them from
  a signal generator, so those requirements belong at spacecraft level
  whatever the schedule would prefer.
- Everything a bench can represent belongs on the bench. A
  spacecraft-level slot arrives late, is shared with the whole
  programme, and is the one campaign that cannot be repeated when the
  result is a surprise; a requirement pushed there for convenience buys
  a late finding at full price.
- Two failure shapes are worth keeping apart. A requirement whose
  amplitude or upper frequency is beyond the bench AND beyond the
  spacecraft-level facility is not allocated at all, and saying so is
  the point of the exercise. A slice of the specified frequency band
  that no allocated requirement reaches is a different defect: every
  individual requirement is placed, and the band still is not covered.
- What has been verified is the UNION of the allocated requirement
  bands, not the widest single band in the list. Two requirements whose
  bands touch close a span between them; two whose bands leave daylight
  do not, however wide each one is on its own.
- Bench and facility capability figures, the advisory ceiling on how
  many items may land in the spacecraft-level slot and the unit-level
  share floor are declared project policy rather than physical
  constants; the defaults in the logic module are a starting point a
  project substitutes its own values into.

## Workflow

1. Validate the requirement list: a named perturbation, a positive
   amplitude, a frequency band the right way up, boolean
   representativeness flags and unique identifiers. A requirement whose
   flags are strings cannot be allocated, so it is refused rather than
   read as true.
2. Validate the policy: a facility that reproduces less than the bench
   is not a fallback, and a share floor outside zero to one is a data
   error.
3. For each requirement, collect every reason the bench cannot
   represent it -- flight harness, bus source impedance, cross-user
   coupling, amplitude beyond the bench, upper frequency beyond the
   bench. No reasons means unit level.
4. When the bench is blocked, ask whether the spacecraft-level facility
   can raise the stimulus at all. If it can, allocate there and carry
   the blocking reasons forward so a reviewer sees why. If it cannot,
   leave the requirement unplaced and raise it as a finding.
5. Merge the frequency bands of every allocated requirement, joining
   bands that touch or overlap, and subtract the result from the
   specified band. Report each remaining slice as its own finding.
6. Report the unit-level share and the spacecraft-level count as
   advisories, so a split that is technically defensible but
   operationally top-heavy is visible before the slot is booked.

## Pitfalls

- Allocating on schedule pressure rather than representativeness. The
  question is what the level can physically reproduce; a harness-borne
  transient does not become a bench test because the bench is free.
- Treating an unplaced requirement and a band gap as the same finding.
  The first is a facility problem and is fixed by a bigger source; the
  second is a planning problem and is fixed by another requirement.
  Reporting only one of them hides the other.
- Reading the covered band off the widest requirement. Coverage is the
  union of the allocated bands, so two wide bands with daylight between
  them leave a gap that neither one reveals on its own.
- Assuming a spacecraft-level allocation is always available. The
  facility has an amplitude and a frequency limit of its own, and a
  requirement beyond both levels has to be named rather than quietly
  inherited by the later campaign.
- Comparing a stimulus amplitude against a bench capability by bare
  arithmetic. A case meant to sit exactly on the capability can land a
  few units in the last place the wrong side of it once the figures have
  been scaled; the comparison absorbs that representation error while
  the capability stays as declared.

## Behavior contract (gate 3)

The policy validation, requirement validation, bench blocker
collection, facility capability check, per-requirement allocation,
interval merging, band gap detection and the campaign verdict are
exercised by the gate 3 contract test:
scripts/test_e2020_perturbation_immunity_verification_levels.py against
scripts/e2020_perturbation_immunity_verification_levels_logic.py
(stdlib unittest, offline). Run:
python3 scripts/test_e2020_perturbation_immunity_verification_levels.py

## Compliance

- ECSS standards are freely downloadable (ESA); cite the source and
  paraphrase per standards-map.yaml.
- compliance: STANDARDS-REF, gated: false.

Attribution

ashfordeOUashfordeOU
View sourceMore from ashfordeOU →
SSkills DirectorySkills Directory

Know which skills are safe — weekly.

Best new skills + every skill we flagged as malicious. From the team that scanned 103,619.

Join free

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments (0)

No comments yet. Be the first to comment!

SSkills DirectorySkills Directory

Know which skills are safe — weekly.

Best new skills + every skill we flagged as malicious. From the team that scanned 103,619.

Join free

Related Skills

Caveman

Ultra-compressed communication mode that cuts output tokens while keeping technical accuracy. Levels: lite, full, ultra and the wenyan variants. Use for /caveman, "caveman mode", "talk like caveman", "be brief" or "less tokens".

1074701 votes

Hyperplan

Adversarial multi-agent planning skill. Self-orchestrates 5 hostile category members (unspecified-low, unspecified-high, deep, ultrabrain, artistry) via team-mode for ruthless cross-critique debate, distills only the defensible insights, then MANDATORILY hands the distilled insight bundle to the `plan` agent for executable plan formalization. Use when planning needs maximum rigor and surfacing of weak assumptions, blind spots, and over-engineering. Triggers: 'hyperplan', 'hpp', '/hyperplan', ...

694821 votes

Mcp Code Execution

Routes multi-tool workflows through MCP servers for large datasets and pipelines. Use when Bash tool overhead is limiting throughput on data-heavy tasks.

3351 votes

catchup

Recovers the conversation and failed tool calls of a previous Codex, Claude Code, Antigravity, Cline, Copilot CLI, Cursor, DeepSeek Harness, Kimi, OpenCode, Pi Agent, or ZCode session. Use when the user says "catch up", "what did the last session do", "get me up to speed", "I switched agents", asks to recover/summarize a previous session before continuing, or asks to diagnose or report a catchup failure. Do NOT use for the current conversation, git history, or any non-agent log.

691 votes

math-skill

A comprehensive mathematical reasoning skill for AI assistants — handles arithmetic to research-level problems with rigorous step-by-step reasoning, systematic verification, and transparent uncertainty handling

381 votes
View all in ai-agents →