vql 0.1.4__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- vql-0.1.4/.gitignore +404 -0
- vql-0.1.4/CHANGELOG.md +255 -0
- vql-0.1.4/LICENSE +201 -0
- vql-0.1.4/Makefile +112 -0
- vql-0.1.4/PKG-INFO +199 -0
- vql-0.1.4/README.md +170 -0
- vql-0.1.4/SUMD.md +2400 -0
- vql-0.1.4/SUMR.md +1476 -0
- vql-0.1.4/TODO.md +214 -0
- vql-0.1.4/VERSION +1 -0
- vql-0.1.4/app.doql.less +147 -0
- vql-0.1.4/app.vql.events.pb +0 -0
- vql-0.1.4/app.vql.json +5803 -0
- vql-0.1.4/docs/README.md +81 -0
- vql-0.1.4/docs/architecture.md +79 -0
- vql-0.1.4/docs/desktop-capture.md +101 -0
- vql-0.1.4/docs/getting-started.md +114 -0
- vql-0.1.4/docs/img2svg-uri.md +61 -0
- vql-0.1.4/docs/packages.md +80 -0
- vql-0.1.4/docs/photo-roundtrip-sample.vql.json +41 -0
- vql-0.1.4/docs/photo-roundtrip.md +252 -0
- vql-0.1.4/docs/rest-window-api.md +91 -0
- vql-0.1.4/docs/vdisplay-imgl-automation.md +183 -0
- vql-0.1.4/docs/window-pipeline.md +156 -0
- vql-0.1.4/docs/window-uri.md +125 -0
- vql-0.1.4/examples/README.md +90 -0
- vql-0.1.4/examples/full-pipeline.sh +80 -0
- vql-0.1.4/examples/generate-demo-screen.py +76 -0
- vql-0.1.4/examples/img2nl-vql-flow.sh +214 -0
- vql-0.1.4/examples/live-capture-test.sh +94 -0
- vql-0.1.4/examples/photo-roundtrip-test.py +406 -0
- vql-0.1.4/examples/scope-window.py +53 -0
- vql-0.1.4/goal.yaml +511 -0
- vql-0.1.4/install-dev.sh +37 -0
- vql-0.1.4/layout.vql.imgl.json +21939 -0
- vql-0.1.4/layout.vql.json +78775 -0
- vql-0.1.4/nlp2uri.yaml +8 -0
- vql-0.1.4/packages/CONTROL_LAYER_PROMPT.template.md +646 -0
- vql-0.1.4/packages/README.md +126 -0
- vql-0.1.4/packages/cli2vql/pyproject.toml +18 -0
- vql-0.1.4/packages/cli2vql/src/cli2vql/__init__.py +1 -0
- vql-0.1.4/packages/cli2vql/src/cli2vql/cli.py +68 -0
- vql-0.1.4/packages/dsl2img2svg/README.md +19 -0
- vql-0.1.4/packages/dsl2img2svg/pyproject.toml +18 -0
- vql-0.1.4/packages/dsl2img2svg/src/dsl2img2svg/__init__.py +5 -0
- vql-0.1.4/packages/dsl2img2svg/src/dsl2img2svg/cli.py +21 -0
- vql-0.1.4/packages/dsl2img2svg/src/dsl2img2svg/dispatch.py +115 -0
- vql-0.1.4/packages/dsl2img2svg/tests/test_dispatch.py +31 -0
- vql-0.1.4/packages/dsl2vql/proto/dsl2vql/v1/command.proto +62 -0
- vql-0.1.4/packages/dsl2vql/proto/dsl2vql/v1/result.proto +23 -0
- vql-0.1.4/packages/dsl2vql/pyproject.toml +33 -0
- vql-0.1.4/packages/dsl2vql/scripts/generate-proto.sh +7 -0
- vql-0.1.4/packages/dsl2vql/src/dsl2vql/__init__.py +6 -0
- vql-0.1.4/packages/dsl2vql/src/dsl2vql/bus.py +77 -0
- vql-0.1.4/packages/dsl2vql/src/dsl2vql/cli.py +97 -0
- vql-0.1.4/packages/dsl2vql/src/dsl2vql/codec.py +35 -0
- vql-0.1.4/packages/dsl2vql/src/dsl2vql/engine.py +8 -0
- vql-0.1.4/packages/dsl2vql/src/dsl2vql/events.py +108 -0
- vql-0.1.4/packages/dsl2vql/src/dsl2vql/grammar.py +96 -0
- vql-0.1.4/packages/dsl2vql/src/dsl2vql/handlers/__init__.py +5 -0
- vql-0.1.4/packages/dsl2vql/src/dsl2vql/handlers/command.py +130 -0
- vql-0.1.4/packages/dsl2vql/src/dsl2vql/handlers/query.py +109 -0
- vql-0.1.4/packages/dsl2vql/src/dsl2vql/pb_codec.py +157 -0
- vql-0.1.4/packages/dsl2vql/src/dsl2vql/result.py +28 -0
- vql-0.1.4/packages/dsl2vql/src/dsl2vql/schema/commands/compile.schema.json +12 -0
- vql-0.1.4/packages/dsl2vql/src/dsl2vql/schema/commands/generate.schema.json +11 -0
- vql-0.1.4/packages/dsl2vql/src/dsl2vql/schema/commands/patch.schema.json +12 -0
- vql-0.1.4/packages/dsl2vql/src/dsl2vql/schema/commands/query.schema.json +12 -0
- vql-0.1.4/packages/dsl2vql/src/dsl2vql/schema/commands/render.schema.json +12 -0
- vql-0.1.4/packages/dsl2vql/src/dsl2vql/schema/commands/validate.schema.json +10 -0
- vql-0.1.4/packages/dsl2vql/src/dsl2vql/schema_registry.py +46 -0
- vql-0.1.4/packages/dsl2vql/src/dsl2vql/v1/__init__.py +5 -0
- vql-0.1.4/packages/dsl2vql/src/dsl2vql/v1/command_pb2.py +52 -0
- vql-0.1.4/packages/dsl2vql/src/dsl2vql/v1/result_pb2.py +39 -0
- vql-0.1.4/packages/dsl2vql/tests/test_parity.py +28 -0
- vql-0.1.4/packages/img2svg/README.md +66 -0
- vql-0.1.4/packages/img2svg/pyproject.toml +26 -0
- vql-0.1.4/packages/img2svg/src/img2svg/__init__.py +13 -0
- vql-0.1.4/packages/img2svg/src/img2svg/cli.py +71 -0
- vql-0.1.4/packages/img2svg/src/img2svg/svg_emit.py +134 -0
- vql-0.1.4/packages/img2svg/src/img2svg/to_vql.py +141 -0
- vql-0.1.4/packages/img2svg/src/img2svg/trace.py +263 -0
- vql-0.1.4/packages/img2svg/tests/test_img2svg.py +100 -0
- vql-0.1.4/packages/img2vql/README.md +76 -0
- vql-0.1.4/packages/img2vql/pyproject.toml +26 -0
- vql-0.1.4/packages/img2vql/src/img2vql/__init__.py +26 -0
- vql-0.1.4/packages/img2vql/src/img2vql/adopt.py +63 -0
- vql-0.1.4/packages/img2vql/src/img2vql/cli.py +87 -0
- vql-0.1.4/packages/img2vql/src/img2vql/describe_ui.py +121 -0
- vql-0.1.4/packages/img2vql/src/img2vql/detect.py +379 -0
- vql-0.1.4/packages/img2vql/src/img2vql/diagnose.py +125 -0
- vql-0.1.4/packages/img2vql/src/img2vql/fingerprint.py +104 -0
- vql-0.1.4/packages/img2vql/src/img2vql/metadata.py +339 -0
- vql-0.1.4/packages/img2vql/src/img2vql/program.py +141 -0
- vql-0.1.4/packages/img2vql/tests/test_auto_ocr.py +44 -0
- vql-0.1.4/packages/img2vql/tests/test_detect.py +74 -0
- vql-0.1.4/packages/img2vql/tests/test_diagnose.py +30 -0
- vql-0.1.4/packages/img2vql/tests/test_fingerprint.py +92 -0
- vql-0.1.4/packages/img2vql/tests/test_metadata_imgl.py +48 -0
- vql-0.1.4/packages/mcp2vql/pyproject.toml +24 -0
- vql-0.1.4/packages/mcp2vql/src/mcp2vql/__init__.py +5 -0
- vql-0.1.4/packages/mcp2vql/src/mcp2vql/cli.py +8 -0
- vql-0.1.4/packages/mcp2vql/src/mcp2vql/server.py +135 -0
- vql-0.1.4/packages/nlp2vql/pyproject.toml +18 -0
- vql-0.1.4/packages/nlp2vql/src/nlp2vql/__init__.py +6 -0
- vql-0.1.4/packages/nlp2vql/src/nlp2vql/apply.py +48 -0
- vql-0.1.4/packages/nlp2vql/src/nlp2vql/cli.py +53 -0
- vql-0.1.4/packages/nlp2vql/src/nlp2vql/to_dsl.py +42 -0
- vql-0.1.4/packages/rest2vql/pyproject.toml +26 -0
- vql-0.1.4/packages/rest2vql/src/rest2vql/__init__.py +5 -0
- vql-0.1.4/packages/rest2vql/src/rest2vql/app.py +72 -0
- vql-0.1.4/packages/rest2vql/src/rest2vql/cli.py +24 -0
- vql-0.1.4/packages/rest2vql/src/rest2vql/window.py +124 -0
- vql-0.1.4/packages/rest2vql/src/rest2vql/window_routes.py +110 -0
- vql-0.1.4/packages/rest2vql/tests/test_window_api.py +120 -0
- vql-0.1.4/packages/uri2img2svg/README.md +39 -0
- vql-0.1.4/packages/uri2img2svg/pyproject.toml +18 -0
- vql-0.1.4/packages/uri2img2svg/src/uri2img2svg/__init__.py +6 -0
- vql-0.1.4/packages/uri2img2svg/src/uri2img2svg/cli.py +28 -0
- vql-0.1.4/packages/uri2img2svg/src/uri2img2svg/query.py +144 -0
- vql-0.1.4/packages/uri2img2svg/src/uri2img2svg/uri.py +59 -0
- vql-0.1.4/packages/uri2img2svg/tests/test_uri2img2svg.py +41 -0
- vql-0.1.4/packages/uri2vql/pyproject.toml +26 -0
- vql-0.1.4/packages/uri2vql/src/uri2vql/__init__.py +45 -0
- vql-0.1.4/packages/uri2vql/src/uri2vql/cli.py +352 -0
- vql-0.1.4/packages/uri2vql/src/uri2vql/compile.py +36 -0
- vql-0.1.4/packages/uri2vql/src/uri2vql/nlp2uri.py +329 -0
- vql-0.1.4/packages/uri2vql/src/uri2vql/patch.py +40 -0
- vql-0.1.4/packages/uri2vql/src/uri2vql/query.py +95 -0
- vql-0.1.4/packages/uri2vql/src/uri2vql/run.py +64 -0
- vql-0.1.4/packages/uri2vql/src/uri2vql/uri.py +183 -0
- vql-0.1.4/packages/uri2vql/src/uri2vql/window.py +653 -0
- vql-0.1.4/packages/uri2vql/tests/test_nlp2uri_window.py +30 -0
- vql-0.1.4/packages/uri2vql/tests/test_window_refresh.py +78 -0
- vql-0.1.4/planfile.yaml +1319 -0
- vql-0.1.4/prefact.yaml +94 -0
- vql-0.1.4/project/README.md +340 -0
- vql-0.1.4/project/analysis.toon.yaml +338 -0
- vql-0.1.4/project/calls.mmd +502 -0
- vql-0.1.4/project/calls.png +0 -0
- vql-0.1.4/project/calls.toon.yaml +348 -0
- vql-0.1.4/project/calls.yaml +2806 -0
- vql-0.1.4/project/compact_flow.mmd +42 -0
- vql-0.1.4/project/compact_flow.png +0 -0
- vql-0.1.4/project/context.md +614 -0
- vql-0.1.4/project/duplication.toon.yaml +112 -0
- vql-0.1.4/project/evolution.toon.yaml +83 -0
- vql-0.1.4/project/flow.mmd +34 -0
- vql-0.1.4/project/flow.png +0 -0
- vql-0.1.4/project/index.html +624 -0
- vql-0.1.4/project/logic.pl +863 -0
- vql-0.1.4/project/map.toon.yaml +844 -0
- vql-0.1.4/project/mermaid.export +588 -0
- vql-0.1.4/project/planfile-tickets.yaml +4027 -0
- vql-0.1.4/project/project.toon.yaml +54 -0
- vql-0.1.4/project/prompt.txt +48 -0
- vql-0.1.4/project.sh +59 -0
- vql-0.1.4/pyproject.toml +65 -0
- vql-0.1.4/scripts/test-goal.sh +6 -0
- vql-0.1.4/src/vql/__init__.py +56 -0
- vql-0.1.4/src/vql/adopt/__init__.py +19 -0
- vql-0.1.4/src/vql/adopt/portal_capture.py +109 -0
- vql-0.1.4/src/vql/adopt/window.py +804 -0
- vql-0.1.4/src/vql/api.py +55 -0
- vql-0.1.4/src/vql/compiler/__init__.py +15 -0
- vql-0.1.4/src/vql/compiler/legacy_drawcommand.py +142 -0
- vql-0.1.4/src/vql/compiler/nl_to_vql.py +69 -0
- vql-0.1.4/src/vql/drawing/__init__.py +16 -0
- vql-0.1.4/src/vql/drawing/arrow_generator.py +46 -0
- vql-0.1.4/src/vql/drawing/bird_generator.py +49 -0
- vql-0.1.4/src/vql/drawing/boat_generator.py +40 -0
- vql-0.1.4/src/vql/drawing/butterfly_generator.py +50 -0
- vql-0.1.4/src/vql/drawing/car_generator.py +48 -0
- vql-0.1.4/src/vql/drawing/castle_generator.py +63 -0
- vql-0.1.4/src/vql/drawing/cat_generator.py +55 -0
- vql-0.1.4/src/vql/drawing/circle_generator.py +29 -0
- vql-0.1.4/src/vql/drawing/cloud_detailed_generator.py +47 -0
- vql-0.1.4/src/vql/drawing/colors.py +135 -0
- vql-0.1.4/src/vql/drawing/commands.py +271 -0
- vql-0.1.4/src/vql/drawing/crescent_generator.py +36 -0
- vql-0.1.4/src/vql/drawing/cross_generator.py +33 -0
- vql-0.1.4/src/vql/drawing/diamond_generator.py +36 -0
- vql-0.1.4/src/vql/drawing/dot_generator.py +29 -0
- vql-0.1.4/src/vql/drawing/ellipse_generator.py +30 -0
- vql-0.1.4/src/vql/drawing/event_store.py +101 -0
- vql-0.1.4/src/vql/drawing/events.py +142 -0
- vql-0.1.4/src/vql/drawing/fish_generator.py +46 -0
- vql-0.1.4/src/vql/drawing/flower_generator.py +35 -0
- vql-0.1.4/src/vql/drawing/grid_generator.py +36 -0
- vql-0.1.4/src/vql/drawing/heart_generator.py +30 -0
- vql-0.1.4/src/vql/drawing/hexagon_generator.py +27 -0
- vql-0.1.4/src/vql/drawing/house_generator.py +30 -0
- vql-0.1.4/src/vql/drawing/line_generator.py +25 -0
- vql-0.1.4/src/vql/drawing/mountain_generator.py +39 -0
- vql-0.1.4/src/vql/drawing/nl_parser.py +225 -0
- vql-0.1.4/src/vql/drawing/octagon_generator.py +27 -0
- vql-0.1.4/src/vql/drawing/path_generator.py +25 -0
- vql-0.1.4/src/vql/drawing/pentagon_generator.py +27 -0
- vql-0.1.4/src/vql/drawing/rectangle_generator.py +26 -0
- vql-0.1.4/src/vql/drawing/renderers/__init__.py +9 -0
- vql-0.1.4/src/vql/drawing/renderers/base.py +84 -0
- vql-0.1.4/src/vql/drawing/renderers/playwright.py +215 -0
- vql-0.1.4/src/vql/drawing/renderers/svg.py +93 -0
- vql-0.1.4/src/vql/drawing/rocket_generator.py +52 -0
- vql-0.1.4/src/vql/drawing/shape_generator.py +37 -0
- vql-0.1.4/src/vql/drawing/shape_registry.py +103 -0
- vql-0.1.4/src/vql/drawing/shapes.py +78 -0
- vql-0.1.4/src/vql/drawing/spiral_generator.py +32 -0
- vql-0.1.4/src/vql/drawing/square_generator.py +25 -0
- vql-0.1.4/src/vql/drawing/star_generator.py +33 -0
- vql-0.1.4/src/vql/drawing/sun_generator.py +36 -0
- vql-0.1.4/src/vql/drawing/svg_path_parser.py +205 -0
- vql-0.1.4/src/vql/drawing/tree_generator.py +33 -0
- vql-0.1.4/src/vql/drawing/triangle_generator.py +26 -0
- vql-0.1.4/src/vql/drawing/wave_generator.py +34 -0
- vql-0.1.4/src/vql/facade.py +95 -0
- vql-0.1.4/src/vql/library/__init__.py +14 -0
- vql-0.1.4/src/vql/renderers/__init__.py +23 -0
- vql-0.1.4/src/vql/renderers/base.py +65 -0
- vql-0.1.4/src/vql/renderers/playwright.py +22 -0
- vql-0.1.4/src/vql/renderers/svg.py +51 -0
- vql-0.1.4/src/vql/schema/__init__.py +33 -0
- vql-0.1.4/src/vql/schema/program.py +423 -0
- vql-0.1.4/src/vql/schema/program_metadata_imgl.json +48 -0
- vql-0.1.4/src/vql/validation/__init__.py +13 -0
- vql-0.1.4/src/vql/validation/metadata.py +57 -0
- vql-0.1.4/src/vql/validation/spec.py +91 -0
- vql-0.1.4/testql-scenarios/generated-cli-tests.testql.toon.yaml +20 -0
- vql-0.1.4/testql-scenarios/generated-from-pytests.testql.toon.yaml +12 -0
- vql-0.1.4/tests/test_adopt_window_capture.py +36 -0
- vql-0.1.4/tests/test_metadata_validation.py +40 -0
- vql-0.1.4/tests/test_photo_roundtrip.py +115 -0
- vql-0.1.4/tests/test_screenshot_merge.py +30 -0
- vql-0.1.4/tests/test_vql.py +244 -0
- vql-0.1.4/tree.sh +1 -0
- vql-0.1.4/uv.lock +3676 -0
vql-0.1.4/.gitignore
ADDED
|
@@ -0,0 +1,404 @@
|
|
|
1
|
+
# Byte-compiled / optimized / DLL files
|
|
2
|
+
.env.example
|
|
3
|
+
.idea/
|
|
4
|
+
__pycache__/
|
|
5
|
+
*.py[codz]
|
|
6
|
+
*$py.class
|
|
7
|
+
.code2llm_cache/
|
|
8
|
+
.env.example
|
|
9
|
+
.code2llm_cache/
|
|
10
|
+
.pkl
|
|
11
|
+
screenshots
|
|
12
|
+
fresh_env
|
|
13
|
+
webops
|
|
14
|
+
networkx-3.6.1-py3-none-any
|
|
15
|
+
recordings
|
|
16
|
+
oferteo_firmy.txt
|
|
17
|
+
.idea
|
|
18
|
+
.gguf
|
|
19
|
+
*.gguf
|
|
20
|
+
.projektor
|
|
21
|
+
test-env
|
|
22
|
+
push-e
|
|
23
|
+
publish-env
|
|
24
|
+
nlp2cmd-repo
|
|
25
|
+
.nlp2cmd/
|
|
26
|
+
# Byte-compiled / optimized / DLL files
|
|
27
|
+
__pycache__/
|
|
28
|
+
*.py[cod]
|
|
29
|
+
*$py.class
|
|
30
|
+
|
|
31
|
+
# C extensions
|
|
32
|
+
*.so
|
|
33
|
+
|
|
34
|
+
# Distribution / packaging
|
|
35
|
+
.Python
|
|
36
|
+
build/
|
|
37
|
+
develop-eggs/
|
|
38
|
+
dist/
|
|
39
|
+
downloads/
|
|
40
|
+
eggs/
|
|
41
|
+
.eggs/
|
|
42
|
+
lib/
|
|
43
|
+
lib64/
|
|
44
|
+
parts/
|
|
45
|
+
sdist/
|
|
46
|
+
var/
|
|
47
|
+
wheels/
|
|
48
|
+
share/python-wheels/
|
|
49
|
+
*.egg-info/
|
|
50
|
+
.installed.cfg
|
|
51
|
+
*.egg
|
|
52
|
+
MANIFEST
|
|
53
|
+
|
|
54
|
+
# PyInstaller
|
|
55
|
+
*.manifest
|
|
56
|
+
*.spec
|
|
57
|
+
|
|
58
|
+
# Installer logs
|
|
59
|
+
pip-log.txt
|
|
60
|
+
pip-delete-this-directory.txt
|
|
61
|
+
|
|
62
|
+
# Unit test / coverage reports
|
|
63
|
+
htmlcov/
|
|
64
|
+
.tox/
|
|
65
|
+
.nox/
|
|
66
|
+
.coverage
|
|
67
|
+
.coverage.*
|
|
68
|
+
.cache
|
|
69
|
+
nosetests.xml
|
|
70
|
+
coverage.xml
|
|
71
|
+
*.cover
|
|
72
|
+
*.py,cover
|
|
73
|
+
.hypothesis/
|
|
74
|
+
.pytest_cache/
|
|
75
|
+
cover/
|
|
76
|
+
|
|
77
|
+
# Translations
|
|
78
|
+
*.mo
|
|
79
|
+
*.pot
|
|
80
|
+
|
|
81
|
+
# Django stuff:
|
|
82
|
+
*.log
|
|
83
|
+
local_settings.py
|
|
84
|
+
db.sqlite3
|
|
85
|
+
db.sqlite3-journal
|
|
86
|
+
|
|
87
|
+
# Flask stuff:
|
|
88
|
+
instance/
|
|
89
|
+
.webassets-cache
|
|
90
|
+
|
|
91
|
+
# Scrapy stuff:
|
|
92
|
+
.scrapy
|
|
93
|
+
|
|
94
|
+
# Sphinx documentation
|
|
95
|
+
docs/_build/
|
|
96
|
+
|
|
97
|
+
# PyBuilder
|
|
98
|
+
.pybuilder/
|
|
99
|
+
target/
|
|
100
|
+
|
|
101
|
+
# Jupyter Notebook
|
|
102
|
+
.ipynb_checkpoints
|
|
103
|
+
|
|
104
|
+
# IPython
|
|
105
|
+
profile_default/
|
|
106
|
+
ipython_config.py
|
|
107
|
+
|
|
108
|
+
# pyenv
|
|
109
|
+
.python-version
|
|
110
|
+
|
|
111
|
+
# pipenv
|
|
112
|
+
Pipfile.lock
|
|
113
|
+
|
|
114
|
+
# poetry
|
|
115
|
+
poetry.lock
|
|
116
|
+
|
|
117
|
+
# pdm
|
|
118
|
+
.pdm.toml
|
|
119
|
+
.pdm-python
|
|
120
|
+
.pdm-build/
|
|
121
|
+
|
|
122
|
+
# PEP 582
|
|
123
|
+
__pypackages__/
|
|
124
|
+
|
|
125
|
+
# Celery stuff
|
|
126
|
+
celerybeat-schedule
|
|
127
|
+
celerybeat.pid
|
|
128
|
+
|
|
129
|
+
# SageMath parsed files
|
|
130
|
+
*.sage.py
|
|
131
|
+
|
|
132
|
+
# Environments
|
|
133
|
+
.env
|
|
134
|
+
.venv
|
|
135
|
+
env/
|
|
136
|
+
venv/
|
|
137
|
+
ENV/
|
|
138
|
+
env.bak/
|
|
139
|
+
venv.bak/
|
|
140
|
+
|
|
141
|
+
# Spyder project settings
|
|
142
|
+
.spyderproject
|
|
143
|
+
.spyproject
|
|
144
|
+
|
|
145
|
+
# Rope project settings
|
|
146
|
+
.ropeproject
|
|
147
|
+
|
|
148
|
+
# mkdocs documentation
|
|
149
|
+
/site
|
|
150
|
+
|
|
151
|
+
# mypy
|
|
152
|
+
.mypy_cache/
|
|
153
|
+
.dmypy.json
|
|
154
|
+
dmypy.json
|
|
155
|
+
|
|
156
|
+
# Pyre type checker
|
|
157
|
+
.pyre/
|
|
158
|
+
|
|
159
|
+
# pytype static type analyzer
|
|
160
|
+
.pytype/
|
|
161
|
+
|
|
162
|
+
# Cython debug symbols
|
|
163
|
+
cython_debug/
|
|
164
|
+
|
|
165
|
+
# IDE
|
|
166
|
+
.idea/
|
|
167
|
+
.vscode/
|
|
168
|
+
*.swp
|
|
169
|
+
*.swo
|
|
170
|
+
*~
|
|
171
|
+
|
|
172
|
+
# OS
|
|
173
|
+
.DS_Store
|
|
174
|
+
Thumbs.db
|
|
175
|
+
|
|
176
|
+
# Project specific
|
|
177
|
+
*.bak
|
|
178
|
+
*.backup
|
|
179
|
+
reports/
|
|
180
|
+
*.json.bak
|
|
181
|
+
env-report.json
|
|
182
|
+
|
|
183
|
+
# Secrets
|
|
184
|
+
.env.local
|
|
185
|
+
.env.*.local
|
|
186
|
+
secrets/
|
|
187
|
+
credentials/
|
|
188
|
+
|
|
189
|
+
# Separate projects
|
|
190
|
+
webops/
|
|
191
|
+
|
|
192
|
+
# C extensions
|
|
193
|
+
*.so
|
|
194
|
+
|
|
195
|
+
# Distribution / packaging
|
|
196
|
+
.Python
|
|
197
|
+
build/
|
|
198
|
+
develop-eggs/
|
|
199
|
+
dist/
|
|
200
|
+
downloads/
|
|
201
|
+
eggs/
|
|
202
|
+
.eggs/
|
|
203
|
+
lib/
|
|
204
|
+
lib64/
|
|
205
|
+
parts/
|
|
206
|
+
sdist/
|
|
207
|
+
var/
|
|
208
|
+
wheels/
|
|
209
|
+
share/python-wheels/
|
|
210
|
+
*.egg-info/
|
|
211
|
+
.installed.cfg
|
|
212
|
+
*.egg
|
|
213
|
+
MANIFEST
|
|
214
|
+
|
|
215
|
+
# PyInstaller
|
|
216
|
+
# Usually these files are written by a python script from a template
|
|
217
|
+
# before PyInstaller builds the exe, so as to inject date/other infos into it.
|
|
218
|
+
*.manifest
|
|
219
|
+
*.spec
|
|
220
|
+
|
|
221
|
+
# Installer logs
|
|
222
|
+
pip-log.txt
|
|
223
|
+
pip-delete-this-directory.txt
|
|
224
|
+
|
|
225
|
+
# Unit test / coverage reports
|
|
226
|
+
htmlcov/
|
|
227
|
+
.tox/
|
|
228
|
+
.nox/
|
|
229
|
+
.coverage
|
|
230
|
+
.coverage.*
|
|
231
|
+
.cache
|
|
232
|
+
nosetests.xml
|
|
233
|
+
coverage.xml
|
|
234
|
+
*.cover
|
|
235
|
+
*.py.cover
|
|
236
|
+
.hypothesis/
|
|
237
|
+
.pytest_cache/
|
|
238
|
+
cover/
|
|
239
|
+
|
|
240
|
+
# Translations
|
|
241
|
+
*.mo
|
|
242
|
+
*.pot
|
|
243
|
+
|
|
244
|
+
# Django stuff:
|
|
245
|
+
*.log
|
|
246
|
+
local_settings.py
|
|
247
|
+
db.sqlite3
|
|
248
|
+
db.sqlite3-journal
|
|
249
|
+
|
|
250
|
+
# Flask stuff:
|
|
251
|
+
instance/
|
|
252
|
+
.webassets-cache
|
|
253
|
+
|
|
254
|
+
# Scrapy stuff:
|
|
255
|
+
.scrapy
|
|
256
|
+
|
|
257
|
+
# Sphinx documentation
|
|
258
|
+
docs/_build/
|
|
259
|
+
|
|
260
|
+
# PyBuilder
|
|
261
|
+
.pybuilder/
|
|
262
|
+
target/
|
|
263
|
+
|
|
264
|
+
# Jupyter Notebook
|
|
265
|
+
.ipynb_checkpoints
|
|
266
|
+
|
|
267
|
+
# IPython
|
|
268
|
+
profile_default/
|
|
269
|
+
ipython_config.py
|
|
270
|
+
|
|
271
|
+
# pyenv
|
|
272
|
+
# For a library or package, you might want to ignore these files since the code is
|
|
273
|
+
# intended to run in multiple environments; otherwise, check them in:
|
|
274
|
+
# .python-version
|
|
275
|
+
|
|
276
|
+
# pipenv
|
|
277
|
+
# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
|
|
278
|
+
# However, in case of collaboration, if having platform-specific dependencies or dependencies
|
|
279
|
+
# having no cross-platform support, pipenv may install dependencies that don't work, or not
|
|
280
|
+
# install all needed dependencies.
|
|
281
|
+
# Pipfile.lock
|
|
282
|
+
|
|
283
|
+
# UV
|
|
284
|
+
# Similar to Pipfile.lock, it is generally recommended to include uv.lock in version control.
|
|
285
|
+
# This is especially recommended for binary packages to ensure reproducibility, and is more
|
|
286
|
+
# commonly ignored for libraries.
|
|
287
|
+
# uv.lock
|
|
288
|
+
|
|
289
|
+
# poetry
|
|
290
|
+
# Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control.
|
|
291
|
+
# This is especially recommended for binary packages to ensure reproducibility, and is more
|
|
292
|
+
# commonly ignored for libraries.
|
|
293
|
+
# https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control
|
|
294
|
+
# poetry.lock
|
|
295
|
+
# poetry.toml
|
|
296
|
+
|
|
297
|
+
# pdm
|
|
298
|
+
# Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control.
|
|
299
|
+
# pdm recommends including project-wide configuration in pdm.toml, but excluding .pdm-python.
|
|
300
|
+
# https://pdm-project.org/en/latest/usage/project/#working-with-version-control
|
|
301
|
+
# pdm.lock
|
|
302
|
+
# pdm.toml
|
|
303
|
+
.pdm-python
|
|
304
|
+
.pdm-build/
|
|
305
|
+
|
|
306
|
+
# pixi
|
|
307
|
+
# Similar to Pipfile.lock, it is generally recommended to include pixi.lock in version control.
|
|
308
|
+
# pixi.lock
|
|
309
|
+
# Pixi creates a virtual environment in the .pixi directory, just like venv module creates one
|
|
310
|
+
# in the .venv directory. It is recommended not to include this directory in version control.
|
|
311
|
+
.pixi
|
|
312
|
+
|
|
313
|
+
# PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm
|
|
314
|
+
__pypackages__/
|
|
315
|
+
|
|
316
|
+
# Celery stuff
|
|
317
|
+
celerybeat-schedule
|
|
318
|
+
celerybeat.pid
|
|
319
|
+
|
|
320
|
+
# Redis
|
|
321
|
+
*.rdb
|
|
322
|
+
*.aof
|
|
323
|
+
*.pid
|
|
324
|
+
|
|
325
|
+
# RabbitMQ
|
|
326
|
+
mnesia/
|
|
327
|
+
rabbitmq/
|
|
328
|
+
rabbitmq-data/
|
|
329
|
+
|
|
330
|
+
# ActiveMQ
|
|
331
|
+
activemq-data/
|
|
332
|
+
|
|
333
|
+
# SageMath parsed files
|
|
334
|
+
*.sage.py
|
|
335
|
+
|
|
336
|
+
# Environments
|
|
337
|
+
.env
|
|
338
|
+
.envrc
|
|
339
|
+
.venv
|
|
340
|
+
env/
|
|
341
|
+
venv/
|
|
342
|
+
ENV/
|
|
343
|
+
env.bak/
|
|
344
|
+
venv.bak/
|
|
345
|
+
|
|
346
|
+
# Spyder project settings
|
|
347
|
+
.spyderproject
|
|
348
|
+
.spyproject
|
|
349
|
+
|
|
350
|
+
# Rope project settings
|
|
351
|
+
.ropeproject
|
|
352
|
+
|
|
353
|
+
# mkdocs documentation
|
|
354
|
+
/site
|
|
355
|
+
|
|
356
|
+
# mypy
|
|
357
|
+
.mypy_cache/
|
|
358
|
+
.dmypy.json
|
|
359
|
+
dmypy.json
|
|
360
|
+
|
|
361
|
+
# Pyre type checker
|
|
362
|
+
.pyre/
|
|
363
|
+
|
|
364
|
+
# pytype static type analyzer
|
|
365
|
+
.pytype/
|
|
366
|
+
|
|
367
|
+
# Cython debug symbols
|
|
368
|
+
cython_debug/
|
|
369
|
+
|
|
370
|
+
# PyCharm
|
|
371
|
+
# JetBrains specific template is maintained in a separate JetBrains.gitignore that can
|
|
372
|
+
# be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
|
|
373
|
+
# and can be added to the global gitignore or merged into this file. For a more nuclear
|
|
374
|
+
# option (not recommended) you can uncomment the following to ignore the entire idea folder.
|
|
375
|
+
# .idea/
|
|
376
|
+
|
|
377
|
+
# Abstra
|
|
378
|
+
# Abstra is an AI-powered process automation framework.
|
|
379
|
+
# Ignore directories containing user credentials, local state, and settings.
|
|
380
|
+
# Learn more at https://abstra.io/docs
|
|
381
|
+
.abstra/
|
|
382
|
+
|
|
383
|
+
# Visual Studio Code
|
|
384
|
+
# Visual Studio Code specific template is maintained in a separate VisualStudioCode.gitignore
|
|
385
|
+
# that can be found at https://github.com/github/gitignore/blob/main/Global/VisualStudioCode.gitignore
|
|
386
|
+
# and can be added to the global gitignore or merged into this file. However, if you prefer,
|
|
387
|
+
# you could uncomment the following to ignore the entire vscode folder
|
|
388
|
+
# .vscode/
|
|
389
|
+
# Temporary file for partial code execution
|
|
390
|
+
tempCodeRunnerFile.py
|
|
391
|
+
|
|
392
|
+
# Ruff stuff:
|
|
393
|
+
.ruff_cache/
|
|
394
|
+
|
|
395
|
+
# PyPI configuration file
|
|
396
|
+
.pypirc
|
|
397
|
+
|
|
398
|
+
# Marimo
|
|
399
|
+
marimo/_static/
|
|
400
|
+
marimo/_lsp/
|
|
401
|
+
__marimo__/
|
|
402
|
+
|
|
403
|
+
# Streamlit
|
|
404
|
+
.streamlit/secrets.toml
|
vql-0.1.4/CHANGELOG.md
ADDED
|
@@ -0,0 +1,255 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to this project will be documented in this file.
|
|
4
|
+
|
|
5
|
+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
|
+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
|
+
|
|
8
|
+
## [0.1.10] - 2026-06-09
|
|
9
|
+
|
|
10
|
+
### Fixed
|
|
11
|
+
- Fix unused-imports issues (ticket-8e666f5d)
|
|
12
|
+
- Fix ai-boilerplate issues (ticket-e0e0ab6d)
|
|
13
|
+
- Fix unused-imports issues (ticket-057cf9dc)
|
|
14
|
+
- Fix ai-boilerplate issues (ticket-a6d9ecee)
|
|
15
|
+
- Fix string-concat issues (ticket-3e3bfd3b)
|
|
16
|
+
- Fix unused-imports issues (ticket-19c95c44)
|
|
17
|
+
- Fix unused-imports issues (ticket-efcbfb1e)
|
|
18
|
+
- Fix unused-imports issues (ticket-daf72a7d)
|
|
19
|
+
- Fix unused-imports issues (ticket-6da2a8ff)
|
|
20
|
+
- Fix ai-boilerplate issues (ticket-3990d59d)
|
|
21
|
+
- Fix unused-imports issues (ticket-bc82e83e)
|
|
22
|
+
- Fix string-concat issues (ticket-abf26244)
|
|
23
|
+
- Fix unused-imports issues (ticket-c0d7a135)
|
|
24
|
+
- Fix string-concat issues (ticket-ff5032fd)
|
|
25
|
+
- Fix unused-imports issues (ticket-576bab90)
|
|
26
|
+
- Fix unused-imports issues (ticket-decf1bdf)
|
|
27
|
+
- Fix magic-numbers issues (ticket-af63ef32)
|
|
28
|
+
- Fix string-concat issues (ticket-6b15430f)
|
|
29
|
+
- Fix unused-imports issues (ticket-8a867444)
|
|
30
|
+
- Fix unused-imports issues (ticket-96185ba6)
|
|
31
|
+
- Fix magic-numbers issues (ticket-0f7890e8)
|
|
32
|
+
- Fix unused-imports issues (ticket-bf838267)
|
|
33
|
+
- Fix unused-imports issues (ticket-d3cdea36)
|
|
34
|
+
- Fix magic-numbers issues (ticket-f4a4b7eb)
|
|
35
|
+
- Fix unused-imports issues (ticket-8a571a4a)
|
|
36
|
+
- Fix magic-numbers issues (ticket-43fe4d81)
|
|
37
|
+
- Fix unused-imports issues (ticket-eee4c1b8)
|
|
38
|
+
- Fix ai-boilerplate issues (ticket-7d1ffd9b)
|
|
39
|
+
- Fix unused-imports issues (ticket-d63d2189)
|
|
40
|
+
- Fix string-concat issues (ticket-c3de3b8f)
|
|
41
|
+
- Fix unused-imports issues (ticket-f1f5c59f)
|
|
42
|
+
- Fix magic-numbers issues (ticket-48bfab49)
|
|
43
|
+
- Fix unused-imports issues (ticket-8a25b787)
|
|
44
|
+
- Fix magic-numbers issues (ticket-d2c1408e)
|
|
45
|
+
- Fix string-concat issues (ticket-c1c2051c)
|
|
46
|
+
- Fix unused-imports issues (ticket-e87661a6)
|
|
47
|
+
- Fix magic-numbers issues (ticket-26e77a10)
|
|
48
|
+
- Fix unused-imports issues (ticket-1fd2d0c8)
|
|
49
|
+
- Fix magic-numbers issues (ticket-5c52a68e)
|
|
50
|
+
- Fix ai-boilerplate issues (ticket-81f97908)
|
|
51
|
+
- Fix unused-imports issues (ticket-eb25a27a)
|
|
52
|
+
- Fix magic-numbers issues (ticket-83cc4d96)
|
|
53
|
+
- Fix unused-imports issues (ticket-4129ca21)
|
|
54
|
+
- Fix unused-imports issues (ticket-a873a55c)
|
|
55
|
+
- Fix string-concat issues (ticket-6297287f)
|
|
56
|
+
- Fix unused-imports issues (ticket-de4c3522)
|
|
57
|
+
- Fix magic-numbers issues (ticket-17e6563c)
|
|
58
|
+
- Fix string-concat issues (ticket-28425684)
|
|
59
|
+
- Fix unused-imports issues (ticket-427bd01d)
|
|
60
|
+
- Fix magic-numbers issues (ticket-faea61b1)
|
|
61
|
+
- Fix string-concat issues (ticket-45bc2485)
|
|
62
|
+
- Fix unused-imports issues (ticket-21e70bbe)
|
|
63
|
+
- Fix magic-numbers issues (ticket-a19a8d81)
|
|
64
|
+
- Fix unused-imports issues (ticket-d13efe8b)
|
|
65
|
+
- Fix ai-boilerplate issues (ticket-c09ede63)
|
|
66
|
+
- Fix unused-imports issues (ticket-c44d7d5e)
|
|
67
|
+
- Fix unused-imports issues (ticket-3a99c323)
|
|
68
|
+
- Fix ai-boilerplate issues (ticket-3bb4df62)
|
|
69
|
+
- Fix unused-imports issues (ticket-4d166942)
|
|
70
|
+
- Fix unused-imports issues (ticket-e57a5c56)
|
|
71
|
+
- Fix ai-boilerplate issues (ticket-436cd286)
|
|
72
|
+
- Fix unused-imports issues (ticket-dc4069d3)
|
|
73
|
+
- Fix magic-numbers issues (ticket-d75fa5c9)
|
|
74
|
+
- Fix ai-boilerplate issues (ticket-a5ef0b2d)
|
|
75
|
+
- Fix unused-imports issues (ticket-8d4aa7f8)
|
|
76
|
+
- Fix magic-numbers issues (ticket-d4f17b07)
|
|
77
|
+
- Fix unused-imports issues (ticket-e3990176)
|
|
78
|
+
- Fix magic-numbers issues (ticket-38166679)
|
|
79
|
+
- Fix unused-imports issues (ticket-806125af)
|
|
80
|
+
- Fix ai-boilerplate issues (ticket-f6b9f81a)
|
|
81
|
+
- Fix string-concat issues (ticket-cd9d2ee1)
|
|
82
|
+
- Fix unused-imports issues (ticket-0b9a1932)
|
|
83
|
+
- Fix unused-imports issues (ticket-eb9ebfae)
|
|
84
|
+
- Fix unused-imports issues (ticket-ae4fef90)
|
|
85
|
+
- Fix magic-numbers issues (ticket-47bc9ec0)
|
|
86
|
+
- Fix ai-boilerplate issues (ticket-32e8ee8a)
|
|
87
|
+
- Fix unused-imports issues (ticket-b9f60342)
|
|
88
|
+
- Fix magic-numbers issues (ticket-eae11564)
|
|
89
|
+
- Fix unused-imports issues (ticket-d05b0eac)
|
|
90
|
+
- Fix magic-numbers issues (ticket-4bd3e952)
|
|
91
|
+
- Fix string-concat issues (ticket-08384f5b)
|
|
92
|
+
- Fix unused-imports issues (ticket-c5168216)
|
|
93
|
+
- Fix unused-imports issues (ticket-f83889cc)
|
|
94
|
+
- Fix unused-imports issues (ticket-768744b5)
|
|
95
|
+
- Fix string-concat issues (ticket-bfb11370)
|
|
96
|
+
- Fix unused-imports issues (ticket-85b9f059)
|
|
97
|
+
- Fix magic-numbers issues (ticket-133bcadd)
|
|
98
|
+
- Fix unused-imports issues (ticket-302606cf)
|
|
99
|
+
- Fix string-concat issues (ticket-45576b5a)
|
|
100
|
+
- Fix unused-imports issues (ticket-dc3a69a1)
|
|
101
|
+
- Fix magic-numbers issues (ticket-aa4961c7)
|
|
102
|
+
- Fix unused-imports issues (ticket-fbfe0729)
|
|
103
|
+
- Fix magic-numbers issues (ticket-54003a1a)
|
|
104
|
+
- Fix ai-boilerplate issues (ticket-2851b104)
|
|
105
|
+
- Fix unused-imports issues (ticket-2884aeb6)
|
|
106
|
+
- Fix unused-imports issues (ticket-6a5bf3de)
|
|
107
|
+
- Fix magic-numbers issues (ticket-18d718a2)
|
|
108
|
+
- Fix unused-imports issues (ticket-7efa2b0b)
|
|
109
|
+
- Fix magic-numbers issues (ticket-aa07c23c)
|
|
110
|
+
- Fix llm-generated-code issues (ticket-3b8e7d2c)
|
|
111
|
+
|
|
112
|
+
## [Unreleased]
|
|
113
|
+
|
|
114
|
+
### Added
|
|
115
|
+
- **img2svg[vtracer]** — `trace_vtracer`, CLI `--method vtracer` (kolorowe ścieżki SVG)
|
|
116
|
+
- **PathGenerator** — render `shape_type=path` z atrybutu `d` (vtracer/OpenCV roundtrip)
|
|
117
|
+
- **tests/test_photo_roundtrip.py** — NL roundtrip, img2svg background, vtracer, render PNG
|
|
118
|
+
- **make test-roundtrip** — pytest + `examples/photo-roundtrip-test.py`
|
|
119
|
+
|
|
120
|
+
### Changed
|
|
121
|
+
- **img2svg** — `trace_to_vql_program` ustawia `scene.background` z dominującego regionu
|
|
122
|
+
- **SVGRenderer** — tło z `program.scene.background` (nie hardcoded white)
|
|
123
|
+
- **parse_svg_path** — `center=False` zachowuje współrzędne SVG (bez skali ×100)
|
|
124
|
+
- **install-dev.sh** — `img2svg[vectorize]` (opencv + vtracer)
|
|
125
|
+
|
|
126
|
+
### Docs
|
|
127
|
+
- **photo-roundtrip.md** — pełna dokumentacja: klasy A/B/C, wyniki MSE, macierz, biblioteki, CI
|
|
128
|
+
- **photo-roundtrip-sample.vql.json** — przykładowy fragment VQLProgram
|
|
129
|
+
- **examples/README.md** — sekcja photo roundtrip + `make test-roundtrip`
|
|
130
|
+
- **examples/photo-roundtrip-test.py** — próbki product/natural/metadata_only
|
|
131
|
+
- **vdisplay-imgl-automation.md** — vdisplay → imgl → VQL → LLM (zalecana ścieżka capture)
|
|
132
|
+
- README, window-pipeline, desktop-capture, getting-started — dwie ścieżki capture (imgl vs uri2vql)
|
|
133
|
+
|
|
134
|
+
### Planned
|
|
135
|
+
- REST `POST /v1/img2svg/*` — mirror uri2img2svg
|
|
136
|
+
- OCR label → `ui_elements.metadata.label` (z auto-OCR / imgl)
|
|
137
|
+
- CI: `img2nl-vql-flow.sh` w pipeline (synthetic PNG, bez imgl)
|
|
138
|
+
|
|
139
|
+
## [0.1.4] - 2026-06-09
|
|
140
|
+
|
|
141
|
+
### Docs
|
|
142
|
+
- Update CHANGELOG.md
|
|
143
|
+
- Update README.md
|
|
144
|
+
- Update SUMD.md
|
|
145
|
+
- Update SUMR.md
|
|
146
|
+
- Update TODO.md
|
|
147
|
+
- Update docs/README.md
|
|
148
|
+
- Update docs/desktop-capture.md
|
|
149
|
+
- Update docs/getting-started.md
|
|
150
|
+
- Update docs/packages.md
|
|
151
|
+
- Update docs/photo-roundtrip-sample.vql.json
|
|
152
|
+
- ... and 7 more files
|
|
153
|
+
|
|
154
|
+
### Test
|
|
155
|
+
- Update testql-scenarios/generated-cli-tests.testql.toon.yaml
|
|
156
|
+
- Update testql-scenarios/generated-from-pytests.testql.toon.yaml
|
|
157
|
+
- Update tests/test_photo_roundtrip.py
|
|
158
|
+
- Update tests/test_vql.py
|
|
159
|
+
|
|
160
|
+
### Other
|
|
161
|
+
- Update Makefile
|
|
162
|
+
- Update app.doql.less
|
|
163
|
+
- Update app.vql.events.pb
|
|
164
|
+
- Update examples/photo-roundtrip-test.py
|
|
165
|
+
- Update install-dev.sh
|
|
166
|
+
- Update packages/img2svg/pyproject.toml
|
|
167
|
+
- Update packages/img2svg/src/img2svg/__init__.py
|
|
168
|
+
- Update packages/img2svg/src/img2svg/cli.py
|
|
169
|
+
- Update packages/img2svg/src/img2svg/svg_emit.py
|
|
170
|
+
- Update packages/img2svg/src/img2svg/to_vql.py
|
|
171
|
+
- ... and 21 more files
|
|
172
|
+
|
|
173
|
+
## [0.1.3] - 2026-06-09
|
|
174
|
+
|
|
175
|
+
### Added
|
|
176
|
+
- **SUMD.md** — auto-opis projektu (metadata, DOQL, testql, call graph, 151 mod)
|
|
177
|
+
- **testql-scenarios/** — kontrakty CLI (`generated-cli-tests`) i integracji pytest (`generated-from-pytests`)
|
|
178
|
+
- **app.doql.less** — deklaracja DOQL (workflows: install, dev, build, test, lint, fmt)
|
|
179
|
+
- **goal.yaml** — semver, conventional commits, keep-a-changelog
|
|
180
|
+
- **uri2img2svg v0.1** — `img2svg://vectorize|svg|vql` URI + CLI ([docs/img2svg-uri.md](docs/img2svg-uri.md))
|
|
181
|
+
- **dsl2img2svg v0.1** — `VECTORIZE`, `TO_VQL`, `QUERY img2svg://` DSL verbs
|
|
182
|
+
- **img2vql** — auto-OCR fallback (rapidocr → imgl) when `text_likelihood` but no OCR text; extra `[ocr]`
|
|
183
|
+
- **mcp2vql** — `vql_diagnose_window` tool (diagnose + optional save)
|
|
184
|
+
- **rest2vql** — `POST /v1/window/{detect,compare,refresh,diagnose,analyze,adopt,summary}` ([docs/rest-window-api.md](docs/rest-window-api.md))
|
|
185
|
+
- **mcp2vql** — MCP tools: `vql_detect_ui`, `vql_compare_window`, `vql_refresh_window_metadata`
|
|
186
|
+
- **uri2vql** — `capture-and-analyze` CLI (interactive capture + analyze + optional diagnose --save)
|
|
187
|
+
- **vql.adopt.window** — `merge_regions=True` in `screenshot_to_program` (fewer redundant grid cells)
|
|
188
|
+
- **img2vql** — `scene.relations` with `contains` (window > panel > button nesting)
|
|
189
|
+
- **uri2vql** — `vql://window/summary?live=1` refreshes metadata before summary
|
|
190
|
+
- **img2vql v0.2** — UI detection: windows, panels, titlebar, toolbar, buttons with pixel bboxes
|
|
191
|
+
- **img2vql** — `detect`, `adopt`, `describe_ui_layout`, layer `ui_elements` in VQL
|
|
192
|
+
- **img2svg v0.1** — raster → SVG / VQL (`regions` color merge, `contours` via OpenCV)
|
|
193
|
+
- **uri2vql** — CLI: `detect-window`, `adopt-ui`, `adopt-imgl`; URI: `window/detect`, `window/adopt`, `window/imgl`
|
|
194
|
+
- **uri2vql** — `analyze-window --interactive` for GNOME/Wayland portal capture
|
|
195
|
+
- **vql.adopt.window** — blank PNG rejection in `analyze_screenshot`
|
|
196
|
+
- **docs/** — getting-started, desktop-capture, window-pipeline, window-uri, packages, architecture
|
|
197
|
+
- **examples/** — `live-capture-test.sh` (interactive capture), `img2nl-vql-flow.sh` (fingerprint flow)
|
|
198
|
+
- **img2vql** — fingerprint compare, metadata refresh, diagnose `--save`
|
|
199
|
+
- **uri2vql** — `compare-window`, `refresh-window`; URI `window/compare`, `window/refresh`
|
|
200
|
+
|
|
201
|
+
### Changed
|
|
202
|
+
- Version bump **0.1.2 → 0.1.3** (`VERSION`, `pyproject.toml`)
|
|
203
|
+
- `requires-python` **>=3.10** (było dokumentowane jako 3.9+)
|
|
204
|
+
- README — sekcja Development (Makefile, project.sh), link SUMD, metryki projektu
|
|
205
|
+
- `packages/README.md` — img2vql, img2svg, extended mermaid diagram
|
|
206
|
+
- `install-dev.sh` — installs img2svg; img2vql when img2nl present
|
|
207
|
+
- `Makefile` — PACKAGES includes img2svg, uri2img2svg, dsl2img2svg
|
|
208
|
+
|
|
209
|
+
### Docs
|
|
210
|
+
- `docs/` — pełny indeks (9 plików), MCP tools, interfejsy
|
|
211
|
+
- `examples/README.md` — indeks skryptów + zmienne env
|
|
212
|
+
- `examples/full-pipeline.sh` — end-to-end demo
|
|
213
|
+
- `TODO.md` — mapa interfejsów + następne kroki (zsynchronizowane z SUMD)
|
|
214
|
+
- Package READMEs: img2vql, img2svg, uri2img2svg, dsl2img2svg
|
|
215
|
+
|
|
216
|
+
## [0.1.2] - 2026-06-08
|
|
217
|
+
|
|
218
|
+
### Docs
|
|
219
|
+
- Update README.md
|
|
220
|
+
|
|
221
|
+
### Other
|
|
222
|
+
- Update app.vql.events.pb
|
|
223
|
+
|
|
224
|
+
## [0.1.1] - 2026-06-08
|
|
225
|
+
|
|
226
|
+
### Docs
|
|
227
|
+
- Update README.md
|
|
228
|
+
- Update packages/CONTROL_LAYER_PROMPT.template.md
|
|
229
|
+
- Update packages/README.md
|
|
230
|
+
|
|
231
|
+
### Test
|
|
232
|
+
- Update tests/test_vql.py
|
|
233
|
+
|
|
234
|
+
### Other
|
|
235
|
+
- Update .gitignore
|
|
236
|
+
- Update Makefile
|
|
237
|
+
- Update VERSION
|
|
238
|
+
- Update app.vql.events.pb
|
|
239
|
+
- Update install-dev.sh
|
|
240
|
+
- Update packages/cli2vql/pyproject.toml
|
|
241
|
+
- Update packages/cli2vql/src/cli2vql/__init__.py
|
|
242
|
+
- Update packages/cli2vql/src/cli2vql/cli.py
|
|
243
|
+
- Update packages/dsl2vql/proto/dsl2vql/v1/command.proto
|
|
244
|
+
- Update packages/dsl2vql/proto/dsl2vql/v1/result.proto
|
|
245
|
+
- ... and 46 more files
|
|
246
|
+
|
|
247
|
+
## [0.0.1] - 2026-06-08
|
|
248
|
+
|
|
249
|
+
### Other
|
|
250
|
+
- Update .idea/.gitignore
|
|
251
|
+
- Update .idea/inspectionProfiles/Project_Default.xml
|
|
252
|
+
- Update .idea/inspectionProfiles/profiles_settings.xml
|
|
253
|
+
- Update .idea/modules.xml
|
|
254
|
+
- Update .idea/vcs.xml
|
|
255
|
+
- Update .idea/vql.iml
|