DOCA Erasure Coding Development Skill
Guides hands-on DOCA Reed-Solomon resilience development and debugging on NVIDIA hardware.
The files show local DOCA scoping, capability checks, source/destination mmap permissions, parameter confirmation, and no credential handling; however, execution touches hardware, devices, and user storage, while a complete least-privilege model, explicit pre-execution consent boundary, general rollback plan, and full data-flow disclosure are missing, so points are deducted.
The documentation covers configuration, build, run, test, and error classification, and includes a known-vector smoke workflow; however, the supplied material lacks verifiable key-path test coverage, contains contradictions such as the nonexistent `_get_max_num_blocks` in test steps, and makes API/hardware claims that cannot be reproduced from the files, so the static ceiling applies and points are deducted.
Audience, trigger phrases, storage scenarios, and exclusions for network FEC, replication, and non-Reed-Solomon schemes are clearly stated; however, there is no Chinese-language interaction or localization guidance, and environment-fit evidence is limited, so points are deducted.
The SKILL.md, CAPABILITIES.md, and TASKS.md provide clear layering, prerequisites, parameters, examples, limitations, related skills, maintenance contacts, and benchmark material; however, version, signature, and scan fields remain TBD, skill-card metadata conflicts with the prompt about repository, path, and license, and the benchmark reports several documentation-schema findings, so points are deducted.
The material can directly guide capability discovery, create/recover/update selection, permission diagnosis, and smoke testing, and the benchmark reports strong assisted performance; however, it is a thin loader with no directly buildable code or templates, and the modification workflow still depends on local samples while its renderer is explicitly deferred, leaving substantial manual validation and rework.
The files include an evaluation report, evaluation cases, and skill-card quality claims, providing some audit trail; however, the evaluation dataset is unavailable, no reproducible CI and key-path test evidence is supplied, and the main technical claims are asserted by the skill text itself, so only limited credit is justified.
- Do not treat the BENCHMARK.md pass verdict as independently reproduced; its dataset is not supplied.
- Fix the `_get_max_num_blocks` inconsistency in TASKS.md and revalidate all DOCA API assertions.
- Before execution, explicitly define user authorization, device scope, storage-data scope, failure recovery, and handling of unrecoverable data loss.
- Reconcile repository path, license, version, and signature metadata across SKILL.md, SKILLCARD.yaml, skill-card.md, and publication metadata.
What does this skill do, and when should you use it?
This skill provides hands-on DOCA Erasure Coding guidance for external developers working on a BlueField DPU, ConnectX NIC, or host. It covers the N-data-block plus K-redundancy-block model and the create, recover, and update tasks. It helps users query device capabilities, configure matrices and block sizes, set mmap permissions, and diagnose DOCA_ERROR_* results. It requires an existing DOCA SDK installation and does not install DOCA or ship buildable application source.
It directs the agent to TASKS.md and CAPABILITIES.md, inspect the local DOCA installation, and examine libraries, headers, samples, and applications under /opt/mellanox/doca. It guides calls to doca_ec_cap_* for task support, maximum block size, and maximum buffer-list length, and uses doca_ec_matrix_create() constructor success to check matrix variants. It also guides doca_ec context setup, create/recover/update task configuration, doca_mmap source and destination permissions, use of installed C samples, known-vector recovery validation, and layered diagnosis of lifecycle, parameter, matrix, permission, and queue-pressure failures.
- A distributed-storage developer needs RAID-6-style or object-storage resilience using N data blocks and K redundancy blocks.
- A BlueField or ConnectX developer needs to verify support for a task type, matrix, N+K limit, and block size on a device.
- A storage system has one changed data block and needs incremental parity refresh through update instead of full re-encoding.
- A disk or block failure requires validation that up to K missing blocks can be reconstructed with recover.
- A C/C++ or FFI developer needs lifecycle, capability-discovery, mmap-permission, and error-handling guidance for the DOCA EC C ABI.
What are this skill's strengths and limitations?
- Clearly routes create, recover, and update DOCA EC workflows.
- Covers capability discovery, matrix selection, N+K and block-size limits, mmap permissions, and DOCA_ERROR_* debugging.
- Separates storage erasure coding from replication, network FEC, and unrelated DOCA libraries.
- Its lifecycle and ABI guidance can also support non-C/C++ consumers through FFI.
- Requires a preinstalled DOCA SDK and a BlueField DPU or ConnectX NIC; installation is out of scope.
- SKILL.md is a thin loader, with substantive procedures in the unavailable TASKS.md and CAPABILITIES.md files.
- It contains no prewritten EC application source, standalone build manifest, bindings, sample subtree, or parity-vector bank.
- The source provides no evidence of testing on particular DOCA versions, hardware models, or non-C bindings.
How do you install this skill?
Install the individual skill from the NVIDIA/skills collection with the skills CLI:
npx skills add nvidia/skills --skill doca-erasure-coding --yes
The whole collection can also be installed:
npx skills add nvidia/skills
The skill becomes available when an agent encounters a relevant task. The source does not provide a DOCA SDK installation command; it requires the SDK at /opt/mellanox/doca.
How do you use this skill?
After installation, trigger it with a prompt such as: "Configure doca_ec_task_update on BlueField to refresh parity for one changed data block, checking device capabilities and mmap permissions."
For concrete workflows, the skill directs the agent to TASKS.md. For capabilities, permissions, error taxonomy, and path selection, it directs the agent to CAPABILITIES.md. The supplied source does not include those companion files, so complete build and run commands cannot be stated here.
How does this skill compare with similar options?
The skill distinguishes DOCA Erasure Coding from CPU erasure-coding libraries, pure replication, disk RAID-6, network FEC, and other DOCA libraries. DOCA EC is positioned as a storage-resilience primitive; replication preserves complete copies, while network FEC and non-Reed-Solomon codes are outside this skill's scope.