Skip to content
Back to skills

Metadata Maintenance

ASecurity

"Maintain auto-sklearn meta-learning metadata, AutoSklearn2

  • 247 stars
  • 0 votes
  • 0 copies
  • 3 views
  • Added September 8, 2026
toolspythongobashgit

Security analysis

A100/100

Pro scans all 5 files and shows the line behind each finding

Scanned September 8, 2026

npx -y skills add VectorSpaceLab/AREX-Skill --skill metadata-maintenance --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Metadata Maintenance?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Metadata Maintenance
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/vectorspacelab-metadata-maintenance/badge)](https://www.skillsdirectory.com/skills/vectorspacelab-metadata-maintenance)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: metadata-maintenance
description: "Maintain auto-sklearn meta-learning metadata, AutoSklearn2
  selector and portfolio context, metadata_directory usage, regeneration
  planning, submodule checks, and focused repository test workflows safely."
disable-model-invocation: true
metadata:
  disco-role: operating
license: BSD 3-Clause
---

# Metadata Maintenance

Use this sub-skill when the user asks about maintaining meta-learning metadata,
`metadata_directory`, AutoSklearn2 selector or portfolio files, metadata
regeneration scripts, ASLib outputs, the `automl_common` submodule, or focused
repository maintenance and test workflows around those areas.

Do **not** use this sub-skill for ordinary estimator usage, input validation,
metrics, search limits, parallelism, or custom components. Route those requests
to the sibling operating areas for estimators, data/metrics/validation,
search/parallelism, or custom components. Historical NIPS benchmark scripts are
reference-only context; do not present them as bundled runnable helpers.

## Safety contract

- Default to **plan-only**. A full metadata refresh depends on OpenML account and
  network access and on long AutoML runs; it is not safe for a normal short
  Researcher task.
- Never launch OpenML downloads, metadata-generation AutoML jobs, full ASLib
  regeneration, or full pytest unless the user explicitly approves the runtime,
  network, disk, and dirty-tree implications.
- Prefer the bundled dry helper [`scripts/metadata_command_template.py`](scripts/metadata_command_template.py)
  to produce explicit commands or JSON plans from known task IDs and metrics. It
  does not import auto-sklearn, contact OpenML, or run AutoML.
- Treat generated metadata files as repository artifacts: verify layout, inspect
  diffs, and keep the working tree clean after tests.

## Operating facts to preserve

- The installed package imports as `autosklearn`; the inspected development
  version reported `0.16.0dev` / `0.16.0.dev0`.
- `AutoSklearnClassifier` and `AutoSklearnRegressor` accept
  `initial_configurations_via_metalearning` and `metadata_directory`; when
  `metadata_directory=None`, packaged metadata is used.
- `AutoSklearn2Classifier` lives under `autosklearn.experimental.askl2`, trains
  or loads local selector pickles for supported metrics, selects one of several
  portfolio strategies, and intentionally passes `metadata_directory=None` to
  its parent classifier.
- AutoSklearn2 selector training data uses only `NumberOfFeatures` and
  `NumberOfInstances` as selector meta-features for its packaged strategy
  choice. Its portfolio JSON files are metric-specific.
- The bundled ASLib-style metadata directories contain combinations of metric,
  task family, and density, each with files such as `algorithm_runs.arff`,
  `configurations.csv`, `description.txt`, `feature_costs.arff`,
  `feature_runstatus.arff`, `feature_values.arff`, and `readme.txt`.
- The `autosklearn.automl_common` package area is a git submodule and must be
  initialized for source-tree maintenance and contributor tests.

## Fast decision flow

1. **Classify the request.**
   - User wants to run or use AutoML normally: route elsewhere.
   - User wants to change metadata task lists, scripts, ASLib files, selector
     data, portfolio data, or repository tests: continue here.
2. **Decide whether execution is safe.**
   - If the task asks for a complete refresh, respond with a safe plan first and
     require explicit approval for OpenML/network/long-run execution.
   - If the task is a contributor edit to scripts or selector code, prepare
     focused static checks and narrow pytest commands before any expensive test.
3. **Load bundled references as needed.**
   - Metadata and ASLib pipeline: [`references/metadata-workflows.md`](references/metadata-workflows.md)
   - Contributor/submodule/test guidance: [`references/repo-maintenance.md`](references/repo-maintenance.md)
   - Failure diagnosis: [`references/troubleshooting.md`](references/troubleshooting.md)
4. **Use the dry helper for command planning.**
   ```bash
   python scripts/metadata_command_template.py --help
   python scripts/metadata_command_template.py \
     --task-type classification \
     --task-id 245 \
     --metric balanced_accuracy \
     --working-directory ./metadata-work \
     --format json
   ```
5. **Verify outputs before suggesting replacement.** For metadata runs, check
   the working-directory layout and required ASLib files. For maintenance tests,
   confirm that submodules import, focused checks pass, and generated files are
   removed or intentionally committed.

## Common later workflows

### Produce a safe plan instead of refreshing metadata

Use this when the user asks to update meta-learning datasets, add metrics, or
rerun metadata generation but has not provided a long-running execution window.
Collect explicit task IDs and metrics, then run the bundled helper with
`--format json` or command output. State that the plan is dry and that the broad
metadata generator normally expands large task lists and may create many
one-day-per-task/metric commands.

### Prepare focused tests for a metadata-script contributor

Use this when a contributor edits metadata scripts, ASLib reading/writing,
AutoSklearn2 selector code, or the submodule boundary.

- Run cheap static inspections first: parser help, import checks, and format or
  type checks scoped to changed files if the project tooling is available.
- Use pytest selectors such as `-k "metadata_generation or metalearning or selector"`
  only after warning that the metadata-generation test can contact OpenML and
  run bounded AutoML jobs.
- Use the repository pytest defaults: tests live under `test`, pytest is run with
  `--forked`, CI adds `--timeout=600 --timeout-method=thread -s`, and CI checks
  for dirty generated files after tests.

Files in this skill

  • SKILL.md5.7 KB
  • references/metadata-workflows.md8.9 KB
  • references/repo-maintenance.md5 KB
  • references/troubleshooting.md5.5 KB
  • scripts/metadata_command_template.py8 KB

Attribution

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

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.