compras_arp_buscar_por_objeto
Busca ARPs vigentes cujo objeto contém uma palavra-chave.
Resolve a limitação do endpoint /modulo-arp/1.2_consultarARP_FimVigencia,
que não aceita filtro por texto: pagina internamente até max_paginas_varridas
e filtra client-side por presença de palavra_chave (case-insensitive,
com normalização de acentos). Curto-circuita quando atinge max_resultados.
O servidor faz o trabalho que antes era pedido ao LLM — sem isso, o
roteiro oportunidades_carona_arp esbarrava em 169k ARPs vigentes e
339 páginas. Achado da bateria A v0.3.5.
Limitação conhecida: o schema upstream de ARP não traz UF no
item — só nomeOrgao e nomeUnidadeGerenciadora. Para filtrar por
UF, cruze os matches com compras_uasg_consultar usando
codigoUnidadeGerenciadora e compare unidade.uf. Não tentamos esse
cruzamento aqui para manter a tool barata e previsível.
Output: { "resultado": [], "total_examinadas": int, "matches": int, "paginas_varridas": int, "curto_circuitou": bool, "_filtro_objeto": {...} }
Cache 15 min por (palavra_chave + janela + caps).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| palavra_chave | Yes | Termo a procurar no campo `objetoCompra` das ARPs (case-insensitive, com normalização básica de acentos). Exemplos: 'notebook', 'uniformes', 'limpeza'. | |
| max_resultados | No | Quantos matches no máximo retornar (curto-circuita a varredura). | |
| max_paginas_varridas | No | Quantas páginas do upstream serão varridas para encontrar matches (proteção de latência). Default 10 × 500 itens = até 5.000 ARPs examinadas. Cap em 50. | |
| data_vigencia_final_max | Yes | Limite máximo do fim de vigência (YYYY-MM-DD). | |
| data_vigencia_final_min | Yes | Limite mínimo do fim de vigência (YYYY-MM-DD). Tipicamente hoje para 'apenas vigentes'. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||