Invenqor v0.2.20
Invenqor Server·Agent v0.2.20 릴리즈 노트
릴리즈 일자: 2026-09-03
호환 Agent: v0.2.20 (Linux·Windows)
이번 릴리즈는 결함 하나를 고칩니다. v0.2.19에서 고친 것들과 같은 종류 —
오류 없이 틀린 답을 주던 것 — 이고, 이번에는 질의가 물어본 속성 키 자체가
바뀌어 있었습니다.
1. 속성 질의가 자기가 찾는 키를 소문자로 바꿔 물었습니다
자산 질의 DSL의 파서는 컬럼을 대소문자 구분 없이 쓸 수 있도록 필드 이름 전체를
소문자로 접었습니다. 그런데 attributes. 뒤는 컬럼이 아니라 저장된 JSON 문서의
키이고, JSON 키는 대소문자를 구분합니다.
자산 API, MCP 도구, 또는 다른 시스템에서 가져온 자산은 호출자가 쓴 키를 그대로
들고 있고, 그런 키에는 대문자가 흔합니다. attributes.assetTag는 assettag를
찾는 경로로 컴파일됐고, 그런 키를 가진 문서는 없으므로 질의는 오류 없이 HTTP
200에 0건을 돌려줬습니다. 게다가 /query/validate는 그 식을 이미 "유효하다"고
답한 뒤였습니다. 두 저장 모드 모두 영향을 받았습니다 — PostgreSQL의 #>> 경로도,
SQLite의 json_extract 경로도 대소문자를 무시하지 않습니다.
이제 접는 것은 attributes. 접두사뿐이고, 키는 입력된 대소문자를 그대로
유지합니다. 컬럼 이름은 종전대로 대소문자를 가리지 않습니다. 콘솔이 렌더링하는
문법 참조에도 이 속성 경로가 대소문자를 구분한다고 적혔습니다.
검증
- 속성 경로의 대소문자. 파서·컴파일러 수준에서 대문자가 섞인 키가 두 저장
모드의 경로에 그대로 실리는지, 그리고 컬럼 필드는 여전히 어떤 대소문자로 써도
같은 컬럼이 되는지 고정했습니다. - HTTP 경로까지. 대문자가 든 키로 자산을 만든 뒤 그 키로 질의해 자산이 실제로
돌아오는 것을 엔드포인트 너머에서 확인합니다. 결함의 증상이 "오류 없는 0건"이라
파서 단언만으로는 회귀를 놓칠 수 있기 때문입니다. 이 테스트는 SQLite fallback과
CI의 PostgreSQL 잡에서 모두 돕니다.
호환성
- 데이터베이스 마이그레이션이 없습니다.
- API 응답 형식 변경이 없습니다.
- 대문자가 섞인 속성 키를 지금까지 소문자로 적어 우연히 맞춰 쓰던 질의는
없습니다(그런 질의는 0건을 돌려주고 있었습니다). 저장된 질의에attributes.
경로가 있다면 자산에 기록된 대소문자와 같은지 확인하십시오.