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

E50 Data Labelling

ASecurity

Validate the label a space communication system puts on the data it carries, per ECSS-E-ST-50C clause 5.8.2, which asks that data be labelled well enough for a receiver to recover its identity from the unit alone. Compare the declared fields against source, destination, data type, sequence and generation time; size each identifier field in whole bits against the things it has to name; find whether the sequence counter wraps inside the window where two units must stay distinguishable; and pric...

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

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 e50-data-labelling --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of E50 Data Labelling?

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

Security grade badge for E50 Data Labelling
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/ashfordeou-e50-data-labelling/badge)](https://www.skillsdirectory.com/skills/ashfordeou-e50-data-labelling)

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

Download with Pro
Files
SKILL.md
---
name: e50-data-labelling
description: "Validate the label a space communication system puts on the data it carries, per ECSS-E-ST-50C clause 5.8.2, which asks that data be labelled well enough for a receiver to recover its identity from the unit alone. Compare the declared fields against source, destination, data type, sequence and generation time; size each identifier field in whole bits against the things it has to name; find whether the sequence counter wraps inside the window where two units must stay distinguishable; and price the label against the payload. Use when sizing a header or reviewing a data unit format. Trigger: ecss, e-st-50c-clause-5-8-2, space-data-unit-labelling, label-field-width-sizing, sequence-counter-wrap-ambiguity, label-overhead-fraction, source-and-destination-identifier-capacity."
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)"
clauses:
  - standard: ECSS-E-ST-50C Rev.2
    clause: 5.8.2
    items: [a]
    relation: verifies
metadata:
  domain: space-systems
  subdomain: ecss
  tags: [ecss, e-st-50c-clause-5-8-2, e50-data-labelling, space-data-unit-labelling, label-field-width-sizing, sequence-counter-wrap-ambiguity, label-overhead-fraction, source-and-destination-identifier-capacity]
  version: 0.1.0
  author: Aero Agent Skills
---

# ECSS Communications — Data Labelling (space-systems/ecss/e50-data-labelling)

Use when the data a communication system carries has to be labelled, per
ECSS-E-ST-50C clause 5.8.2 — whether the label a receiver actually gets is
enough to say where a unit came from, where it is going, what it is, when it
was made and which one it is.

## Domain quick reference

- A label is judged by what a receiver can recover without being told.
  Anything the ground has to look up in a configuration file is not in
  the label, however well documented it is elsewhere.
- Five things have to be readable off the unit: source, destination,
  data type, sequence position and generation time. Each answers a
  question the others cannot, and a label missing one leaves a
  question the receiver has to guess at.
- The ground network owes its own version of that test, over every
  item of data it takes from the spacecraft: a reader of one item has
  to be able to say which parameter it holds, when the value was
  sampled on board and when it arrived on the ground, and no two of
  those items may end up wearing the same label.
- Field width is arithmetic, not judgement. Naming N distinct things
  takes the bit count that addresses N, and a field one bit short does
  not carry most of them — it carries half, and aliases the rest onto
  each other silently.
- Compute those widths with integer bit arithmetic. A count sitting
  exactly on a power of two is both the case a floating-point logarithm
  rounds wrong and the case a designer is most likely to have picked,
  so the two failure modes coincide precisely where it hurts.
- A sequence counter is only useful while it has not wrapped. The
  design question is not how wide the counter is but whether it repeats
  inside the window over which two units still have to be told apart —
  a retransmission window, a store-and-forward gap, a ground retention
  period.
- The label is paid for out of the payload, every unit, forever. The
  overhead fraction is the label over the whole unit, and the cheapest
  way to move it is usually a larger data unit rather than a smaller
  label.

## Workflow

1. Take the declared label as named fields with widths in whole bits.
   Reject a zero-width field, a duplicate name and a non-integer width
   rather than coercing them.
2. Compare the field names against the required set
   case-insensitively; report present, missing and unrecognised
   separately, because an unrecognised name is usually a required field
   under a house name. For data the ground has acquired, run the same
   comparison against what one item has to yield by itself — the
   parameter it holds, the time that value was sampled on board, the
   time it reached the ground — and confirm that no two acquired items
   can carry identical labels.
3. Size each identifier field: the bits needed to address the declared
   number of distinct sources and destinations, against the bits
   declared. Report how many things the declared field can actually
   name.
4. Compute the sequence wrap period from the counter width and the unit
   rate, and compare it with the window over which units must stay
   distinguishable. Report the narrowest counter that closes the gap.
5. Compute the label overhead as a share of the whole data unit and
   compare it with the allowance under a relative tolerance, so a
   design landing exactly on the allowance passes everywhere.
6. Report the effective payload rate the link delivers after the label,
   which is the number a data budget actually needs.
7. Grade sufficient only when coverage, both identifier widths, the
   sequence window and the overhead all hold, and give each shortfall a
   number: the width needed, or the payload size that fits.

## Obligations

| Item | Step |
|---|---|
| ECSS-E-ST-50C Rev.2 5.8.2a | 2 |

## Pitfalls

- Counting fields instead of reading them. A label with five fields
  that does not include a generation time is still missing a generation
  time, and only a set comparison catches it.
- Sizing an identifier from today's node count. Formations grow and
  data types multiply; a field sized to the exact current count aliases
  the first addition onto an existing address.
- Using a floating-point logarithm for the bit count. It rounds the
  power-of-two case the wrong way on some hosts, which is the one case
  a designer is most likely to have chosen deliberately.
- Treating counter width as the requirement. Width only matters through
  the wrap period; a wide counter on a fast source can still repeat
  inside the window, and a narrow one on a slow source may never.
- Quoting link capacity as the data rate. Every unit pays its label, so
  the delivered payload rate is lower, and a budget built on capacity
  is short by exactly the overhead fraction.
- Shrinking the label to meet an overhead allowance. Dropping a field
  or narrowing an identifier buys percentage points by removing the
  thing the label existed for; a larger data unit costs nothing the
  receiver needs.

## Behavior contract (gate 3)

Label validation including duplicate and zero-width fields, required
field coverage with unrecognised names, integer identifier sizing across
the power-of-two boundary, the sequence wrap period and the narrowest
counter that covers the window, the overhead fraction at its exact
allowance and the delivered payload rate are exercised by the gate 3
contract test:
scripts/test_e50_data_labelling.py against
scripts/e50_data_labelling_logic.py (stdlib unittest, offline).
Run:
python3 scripts/test_e50_data_labelling.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 →