fullbleed 2.2.5__tar.gz → 2.3.0__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.
- {fullbleed-2.2.5 → fullbleed-2.3.0}/Cargo.lock +1 -1
- {fullbleed-2.2.5 → fullbleed-2.3.0}/Cargo.toml +1 -1
- fullbleed-2.2.5/README.md → fullbleed-2.3.0/PKG-INFO +85 -4
- fullbleed-2.2.5/PKG-INFO → fullbleed-2.3.0/README.md +42 -41
- fullbleed-2.3.0/fullbleed-agent-contract.json +6094 -0
- fullbleed-2.3.0/llms.txt +66 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/pyproject.toml +36 -3
- fullbleed-2.3.0/python/fullbleed_cli/agent.py +161 -0
- fullbleed-2.3.0/python/fullbleed_cli/agent_acceptance.py +499 -0
- fullbleed-2.3.0/python/fullbleed_cli/agent_contract.py +1101 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/cli.py +464 -34
- fullbleed-2.3.0/python/fullbleed_cli/mcp.py +579 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold.py +82 -1
- fullbleed-2.3.0/python/fullbleed_cli/scaffold_templates/init/AGENTS.md +14 -0
- fullbleed-2.3.0/skills/fullbleed/SKILL.md +37 -0
- fullbleed-2.3.0/skills/fullbleed/agents/openai.yaml +4 -0
- fullbleed-2.3.0/skills/fullbleed/references/compliance.md +31 -0
- fullbleed-2.3.0/skills/fullbleed/references/selection.md +21 -0
- fullbleed-2.3.0/skills/fullbleed/references/workflows.md +66 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/COPYRIGHT +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/FONT_LICENSE_AUDIT.json +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/FONT_LICENSE_AUDIT.md +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/LICENSE +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/LICENSING.md +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/THIRD_PARTY_LICENSES.md +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/build.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/build_backend/fullbleed_build_backend.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/crates/fullbleed_audit_contract/Cargo.lock +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/crates/fullbleed_audit_contract/Cargo.toml +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/crates/fullbleed_audit_contract/LICENSE +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/crates/fullbleed_audit_contract/README.md +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/crates/fullbleed_audit_contract/specs/fullbleed.audit_registry.v1.yaml +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/crates/fullbleed_audit_contract/specs/section508_html_registry.v1.yaml +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/crates/fullbleed_audit_contract/specs/wcag20aa_registry.v1.yaml +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/crates/fullbleed_audit_contract/src/json.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/crates/fullbleed_audit_contract/src/lib.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/crates/fullbleed_audit_contract/src/sha256.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/docs/specs/fullbleed.a11y.verify.v1.schema.json +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/docs/specs/fullbleed.audit_registry.v1.yaml +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/docs/specs/fullbleed.pmr.v1.schema.json +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/docs/specs/section508_html_registry.v1.yaml +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/docs/specs/wcag20aa_registry.v1.yaml +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed/__init__.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed/__main__.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed/_abi.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed/accessibility/__init__.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed/accessibility/engine.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed/accessibility/runtime.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed/accessibility/types.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed/audit_prototype.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed/audit_section508.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed/audit_wcag.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed/ui/__init__.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed/ui/accessibility.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed/ui/cav/__init__.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed/ui/cav/_core.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed/ui/cav/agency_letter.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed/ui/cav/court_motion_form.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed/ui/cav/declaration_form.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed/ui/cav/instruction_sheet.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed/ui/cav/investment_portfolio_report.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed/ui/cav/marriage_record.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed/ui/cav/profiles.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed/ui/cav/recorded_plat.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed/ui/cav/redaction_request_form.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed/ui/cav/warranty_deed.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed/ui/core.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed/ui/primitives.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed/ui/style.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_assets/__init__.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_assets/bootstrap.min.css +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_assets/fonts/Inter-Variable.ttf +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_assets/fonts/NotoSans-Regular.ttf +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_assets/fonts/NotoSansMath-Regular.ttf +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_assets/fonts/NotoSansSymbols-Regular.ttf +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_assets/fonts/NotoSansSymbols2-Regular.ttf +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_assets/icons/bootstrap-icons.svg +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/__init__.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/__main__.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/assets.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/cache.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/finalize.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/__init__.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/init/.gitignore +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/init/COMPLIANCE.md +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/init/SCAFFOLDING.md +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/init/components/__init__.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/init/components/body.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/init/components/fb_ui.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/init/components/footer.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/init/components/header.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/init/components/primitives.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/init/components/styles/body.css +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/init/components/styles/footer.css +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/init/components/styles/header.css +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/init/components/styles/primitives.css +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/init/report.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/init/styles/report.css +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/init/styles/tokens.css +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/new/accessible/README.md +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/new/accessible/output/.gitignore +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/new/accessible/output/.gitkeep +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/new/accessible/report.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/new/accessible/styles/report.css +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/new/accessible/vendor/fonts/Inter-Variable.ttf +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/new/invoice/output/.gitignore +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/new/invoice/output/.gitkeep +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/new/invoice/report.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/new/invoice/templates/invoice.css +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/new/invoice/templates/invoice.html +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/new/reference/COMPLIANCE.md +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/new/reference/README.md +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/new/reference/SCAFFOLDING.md +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/new/reference/assets/brand-mark.svg +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/new/reference/assets/reference-pattern.svg +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/new/reference/components/__init__.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/new/reference/components/appendix.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/new/reference/components/architecture.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/new/reference/components/cover.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/new/reference/components/data_pages.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/new/reference/components/fb_ui.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/new/reference/components/primitives.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/new/reference/components/styles/appendix.css +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/new/reference/components/styles/architecture.css +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/new/reference/components/styles/cover.css +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/new/reference/components/styles/data.css +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/new/reference/components/styles/primitives.css +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/new/reference/components/styles/visuals.css +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/new/reference/components/visuals.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/new/reference/data/reference.json +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/new/reference/output/.gitignore +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/new/reference/report.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/new/reference/styles/report.css +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/new/reference/styles/tokens.css +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/new/statement/output/.gitignore +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/new/statement/output/.gitkeep +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/new/statement/report.py +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/new/statement/templates/statement.css +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/python/fullbleed_cli/scaffold_templates/new/statement/templates/statement.html +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/assets.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/base64.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/canvas.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/css_native.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/css_queries.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/debug.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/doc_context.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/doc_template.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/error.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/finalize.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/flate_native.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/flowable.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/font.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/font_subset.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/frame.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/glyph_report.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/html.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/html_dom.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/html_entities.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/html_entities_0.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/html_entities_1.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/html_entities_2.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/html_entities_3.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/html_entities_4.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/html_entities_5.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/image_native.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/jit.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/jpeg_native.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/lib.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/math.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/metrics.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/native_shape.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/page_data.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/page_template.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/parallel.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/pdf.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/pdf_encodings.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/pdf_native.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/pdf_raster.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/pdfinspect.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/perf.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/plan.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/python/abi_exports.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/python.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/python_abi.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/raster.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/raster_native.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/sfnt.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/sfnt_cff.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/sfnt_outline.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/spill.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/style.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/svg.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/text_shape.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/types.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/unicode_data.rs +0 -0
- {fullbleed-2.2.5 → fullbleed-2.3.0}/src/xml.rs +0 -0
|
@@ -1,7 +1,52 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: fullbleed
|
|
3
|
+
Version: 2.3.0
|
|
4
|
+
Classifier: Development Status :: 5 - Production/Stable
|
|
5
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
6
|
+
Classifier: Operating System :: MacOS
|
|
7
|
+
Classifier: Operating System :: Microsoft :: Windows
|
|
8
|
+
Classifier: Operating System :: POSIX :: Linux
|
|
9
|
+
Classifier: Programming Language :: Rust
|
|
10
|
+
Classifier: Programming Language :: Python :: 3
|
|
11
|
+
Classifier: Programming Language :: Python :: 3 :: Only
|
|
12
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
13
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
14
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
15
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
16
|
+
Classifier: Programming Language :: Python :: 3.14
|
|
17
|
+
Classifier: Programming Language :: Python :: Implementation :: CPython
|
|
18
|
+
Classifier: Topic :: Office/Business
|
|
19
|
+
Classifier: Topic :: Office/Business :: Financial
|
|
20
|
+
Classifier: Topic :: Printing
|
|
21
|
+
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
22
|
+
Classifier: Topic :: Text Processing :: Markup :: HTML
|
|
23
|
+
Provides-Extra: api
|
|
24
|
+
License-File: LICENSE
|
|
25
|
+
License-File: COPYRIGHT
|
|
26
|
+
License-File: LICENSING.md
|
|
27
|
+
License-File: THIRD_PARTY_LICENSES.md
|
|
28
|
+
License-File: FONT_LICENSE_AUDIT.md
|
|
29
|
+
License-File: FONT_LICENSE_AUDIT.json
|
|
30
|
+
Summary: Deterministic Python PDF engine for reports, invoices, accessible documents, print-ready output, and compiled VDP
|
|
31
|
+
Keywords: pdf-generation,document-generation,html-to-pdf,python-pdf-engine,deterministic-pdf,reports,invoices,statements,forms,transactional-documents,vdp,variable-data-printing,accessible-pdf,pdf-ua,pdf-a,pdf-x,ai-agents,agentic-document-generation,mcp
|
|
32
|
+
Home-Page: https://fullbleed.dev
|
|
33
|
+
License-Expression: MIT
|
|
34
|
+
Requires-Python: >=3.10
|
|
35
|
+
Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM
|
|
36
|
+
Project-URL: Agent-Contract, https://github.com/fullbleed-engine/fullbleed-official/blob/master/fullbleed-agent-contract.json
|
|
37
|
+
Project-URL: Agent-Skill, https://github.com/fullbleed-engine/fullbleed-official/tree/master/skills/fullbleed
|
|
38
|
+
Project-URL: Documentation, https://github.com/fullbleed-engine/fullbleed-official#readme
|
|
39
|
+
Project-URL: Homepage, https://fullbleed.dev
|
|
40
|
+
Project-URL: Issues, https://github.com/fullbleed-engine/fullbleed-official/issues
|
|
41
|
+
Project-URL: MCP, https://github.com/fullbleed-engine/fullbleed-official/tree/master/packages/fullbleed-mcp
|
|
42
|
+
Project-URL: Repository, https://github.com/fullbleed-engine/fullbleed-official
|
|
43
|
+
|
|
1
44
|
<!-- SPDX-License-Identifier: MIT -->
|
|
2
|
-
# Fullbleed
|
|
45
|
+
# Fullbleed PDF Engine
|
|
46
|
+
|
|
47
|
+
Fullbleed PDF Engine is a deterministic, self-contained document-generation runtime for Python and Rust. It turns structured data plus static HTML/CSS into reports, invoices, statements, letters, forms, certificates, accessible PDFs, print-ready documents, and high-volume compiled VDP output—without a browser or system PDF stack.
|
|
3
48
|
|
|
4
|
-
|
|
49
|
+
It is designed for human developers, automation, and AI agents alike: the installed runtime exposes its exact version, capabilities, commands, schemas, compliance profiles, examples, limitations, and tool-selection boundary as a generated machine contract.
|
|
5
50
|
|
|
6
51
|
|
|
7
52
|
License: MIT.
|
|
@@ -10,16 +55,49 @@ License: MIT.
|
|
|
10
55
|
|
|
11
56
|
- **Install:** `pip install fullbleed`
|
|
12
57
|
- **Try:** `fullbleed init . && python report.py`
|
|
58
|
+
- **Discover:** `fullbleed agent-contract --format json`
|
|
13
59
|
- **Outputs:** `output/report.pdf`
|
|
14
60
|
- Deterministic + reproducible (`--repro-record` / `--repro-check`)
|
|
15
61
|
- Agent-safe JSON schemas (`--json-only`, `--schema`)
|
|
16
62
|
|
|
17
63
|
## Positioning
|
|
18
64
|
|
|
19
|
-
Fullbleed is a deterministic, offline-first document rendering engine for transactional/VDP pipelines (not a browser, not a hosted web-to-print SaaS).
|
|
65
|
+
Fullbleed is a deterministic, offline-first document rendering engine for structured print-document and transactional/VDP pipelines (not a browser, not a hosted web-to-print SaaS, and not a general editor for arbitrary existing PDF content).
|
|
20
66
|
|
|
21
67
|
HTML and CSS are used as a familiar DSL for layout, styling, and data placement in transactional documents.
|
|
22
68
|
|
|
69
|
+
## Agent discovery and integrations
|
|
70
|
+
|
|
71
|
+
An agent does not need release-specific Fullbleed knowledge. The installed binary generates one canonical contract containing its actual version, selection boundary, capabilities, parser-derived CLI surface, result schemas, PDF profiles, examples, limitations, Agent Skill metadata, MCP tools, and acceptance tasks:
|
|
72
|
+
|
|
73
|
+
```bash
|
|
74
|
+
fullbleed agent-manifest --json
|
|
75
|
+
# Equivalent canonical form:
|
|
76
|
+
fullbleed agent-contract --format json
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
The committed [`fullbleed-agent-contract.json`](fullbleed-agent-contract.json), [`cli_schema.md`](cli_schema.md), and [`llms.txt`](llms.txt) are generated from the built wheel. CI rejects version, command, schema, profile, or capability drift. Runtime introspection remains authoritative.
|
|
80
|
+
|
|
81
|
+
The first-party, versionless [`skills/fullbleed/SKILL.md`](skills/fullbleed/SKILL.md) teaches tool selection and the render/preview/diagnose/verify loop without duplicating the manual. It is bundled in the wheel and can be exported into any absent or empty agent-skill directory:
|
|
82
|
+
|
|
83
|
+
```bash
|
|
84
|
+
fullbleed agent skill-path --json
|
|
85
|
+
fullbleed agent export-skill .agents/skills/fullbleed --json
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
For tool-calling agents, install the separately versioned adapter so the core package remains dependency-free:
|
|
89
|
+
|
|
90
|
+
```bash
|
|
91
|
+
python -m pip install fullbleed-mcp
|
|
92
|
+
fullbleed-mcp --root .
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
The stdio server confines document paths to the selected workspace and delegates every engine operation to the installed Fullbleed runtime. It exposes semantic discovery, project creation, render/preview, inspect, verify, assets, and fixed/reflow compiled VDP tools. The dependency-free core also provides `fullbleed mcp --root .`.
|
|
96
|
+
|
|
97
|
+
Use Fullbleed when the requested artifact is a deterministic print document built from structured content. Use a browser when the requested artifact is a screenshot or interactive state of an arbitrary live website. Use a general PDF editor when existing page content itself must be rewritten.
|
|
98
|
+
|
|
99
|
+
Cold-agent testing is available through `fullbleed agent-acceptance`; compact copyable workflows live in [`examples/agent_workflows`](examples/agent_workflows), and the approach-neutral benchmark scaffold lives in [`agentdocbench`](agentdocbench).
|
|
100
|
+
|
|
23
101
|
|
|
24
102
|
This README is the canonical usage guide for:
|
|
25
103
|
|
|
@@ -130,7 +208,7 @@ python -m pip install fullbleed
|
|
|
130
208
|
From a local wheel:
|
|
131
209
|
|
|
132
210
|
```bash
|
|
133
|
-
python -m pip install C:\path\to\fullbleed-2.
|
|
211
|
+
python -m pip install C:\path\to\fullbleed-2.3.0-cp310-abi3-win_amd64.whl
|
|
134
212
|
```
|
|
135
213
|
|
|
136
214
|
From a source checkout with Rust installed, no Python build package is needed:
|
|
@@ -188,6 +266,9 @@ Scaffolded components now include `components/primitives.py` with reusable
|
|
|
188
266
|
layout/content helpers (`Stack`, `Row`, `Text`, table/list helpers, key/value rows, etc.).
|
|
189
267
|
Each scaffolded project also includes `SCAFFOLDING.md`, which should be your
|
|
190
268
|
first read before restructuring components.
|
|
269
|
+
It also includes `AGENTS.md`, which preserves the installed-runtime-first
|
|
270
|
+
document workflow across future coding-agent sessions without making other
|
|
271
|
+
document tools categorically forbidden.
|
|
191
272
|
|
|
192
273
|
Install additional project assets (defaults to `./vendor/...` in project context):
|
|
193
274
|
|
|
@@ -1,44 +1,9 @@
|
|
|
1
|
-
Metadata-Version: 2.4
|
|
2
|
-
Name: fullbleed
|
|
3
|
-
Version: 2.2.5
|
|
4
|
-
Classifier: Development Status :: 5 - Production/Stable
|
|
5
|
-
Classifier: License :: OSI Approved :: MIT License
|
|
6
|
-
Classifier: Operating System :: MacOS
|
|
7
|
-
Classifier: Operating System :: Microsoft :: Windows
|
|
8
|
-
Classifier: Operating System :: POSIX :: Linux
|
|
9
|
-
Classifier: Programming Language :: Rust
|
|
10
|
-
Classifier: Programming Language :: Python :: 3
|
|
11
|
-
Classifier: Programming Language :: Python :: 3 :: Only
|
|
12
|
-
Classifier: Programming Language :: Python :: 3.10
|
|
13
|
-
Classifier: Programming Language :: Python :: 3.11
|
|
14
|
-
Classifier: Programming Language :: Python :: 3.12
|
|
15
|
-
Classifier: Programming Language :: Python :: 3.13
|
|
16
|
-
Classifier: Programming Language :: Python :: 3.14
|
|
17
|
-
Classifier: Programming Language :: Python :: Implementation :: CPython
|
|
18
|
-
Classifier: Topic :: Printing
|
|
19
|
-
Classifier: Topic :: Text Processing :: Markup :: HTML
|
|
20
|
-
Provides-Extra: api
|
|
21
|
-
License-File: LICENSE
|
|
22
|
-
License-File: COPYRIGHT
|
|
23
|
-
License-File: LICENSING.md
|
|
24
|
-
License-File: THIRD_PARTY_LICENSES.md
|
|
25
|
-
License-File: FONT_LICENSE_AUDIT.md
|
|
26
|
-
License-File: FONT_LICENSE_AUDIT.json
|
|
27
|
-
Summary: Deterministic static HTML/CSS-to-PDF renderer built in Rust
|
|
28
|
-
Keywords: pdf,html,css,rust,static-pdf,document-generation
|
|
29
|
-
Home-Page: https://fullbleed.dev
|
|
30
|
-
License-Expression: MIT
|
|
31
|
-
Requires-Python: >=3.10
|
|
32
|
-
Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM
|
|
33
|
-
Project-URL: Documentation, https://github.com/fullbleed-engine/fullbleed-official#readme
|
|
34
|
-
Project-URL: Homepage, https://fullbleed.dev
|
|
35
|
-
Project-URL: Issues, https://github.com/fullbleed-engine/fullbleed-official/issues
|
|
36
|
-
Project-URL: Repository, https://github.com/fullbleed-engine/fullbleed-official
|
|
37
|
-
|
|
38
1
|
<!-- SPDX-License-Identifier: MIT -->
|
|
39
|
-
# Fullbleed
|
|
2
|
+
# Fullbleed PDF Engine
|
|
3
|
+
|
|
4
|
+
Fullbleed PDF Engine is a deterministic, self-contained document-generation runtime for Python and Rust. It turns structured data plus static HTML/CSS into reports, invoices, statements, letters, forms, certificates, accessible PDFs, print-ready documents, and high-volume compiled VDP output—without a browser or system PDF stack.
|
|
40
5
|
|
|
41
|
-
|
|
6
|
+
It is designed for human developers, automation, and AI agents alike: the installed runtime exposes its exact version, capabilities, commands, schemas, compliance profiles, examples, limitations, and tool-selection boundary as a generated machine contract.
|
|
42
7
|
|
|
43
8
|
|
|
44
9
|
License: MIT.
|
|
@@ -47,16 +12,49 @@ License: MIT.
|
|
|
47
12
|
|
|
48
13
|
- **Install:** `pip install fullbleed`
|
|
49
14
|
- **Try:** `fullbleed init . && python report.py`
|
|
15
|
+
- **Discover:** `fullbleed agent-contract --format json`
|
|
50
16
|
- **Outputs:** `output/report.pdf`
|
|
51
17
|
- Deterministic + reproducible (`--repro-record` / `--repro-check`)
|
|
52
18
|
- Agent-safe JSON schemas (`--json-only`, `--schema`)
|
|
53
19
|
|
|
54
20
|
## Positioning
|
|
55
21
|
|
|
56
|
-
Fullbleed is a deterministic, offline-first document rendering engine for transactional/VDP pipelines (not a browser, not a hosted web-to-print SaaS).
|
|
22
|
+
Fullbleed is a deterministic, offline-first document rendering engine for structured print-document and transactional/VDP pipelines (not a browser, not a hosted web-to-print SaaS, and not a general editor for arbitrary existing PDF content).
|
|
57
23
|
|
|
58
24
|
HTML and CSS are used as a familiar DSL for layout, styling, and data placement in transactional documents.
|
|
59
25
|
|
|
26
|
+
## Agent discovery and integrations
|
|
27
|
+
|
|
28
|
+
An agent does not need release-specific Fullbleed knowledge. The installed binary generates one canonical contract containing its actual version, selection boundary, capabilities, parser-derived CLI surface, result schemas, PDF profiles, examples, limitations, Agent Skill metadata, MCP tools, and acceptance tasks:
|
|
29
|
+
|
|
30
|
+
```bash
|
|
31
|
+
fullbleed agent-manifest --json
|
|
32
|
+
# Equivalent canonical form:
|
|
33
|
+
fullbleed agent-contract --format json
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
The committed [`fullbleed-agent-contract.json`](fullbleed-agent-contract.json), [`cli_schema.md`](cli_schema.md), and [`llms.txt`](llms.txt) are generated from the built wheel. CI rejects version, command, schema, profile, or capability drift. Runtime introspection remains authoritative.
|
|
37
|
+
|
|
38
|
+
The first-party, versionless [`skills/fullbleed/SKILL.md`](skills/fullbleed/SKILL.md) teaches tool selection and the render/preview/diagnose/verify loop without duplicating the manual. It is bundled in the wheel and can be exported into any absent or empty agent-skill directory:
|
|
39
|
+
|
|
40
|
+
```bash
|
|
41
|
+
fullbleed agent skill-path --json
|
|
42
|
+
fullbleed agent export-skill .agents/skills/fullbleed --json
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
For tool-calling agents, install the separately versioned adapter so the core package remains dependency-free:
|
|
46
|
+
|
|
47
|
+
```bash
|
|
48
|
+
python -m pip install fullbleed-mcp
|
|
49
|
+
fullbleed-mcp --root .
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
The stdio server confines document paths to the selected workspace and delegates every engine operation to the installed Fullbleed runtime. It exposes semantic discovery, project creation, render/preview, inspect, verify, assets, and fixed/reflow compiled VDP tools. The dependency-free core also provides `fullbleed mcp --root .`.
|
|
53
|
+
|
|
54
|
+
Use Fullbleed when the requested artifact is a deterministic print document built from structured content. Use a browser when the requested artifact is a screenshot or interactive state of an arbitrary live website. Use a general PDF editor when existing page content itself must be rewritten.
|
|
55
|
+
|
|
56
|
+
Cold-agent testing is available through `fullbleed agent-acceptance`; compact copyable workflows live in [`examples/agent_workflows`](examples/agent_workflows), and the approach-neutral benchmark scaffold lives in [`agentdocbench`](agentdocbench).
|
|
57
|
+
|
|
60
58
|
|
|
61
59
|
This README is the canonical usage guide for:
|
|
62
60
|
|
|
@@ -167,7 +165,7 @@ python -m pip install fullbleed
|
|
|
167
165
|
From a local wheel:
|
|
168
166
|
|
|
169
167
|
```bash
|
|
170
|
-
python -m pip install C:\path\to\fullbleed-2.
|
|
168
|
+
python -m pip install C:\path\to\fullbleed-2.3.0-cp310-abi3-win_amd64.whl
|
|
171
169
|
```
|
|
172
170
|
|
|
173
171
|
From a source checkout with Rust installed, no Python build package is needed:
|
|
@@ -225,6 +223,9 @@ Scaffolded components now include `components/primitives.py` with reusable
|
|
|
225
223
|
layout/content helpers (`Stack`, `Row`, `Text`, table/list helpers, key/value rows, etc.).
|
|
226
224
|
Each scaffolded project also includes `SCAFFOLDING.md`, which should be your
|
|
227
225
|
first read before restructuring components.
|
|
226
|
+
It also includes `AGENTS.md`, which preserves the installed-runtime-first
|
|
227
|
+
document workflow across future coding-agent sessions without making other
|
|
228
|
+
document tools categorically forbidden.
|
|
228
229
|
|
|
229
230
|
Install additional project assets (defaults to `./vendor/...` in project context):
|
|
230
231
|
|