fix(schema): allow $schema keyword at root of hooks.json

Abierto Apto para principiantes
#60,103 1 comentario 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
2/5
Tiempo estimado
1-3 horas
Aptitud para principiantes
72/100
Tipo de issue
Error
Claridad
Bien especificado
Estado de actividad
Activo
Stack tecnológico
json
Área
tooling

Línea de trabajo

El issue identifica la copia de SchemaStore en src/schemas/json/codex-hooks.json y el documento de prueba en src/test/codex-hooks/hooks.json; primero inspecciona cómo cambiaron el esquema raíz y el documento de prueba en el commit 9497fde91. Reproduce después la validación reportada con Python jsonschema o Ajv y confirma que el esquema actualizado acepta un documento que contiene $schema y hooks.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

bug config hooks

The SchemaStore copy of the Codex hooks schema (what editors validate hooks.json against) changed on 2026-06-16 in SchemaStore commit 9497fde91 ("Tighten Codex hooks root schema"): the document root gained additionalProperties: false, with hooks as the only allowed key. Any hooks.json that carries a $schema key, which editor users add to get validation in the first place, or a description, is now rejected at the root.

This is confirmed by two validators, Python jsonschema 4.26 and Ajv 8, on SchemaStore's own test document for the schema (src/test/codex-hooks/hooks.json), valid before that commit and rejected after. The test document was edited in the same commit, which is why SchemaStore's CI stayed green.

To reproduce in a clone of SchemaStore/schemastore:

git show 9497fde91^:src/schemas/json/codex-hooks.json > before.json
git show 9497fde91:src/schemas/json/codex-hooks.json > after.json
python3 -c "import json,jsonschema as j; i={'\$schema':'https://json.schemastore.org/codex-hooks.json','hooks':{}}; v=lambda p: j.validators.validator_for(s:=json.load(open(p)))(s).is_valid(i); print(v('before.json'), v('after.json'))"
# True False

If closing the root was intended, allowing $schema explicitly would keep editor users' files valid. If the schema source lives in this repository, the check that found this runs as a GitHub Action on every change to it and reports exactly this kind of document, with no effect on merges unless you want one: https://github.com/Ramesh-35/invar (judge_contracts and judge_tests inputs).

Lenguaje dominante
Rust
Estrellas
133k
Forks
21.1k
Merge medio
1 min
PR fusionados (30 d)
997

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de openai/codex

Todos los issues de openai/codex

Issues similares

Más issues de Rust

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.