Files
whetstone_DSL/tools/mcp/__pycache__/schema_normalizer.cpython-312.pyc

89 lines
10 KiB
Plaintext
Raw Normal View History

<EFBFBD>
Α<>ic%<00><01><><00>dZddlmZddlZddlZddlmZddlmZm Z m
Z
m Z m Z hd<06>Z dd<07>Zdd<08>Zdd <09>Z dd
<EFBFBD>Zdd <0B>Zdd <0C>Zdd <0A>Zedk(re<14>yy)zR
Normalize Whetstone MCP tool schemas into a canonical, recursion-safe structure.
<EFBFBD>)<01> annotationsN)<01>Path)<05>Any<6E>Dict<63>List<73>Set<65>Tuple> <00>enum<75>const<73>maximum<75>minimum<75>pattern<72>maxItems<6D>minItems<6D> maxLength<74> minLength<74>exclusiveMaximum<75>exclusiveMinimumc<01> <00>|jd<01>std|<01><00><02><00>|}|ddjd<04>D]K}|jdd<04>jdd<07>}t |t
<00>r||vrt d|<01><00><02><00>||}<02>M|S) Nz#/zOnly local refs are supported: <20><00>/z~1z~0<>~zRef path not found: )<07>
startswith<EFBFBD>
ValueError<EFBFBD>split<69>replace<63>
isinstance<EFBFBD>dict<63>KeyError)<04>doc<6F>ref<65>cur<75>toks <20>O/home/bill/Documents/CLionProjects/whetstone_DSL/tools/mcp/schema_normalizer.py<70>_json_pointer_getr%s<><00><00> <0E>><3E>><3E>$<24> <1F><18>:<3A>3<EFBFBD>%<25>@<40>A<>A<>
<0A>C<EFBFBD><12>1<EFBFBD>2<EFBFBD>w<EFBFBD>}<7D>}<7D>S<EFBFBD>!<21><17><03><11>k<EFBFBD>k<EFBFBD>$<24><03>$<24>,<2C>,<2C>T<EFBFBD>3<EFBFBD>7<><03><19>#<23>t<EFBFBD>$<24><03>3<EFBFBD><0E><1A>1<>#<23><15>7<>8<> 8<><11>#<23>h<EFBFBD><03> <17>
<0F>J<EFBFBD>c<01>
<00>|jd<01>}t|t<00>r|St|t<00>r$d|vr t |<01>dk(rt d<04>|D<00><00>Sd|vryd|vsd|vry d
|vr|d
}|rt d <0B>|D<00><00>ry y )N<>type<70>nullrc3<01>,K<00>|] }|dk7s<01> |<01><01><00>y<01>w)r)N<>)<02>.0<EFBFBD>xs r$<00> <genexpr>z_infer_type.<locals>.<genexpr>/s<00><00><><00>4<>a<EFBFBD><01>V<EFBFBD> <0B><01>4<>s<00>
<01><01>
properties<EFBFBD>object<63>items<6D> prefixItems<6D>arrayr
c3<01><K<00>|]}t|t<00><00><01><00>y<00>w<01>N)r<00>str<74>r,<00>vs r$r.z_infer_type.<locals>.<genexpr>6s<00><00><><00>9<>q<EFBFBD>
<EFBFBD>1<EFBFBD>c<EFBFBD>*<2A>9<>s<00><01>string<6E>any)<07>getrr6<00>list<73>len<65>next<78>all)<03>node<64>t<>valss r$<00> _infer_typerC)s<><00><00> <0C><08><08><16><18>A<EFBFBD><11>!<21>S<EFBFBD><19><10><08><11>!<21>T<EFBFBD><1A> <11>Q<EFBFBD>;<3B>3<EFBFBD>q<EFBFBD>6<EFBFBD>Q<EFBFBD>;<3B><17>4<>1<EFBFBD>4<>4<> 4<><13>t<EFBFBD><1B><17><0E>$<24><EFBFBD>-<2D>4<EFBFBD>/<2F><16> <0A><14>~<7E><13>F<EFBFBD>|<7C><04> <0F>C<EFBFBD>9<>D<EFBFBD>9<>9<><1B> r&c<01>:<00>i}tD]}||vs<01>||||<<00>|Sr5)<01>SUPPORTED_CONSTRAINT_KEYS)r@<00>out<75>ks r$<00>_extract_constraintsrH;s1<00><00><1C>C<EFBFBD> &<26><1D><01> <0C><04>9<EFBFBD><19>!<21>W<EFBFBD>C<EFBFBD><01>F<EFBFBD><1D> <0F>Jr&c<01><><00>t|t<00>s|j|dd<02><02>d|d<04>Sd|vrs|d}t|t<00>s|j|dd<02><02>d|d<04>S||vr|j|d|d<08><03>d|d<04>S t ||<05>}t |||<02>d |<05>d <0C>|||hz<00> <0A>SdD]}||vs<01>|j|d|d<10><03><00>d|vrK|jd<11>xsg} d|t| <09>D<00>
<EFBFBD> cgc]\}
} t | ||<02>d|
<EFBFBD>d<13>||<04> <0A><00><02>c} }
d<14>Sd|vrK|jd<15>xsg} d|t| <09>D<00>
<EFBFBD> cgc]\}
} t | ||<02>d|
<EFBFBD>d<13>||<04> <0A><00><02>c} }
d<14>Sd|vrK|jd<17>xsg} d|t| <09>D<00>
<EFBFBD> cgc]\}
} t | ||<02>d|
<EFBFBD>d<13>||<04> <0A><00><02>c} }
d<14>St|<00>} t|<00>} | dk(r<>|jdi<00>xsi}t|jdg<00>D<00>cgc]}t|t<00>s<01>|<0F><02>c}<0F>}i}t|j<00><00>D]}t ||||<02>d|<08><00>||<04> <0A>||<<00>|jdd<1E>}t|t<00>rt |||<02>d<1F>||<04> <0A>n
t|<12>}d||||| t|jd d!<21><00>d"<22>S| d#k(r<>d$|vr<>t|d$t<00>r<>t|d$<00>D<00>
<EFBFBD>cgc]\}
}t |||<02>d%|
<EFBFBD>d<13>||<04> <0A><00><02>}}
}|jd&d!<21>}t|t<00>rt |||<02>d'<27>||<04> <0A>n
t|<16>}d(|||| t|jd d!<21><00>d)<29>Sd#|t |jd&i<00>||<02>d'<27>||<04> <0A>| t|jd d!<21><00>d*<2A>S| d+vr | || d,<2C>}d-|vr|d-|d-<d.|vr|d.|d.<|Sd|| t|jd d!<21><00>d/<2F>S#t
$r.}|j|d |t|<07>d
<EFBFBD><04>d|d<04>cYd}~Sd}~wwxYwcc} }
wcc} }
wcc} }
wcc}wcc}}
w)0N<30>non_object_schema_node)<02>path<74>reasonr:)<02>kindrKz$ref<65> invalid_ref<65> ref_cycle)rKrLr!<00>ref_resolution_failed)rKrLr!<00>errorz->$ref(<28>)<29><04>root_docrK<00> unsupported<65> ref_stack)<06>not<6F>if<69>then<65>else<73>dependentSchemas<61>patternProperties<65>unsupported_keyword)rKrL<00>keyword<72>oneOfz.oneOf[<5B>])rMrK<00>branches<65>anyOfz.anyOf[<5B>allOfz.allOf[r0r/<00>requiredz .properties.<2E>additionalPropertiesTz.additionalPropertieszx-whetstone-allow-broadF)rMrKr/rdre<00> constraints<74>
allowBroadr3r2z .prefixItems[r1z.items<6D>
arrayTuple)rMrKr2<00>additionalItemsrfrg)rMrKr1rfrg)r9<00>integer<65>number<65>booleanr))rMrKrfr
r )rMrKrfrg)rr<00>appendr6r%<00> Exception<6F>normalize_noder;<00> enumeraterCrH<00>sorted<65>keys<79>boolr<)r@rTrKrUrVr!<00>target<65>exc<78>keyra<00>i<>brArf<00>propsr-rd<00>normalized_props<70>ap<61>additional_properties<65>itr1<00>
additional<EFBFBD> add_itemsrFs r$roroCs<><00><00> <16>d<EFBFBD>D<EFBFBD> !<21><13><1A><1A>D<EFBFBD>4L<34>M<>N<><1D>t<EFBFBD>,<2C>,<2C> <0A><14>~<7E><12>6<EFBFBD>l<EFBFBD><03><19>#<23>s<EFBFBD>#<23> <17> <1E> <1E><04> <0A>F<> G<>!<21>4<EFBFBD>0<> 0<> <0E>)<29> <1B> <17> <1E> <1E><04> <0B>C<EFBFBD>P<> Q<>!<21>4<EFBFBD>0<> 0<> 1<>&<26>x<EFBFBD><13>5<>F<EFBFBD> <1E> <12><1D><18>6<EFBFBD><17><13><05>Q<EFBFBD>'<27>#<23><1F>3<EFBFBD>%<25>'<27> 
<EFBFBD>
<EFBFBD>V<01>`<01><03> <0E>$<24>;<3B> <17> <1E> <1E><04>8M<38>Z]<5D>^<5E> _<>`<01><0F>$<24><EFBFBD><17>8<EFBFBD>8<EFBFBD>G<EFBFBD>$<24>*<2A><02><08><1B><18>&<26>h<EFBFBD>/<2F> <0E><19>A<EFBFBD>q<EFBFBD><1F><15>%<25> <20>6<EFBFBD><17><11><03>1<EFBFBD>-<2D> +<2B>'<27> <12> <0E> 
<EFBFBD>
<EFBFBD><0F>$<24><EFBFBD><17>8<EFBFBD>8<EFBFBD>G<EFBFBD>$<24>*<2A><02><08><1B><18>&<26>h<EFBFBD>/<2F> <0E><19>A<EFBFBD>q<EFBFBD><1F><15>%<25> <20>6<EFBFBD><17><11><03>1<EFBFBD>-<2D> +<2B>'<27> <12> <0E> 
<EFBFBD>
<EFBFBD><0F>$<24><EFBFBD><17>8<EFBFBD>8<EFBFBD>G<EFBFBD>$<24>*<2A><02><08><1B><18>&<26>h<EFBFBD>/<2F> <0E><19>A<EFBFBD>q<EFBFBD><1F><15>%<25> <20>6<EFBFBD><17><11><03>1<EFBFBD>-<2D> +<2B>'<27> <12> <0E> 
<EFBFBD>
<EFBFBD> <14>D<EFBFBD><19>A<EFBFBD>&<26>t<EFBFBD>,<2C>K<EFBFBD><08>H<EFBFBD>}<7D><14><08><08><1C>r<EFBFBD>*<2A>0<>b<EFBFBD><05><19>d<EFBFBD>h<EFBFBD>h<EFBFBD>z<EFBFBD>2<EFBFBD>&><3E>U<><11>*<2A>Q<EFBFBD>PS<50>BT<42>1<EFBFBD>U<>V<><08>+-<2D><18><19>%<25>*<2A>*<2A>,<2C>'<27> <0E>C<EFBFBD>$2<><15>c<EFBFBD>
<EFBFBD>!<21><1C>v<EFBFBD>\<5C>#<23><15>/<2F>'<27>#<23> %<0E> <1C>S<EFBFBD> !<21> <0E><12>X<EFBFBD>X<EFBFBD>,<2C>d<EFBFBD> 3<><02><1A>"<22>d<EFBFBD>#<23> <1B><12>!<21><1C>v<EFBFBD>2<>3<>'<27>#<23>  <0E><16>b<EFBFBD><18> <1E><1D><18>*<2A> <20>$9<>&<26><1E>t<EFBFBD>x<EFBFBD>x<EFBFBD>(A<>5<EFBFBD>I<>J<>
<EFBFBD>
<EFBFBD> <09>G<EFBFBD>|<7C> <18>D<EFBFBD> <20>Z<EFBFBD><04>]<5D>0C<30>T<EFBFBD>%J<>'<27>t<EFBFBD>M<EFBFBD>':<3A>;<3B> <0E><1A>A<EFBFBD>r<EFBFBD><1F><16>%<25> <20>6<EFBFBD><1D>q<EFBFBD>c<EFBFBD><11>3<> +<2B>'<27> <12> <0E>E<EFBFBD> <0E><1E><18><18>'<27>5<EFBFBD>1<>J<EFBFBD><1E>j<EFBFBD>$<24>/<2F><1F><1E>%<25> <20>6<EFBFBD><16><1F> +<2B>'<27> <12><1A>*<2A>%<25> <16>%<25><1C>$<24>#,<2C>*<2A>"<22>4<EFBFBD>8<EFBFBD>8<EFBFBD>,E<>u<EFBFBD>#M<>N<> <0E> <0E><1C><18>#<23><14><08><08><17>"<22>%<25>!<21><1C>v<EFBFBD>V<EFBFBD>_<EFBFBD>'<27>#<23> <0E>'<27><1E>t<EFBFBD>x<EFBFBD>x<EFBFBD>(A<>5<EFBFBD>I<>J<> 
<EFBFBD>
<EFBFBD> <09> ><3E>><3E><18>$<24>{<7B>C<><03> <11>T<EFBFBD>><3E><1E>v<EFBFBD>,<2C>C<EFBFBD><06>K<EFBFBD> <12>d<EFBFBD>?<3F><1F><07>=<3D>C<EFBFBD><07>L<EFBFBD><12>
<EFBFBD><16><14>"<22><1A>4<EFBFBD>8<EFBFBD>8<EFBFBD>$=<3D>u<EFBFBD>E<>F<>  <06><06><>{<19> 1<> <17> <1E> <1E><1D>)@<40><13>WZ<57>[^<5E>W_<57>`<60> <0E>"<22>4<EFBFBD>0<> 0<><30>  1<><31>, <0E><> <0E><> <0E><>"V<01><>D sB<00>; O0<00>+ P*
<EFBFBD>: P0
<EFBFBD> P6
<EFBFBD>9P<<08>P<<08>% Q<06>0 P'<03>9#P"<03>P'<03>"P'c <01><><00>i}t|j<00><00>D],}||}g}t||d|<02><00>|t<00><00><02>}||d<03>||<<00>.|S)Nztools.rS)<02>schemarU)rqrrro<00>set)<06>rawrF<00> tool_namer<65>rU<00>
normalizeds r$<00>normalize_tool_schemasr<73><00>sk<00><00><1C>C<EFBFBD><1B>C<EFBFBD>H<EFBFBD>H<EFBFBD>J<EFBFBD>'<27> 
<EFBFBD> <09><14>Y<EFBFBD><1E><06>,.<2E> <0B>#<23> <12><18><19>)<29><1B>%<25>#<23><19>e<EFBFBD> 
<EFBFBD>
<EFBFBD>!<21>&<26>
<EFBFBD><03>I<EFBFBD><0E> 
<EFBFBD> <0F>Jr&c<01>^<00>td<01>|j<00>D<00><00>}t|<00>|d<02>S)Nc3<01>RK<00>|]}t|jdg<00><00><00><01><00>!y<01>w)rUN)r=r;r7s r$r.z_summarize.<locals>.<genexpr>s <00><00><><00>W<>a<EFBFBD>C<EFBFBD><01><05><05>m<EFBFBD>R<EFBFBD> 8<>9<>W<>s<00>%')<02>
tool_count<EFBFBD>unsupported_entry_count)<03>sum<75>valuesr=)r<><00>unsupported_counts r$<00>
_summarizer<EFBFBD>s0<00><00><1B>W<>:<3A>CT<43>CT<43>CV<43>W<>W<><15><19>*<2A>o<EFBFBD>#4<> <06>r&c<01>Z<00>tj<00>}|jddd<03><04>|jddd<07><04>|j<00>}t |j
<00>}t j|j<00><00>}t|<03>}t|<04>|d<08>}t |j<00>}|jjd d <09>
<EFBFBD>|jt j|d d <09> <0C>d z<00>t!d|<06><00><02>t!t j|dd d <09> <0C><00>y)Nz --schemasz%tools/mcp/whetstone_tool_schemas.jsonzInput tool schema map)<02>default<6C>helpz--outz/tools/mcp/grammars/normalized_tool_schemas.jsonzOutput normalized schema file)<02>summary<72>toolsT)<02>parents<74>exist_okr)<02>indent<6E> sort_keys<79>
zWrote normalized schemas: r<>)<11>argparse<73>ArgumentParser<65> add_argument<6E>
parse_argsr<00>schemas<61>json<6F>loads<64> read_textr<74>r<>rF<00>parent<6E>mkdir<69>
write_text<EFBFBD>dumps<70>print)r{<00>args<67> schema_pathr<68>r<><00>payload<61>out_paths r$<00>mainr<6E>s<00><00> <11> <20> <20> "<22>B<EFBFBD><06>O<EFBFBD>O<EFBFBD><13>7<> $<24><14><06>
<07>O<EFBFBD>O<EFBFBD><0F>A<> ,<2C><14><06>
<0E>=<3D>=<3D>?<3F>D<EFBFBD><16>t<EFBFBD>|<7C>|<7C>$<24>K<EFBFBD>
<0E>*<2A>*<2A>[<5B>*<2A>*<2A>,<2C>
-<2D>C<EFBFBD>'<27><03>,<2C>J<EFBFBD><1D>j<EFBFBD>)<29><1B><06>G<EFBFBD><14>D<EFBFBD>H<EFBFBD>H<EFBFBD>~<7E>H<EFBFBD> <0C>O<EFBFBD>O<EFBFBD><19><19>$<24><14><19>6<> <0C><17><17><04>
<EFBFBD>
<EFBFBD>7<EFBFBD>1<EFBFBD><04>E<><04>L<>M<> <09> &<26>x<EFBFBD>j<EFBFBD>
1<EFBFBD>2<> <09>$<24>*<2A>*<2A>W<EFBFBD>Y<EFBFBD>'<27><01>T<EFBFBD>
B<EFBFBD>Cr&<00>__main__)r rr!r6<00>returnr)r@<00>Dict[str, Any]r<>r6)r@r<>r<>r<>) r@rrTr<>rKr6rUzList[Dict[str, Any]]rVzSet[str]r<>r<>)r<>r<>r<>r<>)r<>r<>r<>r<>)r<><00>None)<16>__doc__<5F>
__future__rr<>r<><00>pathlibr<00>typingrrrrr rEr%rCrHror<>r<>r<><00>__name__r+r&r$<00><module>r<>s<><00><01><04>#<23><0F> <0B><18>.<2E>.<2E> <02><19> <0F><11>$<0F>x<06>
<0A>x<06><1D>x<06> <0E> x<06>
&<26> x<06> <18> x<06><14>x<06>v<0F>&<06>D<01>8 <0C>z<EFBFBD><19><08>F<EFBFBD>r&