frontmattering 0.4.2__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.
- frontmattering-0.4.2/.editorconfig +18 -0
- frontmattering-0.4.2/.gitattributes +8 -0
- frontmattering-0.4.2/.github/ISSUE_TEMPLATE/bug_report.yml +38 -0
- frontmattering-0.4.2/.github/ISSUE_TEMPLATE/feature_request.yml +24 -0
- frontmattering-0.4.2/.github/pull_request_template.md +20 -0
- frontmattering-0.4.2/.github/workflows/ci.yml +88 -0
- frontmattering-0.4.2/.github/workflows/release.yml +57 -0
- frontmattering-0.4.2/.gitignore +26 -0
- frontmattering-0.4.2/CHANGELOG.md +22 -0
- frontmattering-0.4.2/CODE_OF_CONDUCT.md +8 -0
- frontmattering-0.4.2/COMMERCIAL_LICENSE_REQUIRED.md +14 -0
- frontmattering-0.4.2/CONTRIBUTING.md +7 -0
- frontmattering-0.4.2/FRONTMATTERING_V0_4_2_DELIVERY_NOTE.md +18 -0
- frontmattering-0.4.2/FRONTMATTERING_v0_4_2_RELEASE_SUMMARY.md +25 -0
- frontmattering-0.4.2/GOVERNANCE.md +20 -0
- frontmattering-0.4.2/LICENSE.md +39 -0
- frontmattering-0.4.2/MANIFEST.in +32 -0
- frontmattering-0.4.2/NOTICE +10 -0
- frontmattering-0.4.2/PKG-INFO +91 -0
- frontmattering-0.4.2/README.md +59 -0
- frontmattering-0.4.2/RELEASE_NOTES_v0_4_2.md +30 -0
- frontmattering-0.4.2/REPOSITORY_STATUS.md +33 -0
- frontmattering-0.4.2/SECURITY.md +35 -0
- frontmattering-0.4.2/SUPPORT.md +9 -0
- frontmattering-0.4.2/THIRD_PARTY_NOTICES.md +12 -0
- frontmattering-0.4.2/TRADEMARKS.md +7 -0
- frontmattering-0.4.2/benchmarks/cold_start_v1/README.md +22 -0
- frontmattering-0.4.2/benchmarks/cold_start_v1/benchmark_contract.yaml +33 -0
- frontmattering-0.4.2/benchmarks/cold_start_v1/expected_answers.yaml +48 -0
- frontmattering-0.4.2/benchmarks/cold_start_v1/fixtures/README.md +3 -0
- frontmattering-0.4.2/benchmarks/cold_start_v1/participant_receipt.schema.json +26 -0
- frontmattering-0.4.2/benchmarks/cold_start_v1/source_corpus/00_START_HERE.md +142 -0
- frontmattering-0.4.2/benchmarks/cold_start_v1/source_corpus/10_NORMATIVE_SPEC.md +117 -0
- frontmattering-0.4.2/benchmarks/cold_start_v1/source_corpus/20_IMPLEMENTATION_CONTRACT.md +147 -0
- frontmattering-0.4.2/benchmarks/cold_start_v1/source_corpus/21_LEGACY_IMPLEMENTATION_CONTRACT.md +104 -0
- frontmattering-0.4.2/benchmarks/cold_start_v1/source_corpus/30_TEST_SUFFICIENCY.md +132 -0
- frontmattering-0.4.2/benchmarks/cold_start_v1/source_corpus/40_EVIDENCE_RECORD.md +134 -0
- frontmattering-0.4.2/benchmarks/cold_start_v1/source_corpus/50_RELEASE_DECISION.md +124 -0
- frontmattering-0.4.2/benchmarks/cold_start_v1/tasks.yaml +20 -0
- frontmattering-0.4.2/benchmarks/cold_start_v1/tools/build_arms.py +33 -0
- frontmattering-0.4.2/benchmarks/cold_start_v1/tools/check_content_equivalence.py +30 -0
- frontmattering-0.4.2/benchmarks/cold_start_v1/tools/score.py +21 -0
- frontmattering-0.4.2/kernel/AI_INDEX.json +691 -0
- frontmattering-0.4.2/kernel/AI_START_HERE.md +378 -0
- frontmattering-0.4.2/kernel/DAILY_USE_GUIDE.md +87 -0
- frontmattering-0.4.2/kernel/FRONTMATTERING_FRONTMATTER_SPEC_v0_1_5.md +3203 -0
- frontmattering-0.4.2/kernel/KERNEL_ACCEPTANCE_REPORT.md +180 -0
- frontmattering-0.4.2/kernel/examples/no_frontmatter_demo/00_AI_START_HERE.md +43 -0
- frontmattering-0.4.2/kernel/examples/no_frontmatter_demo/10_NORMATIVE_SPEC.md +28 -0
- frontmattering-0.4.2/kernel/examples/no_frontmatter_demo/20_IMPLEMENTATION_CONTRACT.md +33 -0
- frontmattering-0.4.2/kernel/examples/no_frontmatter_demo/30_TEST_SUFFICIENCY.md +34 -0
- frontmattering-0.4.2/kernel/examples/no_frontmatter_demo/40_EVIDENCE_RECORD.md +33 -0
- frontmattering-0.4.2/kernel/examples/no_frontmatter_demo/50_RELEASE_DECISION.md +29 -0
- frontmattering-0.4.2/kernel/examples/power_demo/00_AI_START_HERE.md +142 -0
- frontmattering-0.4.2/kernel/examples/power_demo/10_NORMATIVE_SPEC.md +117 -0
- frontmattering-0.4.2/kernel/examples/power_demo/20_IMPLEMENTATION_CONTRACT.md +130 -0
- frontmattering-0.4.2/kernel/examples/power_demo/30_TEST_SUFFICIENCY.md +132 -0
- frontmattering-0.4.2/kernel/examples/power_demo/40_EVIDENCE_RECORD.md +128 -0
- frontmattering-0.4.2/kernel/examples/power_demo/50_RELEASE_DECISION.md +124 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/adoption_digest_mismatch_rejected/doc.md +80 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/adoption_record_on_wrong_role_rejected/doc.md +59 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/adoption_record_shape_rejected/doc.md +58 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/adoption_without_bootstrap_receipt_rejected/doc.md +78 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/authored_go_used_as_evidence_rejected/doc.md +57 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/body_tether_body_digest_mismatch_rejected/doc.md +65 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/body_tether_fields_mismatch_rejected/doc.md +63 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/body_tether_malformed_rejected/doc.md +58 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/body_tether_missing_under_trust_rejected/.frontmattering/project.yaml +11 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/body_tether_missing_under_trust_rejected/doc.md +57 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/body_tether_scope_selector_rejected/doc.md +68 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/body_tether_unknown_canonicalization_rejected/doc.md +63 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/bootstrap_receipt_shape_rejected/doc.md +80 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/bootstrap_without_validator_blocks_adoption/doc.md +71 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/claim_boundary_missing_does_not_verify_rejected/doc.md +55 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/claimed_state_overreach_rejected/doc.md +57 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/clause_enforcement_drift_rejected/doc.md +59 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/container_cardinality_rejected/doc.md +57 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/deepest_intention_missing_rejected/doc.md +56 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/downstream_phase_without_upstream_evidence_rejected/doc.md +59 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/duplicate_document_id_rejected/a.md +57 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/duplicate_document_id_rejected/b.md +57 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/duplicate_yaml_key_rejected/doc.md +58 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/evidence_edge_digest_missing_rejected/doc.md +65 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/evidence_reference_used_as_truth_rejected/doc.md +66 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/external_edge_locator_missing_rejected/doc.md +64 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/external_edge_set_id_missing_rejected/doc.md +64 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/extracted_catalog_drift_rejected/doc.md +60 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/fixture_reverse_reachability_drift_rejected/doc.md +59 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/frontmatter_only_view_incomplete_rejected/doc.md +59 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/frontmatter_registry_conflict_blocks/doc.md +59 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/frontmatter_view_body_truth_overclaim_rejected/doc.md +59 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/generated_state_in_frontmatter_rejected/doc.md +58 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/green_checks_conflation_rejected/doc.md +76 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/historical_digest_used_as_current_evidence_rejected/doc.md +66 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/implementation_start_gate_bypass_rejected/doc.md +59 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/intention_positive_negative_conflation_rejected/doc.md +76 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/legacy_string_machine_surface_requires_mapping/doc.md +59 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/load_order_inversion_flagged/a.md +63 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/load_order_inversion_flagged/b.md +57 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/machine_surface_identity_incomplete_rejected/doc.md +62 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/migration_field_drop_rejected/doc.md +60 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/migration_silent_coercion_rejected/doc.md +59 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/missing_frontmatter_rejected/doc.md +1 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/non_root_exception_or_silent_fallback_rejected/doc.md +59 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/nonowner_redefines_intention_rejected/doc.md +58 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/output_format_conflation_rejected/doc.md +76 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/parser_byte_ranges_missing_rejected/doc.md +59 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/parser_partial_model_on_error_rejected/doc.md +59 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/parser_source_locator_missing_rejected/doc.md +59 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/projected_field_without_origin_rejected/doc.md +59 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/projection_rebuild_nondeterminism_rejected/doc.md +59 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/projection_row_without_source_locator_rejected/doc.md +59 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/relationship_resolution_scope_missing_rejected/doc.md +62 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/relationship_resolution_scope_unknown_rejected/doc.md +63 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/relationship_semantics_rejected/doc.md +63 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/relationship_target_unresolved_rejected/doc.md +63 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/release_surface_digest_missing_rejected/doc.md +63 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/required_dependency_cycle_rejected/a.md +63 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/required_dependency_cycle_rejected/b.md +63 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/routing_tag_not_in_task_catalog_rejected/doc.md +59 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/routing_tag_router_not_in_scope_rejected/doc.md +55 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/scope_on_nonsupersedes_rejected/doc.md +65 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/stale_bootstrap_receipt_rejected/doc.md +80 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/stale_validation_result_rejected/doc.md +60 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/supersedes_without_scope_rejected/doc.md +63 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/target_section_not_found_rejected/a.md +65 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/target_section_not_found_rejected/b.md +57 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/target_sections_on_external_edge_rejected/doc.md +67 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/task_scoped_defects_filtering/router.md +59 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/task_scoped_defects_filtering/selected.md +56 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/task_scoped_defects_filtering/skipped.md +56 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/template_claims_normative_authority_rejected/doc.md +57 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/two_documents_own_same_intention_rejected/a.md +76 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/two_documents_own_same_intention_rejected/b.md +76 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/undefined_conditional_token_rejected/doc.md +59 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/undefined_type_rejected/doc.md +59 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/unknown_authority_rejected/doc.md +57 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/unknown_document_role_rejected/doc.md +57 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/unknown_field_rejected/doc.md +58 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/unknown_root_block_rejected/doc.md +59 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/unresolved_reference_on_required_edge_rejected/doc.md +63 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/unsupported_schema_version_rejected/doc.md +57 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/untemplated_frontmatter_bypass_rejected/doc.md +59 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/validator_passes_conflation_rejected/doc.md +76 -0
- frontmattering-0.4.2/kernel/fixtures/invalid/yaml_1_1_boolean_words_not_coerced/doc.md +57 -0
- frontmattering-0.4.2/kernel/fixtures/pilot_security/blockquote.md +3 -0
- frontmattering-0.4.2/kernel/fixtures/pilot_security/code_fence.md +5 -0
- frontmattering-0.4.2/kernel/fixtures/pilot_security/dangerous_html.md +3 -0
- frontmattering-0.4.2/kernel/fixtures/pilot_security/dangerous_uri.md +3 -0
- frontmattering-0.4.2/kernel/fixtures/pilot_security/direct_instruction.md +3 -0
- frontmattering-0.4.2/kernel/fixtures/pilot_security/generated_resource_limits.yaml +16 -0
- frontmattering-0.4.2/kernel/fixtures/pilot_security/indirect_instruction.md +4 -0
- frontmattering-0.4.2/kernel/fixtures/pilot_security/legitimate_security_discussion.md +3 -0
- frontmattering-0.4.2/kernel/fixtures/pilot_security/link.md +3 -0
- frontmattering-0.4.2/kernel/fixtures/pilot_security/table.md +5 -0
- frontmattering-0.4.2/kernel/fixtures/valid/adoption_locator_trigger_word_is_data_valid/doc.md +80 -0
- frontmattering-0.4.2/kernel/fixtures/valid/body_tether_fresh_valid/doc.md +63 -0
- frontmattering-0.4.2/kernel/fixtures/valid/bootstrap_validation_receipt_valid/doc.md +66 -0
- frontmattering-0.4.2/kernel/fixtures/valid/claim_prose_substrings_are_not_verdicts_valid/doc.md +57 -0
- frontmattering-0.4.2/kernel/fixtures/valid/companion_and_appendix_edges_valid/a.md +69 -0
- frontmattering-0.4.2/kernel/fixtures/valid/companion_and_appendix_edges_valid/b.md +57 -0
- frontmattering-0.4.2/kernel/fixtures/valid/document_binding_to_external_intention_valid/doc.md +57 -0
- frontmattering-0.4.2/kernel/fixtures/valid/document_realizing_external_intention_valid/doc.md +57 -0
- frontmattering-0.4.2/kernel/fixtures/valid/document_referencing_external_intention_valid/doc.md +57 -0
- frontmattering-0.4.2/kernel/fixtures/valid/evidence_record_valid/doc.md +57 -0
- frontmattering-0.4.2/kernel/fixtures/valid/evidence_support_substrings_are_not_proof_valid/doc.md +66 -0
- frontmattering-0.4.2/kernel/fixtures/valid/external_document_set_edge_valid/doc.md +65 -0
- frontmattering-0.4.2/kernel/fixtures/valid/frontmatter_adoption_record_valid/doc.md +80 -0
- frontmattering-0.4.2/kernel/fixtures/valid/frontmatter_projection_mapping_valid/doc.md +57 -0
- frontmattering-0.4.2/kernel/fixtures/valid/frontmatter_spec_bootstrap_valid/doc.md +76 -0
- frontmattering-0.4.2/kernel/fixtures/valid/implementation_contract_valid/doc.md +57 -0
- frontmattering-0.4.2/kernel/fixtures/valid/normative_spec_valid/doc.md +57 -0
- frontmattering-0.4.2/kernel/fixtures/valid/orientation_router_valid/doc.md +59 -0
- frontmattering-0.4.2/kernel/fixtures/valid/release_metadata_valid/doc.md +57 -0
- frontmattering-0.4.2/kernel/fixtures/valid/target_sections_resolved_valid/a.md +65 -0
- frontmattering-0.4.2/kernel/fixtures/valid/target_sections_resolved_valid/b.md +57 -0
- frontmattering-0.4.2/kernel/fixtures/valid/template_valid/doc.md +57 -0
- frontmattering-0.4.2/kernel/fixtures/valid/unresolved_reference_optional_edge_valid/doc.md +63 -0
- frontmattering-0.4.2/kernel/fixtures/valid/untemplated_document_valid/doc.md +57 -0
- frontmattering-0.4.2/kernel/fixtures/valid/yaml_1_2_plain_words_valid/doc.md +60 -0
- frontmattering-0.4.2/kernel/frontmattering/FRONTMATTER_INDEX_PROVENANCE.json +13 -0
- frontmattering-0.4.2/kernel/frontmattering/__init__.py +1 -0
- frontmattering-0.4.2/kernel/frontmattering/__main__.py +1263 -0
- frontmattering-0.4.2/kernel/frontmattering/ai_instruction_risk.py +51 -0
- frontmattering-0.4.2/kernel/frontmattering/authoring.py +320 -0
- frontmattering-0.4.2/kernel/frontmattering/body_tether.py +176 -0
- frontmattering-0.4.2/kernel/frontmattering/common/__init__.py +3 -0
- frontmattering-0.4.2/kernel/frontmattering/common/errors.py +1074 -0
- frontmattering-0.4.2/kernel/frontmattering/core.py +147 -0
- frontmattering-0.4.2/kernel/frontmattering/corpus_selection.py +436 -0
- frontmattering-0.4.2/kernel/frontmattering/frontmatter_index.py +340 -0
- frontmattering-0.4.2/kernel/frontmattering/harness_errors.py +555 -0
- frontmattering-0.4.2/kernel/frontmattering/inventory.py +83 -0
- frontmattering-0.4.2/kernel/frontmattering/markdown/MARKDOWN_PARSE_RESULT_schema.json +870 -0
- frontmattering-0.4.2/kernel/frontmattering/markdown/MARKDOWN_PROVENANCE.json +8 -0
- frontmattering-0.4.2/kernel/frontmattering/markdown/USER_MANUAL.md +263 -0
- frontmattering-0.4.2/kernel/frontmattering/markdown/__init__.py +0 -0
- frontmattering-0.4.2/kernel/frontmattering/markdown/api.py +553 -0
- frontmattering-0.4.2/kernel/frontmattering/markdown/cli/__init__.py +1 -0
- frontmattering-0.4.2/kernel/frontmattering/markdown/cli/__main__.py +10 -0
- frontmattering-0.4.2/kernel/frontmattering/markdown/cli/dump_sections.py +100 -0
- frontmattering-0.4.2/kernel/frontmattering/markdown/collectors_phase8/__init__.py +15 -0
- frontmattering-0.4.2/kernel/frontmattering/markdown/collectors_phase8/blockquotes.py +117 -0
- frontmattering-0.4.2/kernel/frontmattering/markdown/collectors_phase8/codeblocks.py +46 -0
- frontmattering-0.4.2/kernel/frontmattering/markdown/collectors_phase8/footnotes.py +152 -0
- frontmattering-0.4.2/kernel/frontmattering/markdown/collectors_phase8/frontmatter.py +80 -0
- frontmattering-0.4.2/kernel/frontmattering/markdown/collectors_phase8/headings.py +85 -0
- frontmattering-0.4.2/kernel/frontmattering/markdown/collectors_phase8/html.py +29 -0
- frontmattering-0.4.2/kernel/frontmattering/markdown/collectors_phase8/html_collector.py +89 -0
- frontmattering-0.4.2/kernel/frontmattering/markdown/collectors_phase8/images.py +68 -0
- frontmattering-0.4.2/kernel/frontmattering/markdown/collectors_phase8/inline_code.py +61 -0
- frontmattering-0.4.2/kernel/frontmattering/markdown/collectors_phase8/links.py +104 -0
- frontmattering-0.4.2/kernel/frontmattering/markdown/collectors_phase8/lists.py +66 -0
- frontmattering-0.4.2/kernel/frontmattering/markdown/collectors_phase8/math.py +28 -0
- frontmattering-0.4.2/kernel/frontmattering/markdown/collectors_phase8/paragraphs.py +41 -0
- frontmattering-0.4.2/kernel/frontmattering/markdown/collectors_phase8/tables.py +65 -0
- frontmattering-0.4.2/kernel/frontmattering/markdown/collectors_phase8/tasklists.py +59 -0
- frontmattering-0.4.2/kernel/frontmattering/markdown/fetchers/__init__.py +8 -0
- frontmattering-0.4.2/kernel/frontmattering/markdown/fetchers/preview.py +123 -0
- frontmattering-0.4.2/kernel/frontmattering/markdown/fetchers/url_fetcher.py +123 -0
- frontmattering-0.4.2/kernel/frontmattering/markdown/security/__init__.py +6 -0
- frontmattering-0.4.2/kernel/frontmattering/markdown/security/scanner.py +436 -0
- frontmattering-0.4.2/kernel/frontmattering/markdown/utils/__init__.py +0 -0
- frontmattering-0.4.2/kernel/frontmattering/markdown/utils/profiling.py +137 -0
- frontmattering-0.4.2/kernel/frontmattering/markdown/utils/section.py +98 -0
- frontmattering-0.4.2/kernel/frontmattering/markdown/utils/text_normalization.py +91 -0
- frontmattering-0.4.2/kernel/frontmattering/markdown/utils/timeout.py +165 -0
- frontmattering-0.4.2/kernel/frontmattering/markdown/utils/token_warehouse.py +1300 -0
- frontmattering-0.4.2/kernel/frontmattering/markdown/utils/url_utils.py +179 -0
- frontmattering-0.4.2/kernel/frontmattering/promotion.py +170 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/AI_INDEX.json +691 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/AI_START_HERE.md +378 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/DAILY_USE_GUIDE.md +87 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/FRONTMATTERING_FRONTMATTER_SPEC_v0_1_5.md +3203 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/KERNEL_ACCEPTANCE_REPORT.md +180 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/__init__.py +0 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/examples/no_frontmatter_demo/00_AI_START_HERE.md +43 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/examples/no_frontmatter_demo/10_NORMATIVE_SPEC.md +28 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/examples/no_frontmatter_demo/20_IMPLEMENTATION_CONTRACT.md +33 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/examples/no_frontmatter_demo/30_TEST_SUFFICIENCY.md +34 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/examples/no_frontmatter_demo/40_EVIDENCE_RECORD.md +33 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/examples/no_frontmatter_demo/50_RELEASE_DECISION.md +29 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/examples/power_demo/00_AI_START_HERE.md +142 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/examples/power_demo/10_NORMATIVE_SPEC.md +117 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/examples/power_demo/20_IMPLEMENTATION_CONTRACT.md +130 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/examples/power_demo/30_TEST_SUFFICIENCY.md +132 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/examples/power_demo/40_EVIDENCE_RECORD.md +128 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/examples/power_demo/50_RELEASE_DECISION.md +124 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/adoption_digest_mismatch_rejected/doc.md +80 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/adoption_record_on_wrong_role_rejected/doc.md +59 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/adoption_record_shape_rejected/doc.md +58 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/adoption_without_bootstrap_receipt_rejected/doc.md +78 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/authored_go_used_as_evidence_rejected/doc.md +57 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/body_tether_body_digest_mismatch_rejected/doc.md +65 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/body_tether_fields_mismatch_rejected/doc.md +63 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/body_tether_malformed_rejected/doc.md +58 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/body_tether_missing_under_trust_rejected/.frontmattering/project.yaml +11 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/body_tether_missing_under_trust_rejected/doc.md +57 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/body_tether_scope_selector_rejected/doc.md +68 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/body_tether_unknown_canonicalization_rejected/doc.md +63 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/bootstrap_receipt_shape_rejected/doc.md +80 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/bootstrap_without_validator_blocks_adoption/doc.md +71 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/claim_boundary_missing_does_not_verify_rejected/doc.md +55 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/claimed_state_overreach_rejected/doc.md +57 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/clause_enforcement_drift_rejected/doc.md +59 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/container_cardinality_rejected/doc.md +57 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/deepest_intention_missing_rejected/doc.md +56 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/downstream_phase_without_upstream_evidence_rejected/doc.md +59 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/duplicate_document_id_rejected/a.md +57 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/duplicate_document_id_rejected/b.md +57 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/duplicate_yaml_key_rejected/doc.md +58 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/evidence_edge_digest_missing_rejected/doc.md +65 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/evidence_reference_used_as_truth_rejected/doc.md +66 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/external_edge_locator_missing_rejected/doc.md +64 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/external_edge_set_id_missing_rejected/doc.md +64 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/extracted_catalog_drift_rejected/doc.md +60 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/fixture_reverse_reachability_drift_rejected/doc.md +59 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/frontmatter_only_view_incomplete_rejected/doc.md +59 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/frontmatter_registry_conflict_blocks/doc.md +59 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/frontmatter_view_body_truth_overclaim_rejected/doc.md +59 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/generated_state_in_frontmatter_rejected/doc.md +58 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/green_checks_conflation_rejected/doc.md +76 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/historical_digest_used_as_current_evidence_rejected/doc.md +66 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/implementation_start_gate_bypass_rejected/doc.md +59 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/intention_positive_negative_conflation_rejected/doc.md +76 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/legacy_string_machine_surface_requires_mapping/doc.md +59 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/load_order_inversion_flagged/a.md +63 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/load_order_inversion_flagged/b.md +57 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/machine_surface_identity_incomplete_rejected/doc.md +62 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/migration_field_drop_rejected/doc.md +60 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/migration_silent_coercion_rejected/doc.md +59 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/missing_frontmatter_rejected/doc.md +1 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/non_root_exception_or_silent_fallback_rejected/doc.md +59 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/nonowner_redefines_intention_rejected/doc.md +58 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/output_format_conflation_rejected/doc.md +76 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/parser_byte_ranges_missing_rejected/doc.md +59 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/parser_partial_model_on_error_rejected/doc.md +59 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/parser_source_locator_missing_rejected/doc.md +59 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/projected_field_without_origin_rejected/doc.md +59 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/projection_rebuild_nondeterminism_rejected/doc.md +59 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/projection_row_without_source_locator_rejected/doc.md +59 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/relationship_resolution_scope_missing_rejected/doc.md +62 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/relationship_resolution_scope_unknown_rejected/doc.md +63 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/relationship_semantics_rejected/doc.md +63 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/relationship_target_unresolved_rejected/doc.md +63 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/release_surface_digest_missing_rejected/doc.md +63 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/required_dependency_cycle_rejected/a.md +63 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/required_dependency_cycle_rejected/b.md +63 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/routing_tag_not_in_task_catalog_rejected/doc.md +59 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/routing_tag_router_not_in_scope_rejected/doc.md +55 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/scope_on_nonsupersedes_rejected/doc.md +65 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/stale_bootstrap_receipt_rejected/doc.md +80 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/stale_validation_result_rejected/doc.md +60 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/supersedes_without_scope_rejected/doc.md +63 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/target_section_not_found_rejected/a.md +65 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/target_section_not_found_rejected/b.md +57 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/target_sections_on_external_edge_rejected/doc.md +67 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/task_scoped_defects_filtering/router.md +59 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/task_scoped_defects_filtering/selected.md +56 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/task_scoped_defects_filtering/skipped.md +56 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/template_claims_normative_authority_rejected/doc.md +57 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/two_documents_own_same_intention_rejected/a.md +76 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/two_documents_own_same_intention_rejected/b.md +76 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/undefined_conditional_token_rejected/doc.md +59 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/undefined_type_rejected/doc.md +59 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/unknown_authority_rejected/doc.md +57 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/unknown_document_role_rejected/doc.md +57 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/unknown_field_rejected/doc.md +58 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/unknown_root_block_rejected/doc.md +59 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/unresolved_reference_on_required_edge_rejected/doc.md +63 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/unsupported_schema_version_rejected/doc.md +57 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/untemplated_frontmatter_bypass_rejected/doc.md +59 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/validator_passes_conflation_rejected/doc.md +76 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/invalid/yaml_1_1_boolean_words_not_coerced/doc.md +57 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/pilot_security/blockquote.md +3 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/pilot_security/code_fence.md +5 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/pilot_security/dangerous_html.md +3 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/pilot_security/dangerous_uri.md +3 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/pilot_security/direct_instruction.md +3 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/pilot_security/generated_resource_limits.yaml +16 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/pilot_security/indirect_instruction.md +4 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/pilot_security/legitimate_security_discussion.md +3 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/pilot_security/link.md +3 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/pilot_security/table.md +5 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/valid/adoption_locator_trigger_word_is_data_valid/doc.md +80 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/valid/body_tether_fresh_valid/doc.md +63 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/valid/bootstrap_validation_receipt_valid/doc.md +66 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/valid/claim_prose_substrings_are_not_verdicts_valid/doc.md +57 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/valid/companion_and_appendix_edges_valid/a.md +69 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/valid/companion_and_appendix_edges_valid/b.md +57 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/valid/document_binding_to_external_intention_valid/doc.md +57 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/valid/document_realizing_external_intention_valid/doc.md +57 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/valid/document_referencing_external_intention_valid/doc.md +57 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/valid/evidence_record_valid/doc.md +57 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/valid/evidence_support_substrings_are_not_proof_valid/doc.md +66 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/valid/external_document_set_edge_valid/doc.md +65 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/valid/frontmatter_adoption_record_valid/doc.md +80 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/valid/frontmatter_projection_mapping_valid/doc.md +57 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/valid/frontmatter_spec_bootstrap_valid/doc.md +76 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/valid/implementation_contract_valid/doc.md +57 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/valid/normative_spec_valid/doc.md +57 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/valid/orientation_router_valid/doc.md +59 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/valid/release_metadata_valid/doc.md +57 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/valid/target_sections_resolved_valid/a.md +65 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/valid/target_sections_resolved_valid/b.md +57 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/valid/template_valid/doc.md +57 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/valid/unresolved_reference_optional_edge_valid/doc.md +63 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/valid/untemplated_document_valid/doc.md +57 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/fixtures/valid/yaml_1_2_plain_words_valid/doc.md +60 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/generated/FRONTMATTERING_FRONTMATTER_SCHEMA.schema.json +2422 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/tools/__init__.py +0 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/tools/check_frontmatter_sqlite_index.py +40 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/tools/check_kernel_cleanliness.py +103 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/tools/check_kernel_exception_taxonomy.py +145 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/tools/check_markdown_parser_adoption.py +35 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/tools/check_pilot_readiness.py +545 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/tools/check_projection_consistency.py +35 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/tools/check_python_syntax.py +29 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/tools/check_report_quality.py +478 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/tools/distribution_receipt.py +54 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/tools/finding_registry.py +625 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/tools/frontmattering_cli.py +18 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/tools/generate_ai_index.py +123 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/tools/generate_frontmatter_schema.py +70 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/tools/kernel_reporting.py +1495 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/tools/make_fixtures.py +507 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/tools/pack_kernel_distro.py +430 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/tools/test_verify_kernel.py +177 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/tools/validate_frontmatters.py +100 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/tools/verify_kernel.py +197 -0
- frontmattering-0.4.2/kernel/frontmattering/resources/workflow-docs-manifest.yaml +199 -0
- frontmattering-0.4.2/kernel/frontmattering/schema_projection.py +288 -0
- frontmattering-0.4.2/kernel/frontmattering/speccompile.py +81 -0
- frontmattering-0.4.2/kernel/frontmattering/validator.py +957 -0
- frontmattering-0.4.2/kernel/frontmattering.egg-info/PKG-INFO +91 -0
- frontmattering-0.4.2/kernel/frontmattering.egg-info/SOURCES.txt +427 -0
- frontmattering-0.4.2/kernel/frontmattering.egg-info/dependency_links.txt +1 -0
- frontmattering-0.4.2/kernel/frontmattering.egg-info/entry_points.txt +2 -0
- frontmattering-0.4.2/kernel/frontmattering.egg-info/requires.txt +2 -0
- frontmattering-0.4.2/kernel/frontmattering.egg-info/top_level.txt +1 -0
- frontmattering-0.4.2/kernel/generated/FRONTMATTERING_FRONTMATTER_SCHEMA.schema.json +2422 -0
- frontmattering-0.4.2/kernel/tools/check_frontmatter_sqlite_index.py +40 -0
- frontmattering-0.4.2/kernel/tools/check_kernel_cleanliness.py +103 -0
- frontmattering-0.4.2/kernel/tools/check_kernel_exception_taxonomy.py +145 -0
- frontmattering-0.4.2/kernel/tools/check_markdown_parser_adoption.py +35 -0
- frontmattering-0.4.2/kernel/tools/check_pilot_readiness.py +545 -0
- frontmattering-0.4.2/kernel/tools/check_projection_consistency.py +35 -0
- frontmattering-0.4.2/kernel/tools/check_python_syntax.py +29 -0
- frontmattering-0.4.2/kernel/tools/check_report_quality.py +478 -0
- frontmattering-0.4.2/kernel/tools/distribution_receipt.py +54 -0
- frontmattering-0.4.2/kernel/tools/finding_registry.py +625 -0
- frontmattering-0.4.2/kernel/tools/frontmattering_cli.py +18 -0
- frontmattering-0.4.2/kernel/tools/generate_ai_index.py +123 -0
- frontmattering-0.4.2/kernel/tools/generate_frontmatter_schema.py +70 -0
- frontmattering-0.4.2/kernel/tools/kernel_reporting.py +1495 -0
- frontmattering-0.4.2/kernel/tools/make_fixtures.py +507 -0
- frontmattering-0.4.2/kernel/tools/pack_kernel_distro.py +430 -0
- frontmattering-0.4.2/kernel/tools/test_verify_kernel.py +177 -0
- frontmattering-0.4.2/kernel/tools/validate_frontmatters.py +100 -0
- frontmattering-0.4.2/kernel/tools/verify_kernel.py +197 -0
- frontmattering-0.4.2/kernel/workflow-docs-manifest.yaml +199 -0
- frontmattering-0.4.2/pyproject.toml +43 -0
- frontmattering-0.4.2/setup.cfg +4 -0
- frontmattering-0.4.2/tests/test_frontmattering_p0_regressions.py +208 -0
- frontmattering-0.4.2/tests/test_red_body_tether.py +261 -0
- frontmattering-0.4.2/tests/test_red_cli_trust_adoption.py +229 -0
- frontmattering-0.4.2/tests/test_red_frontmattering_rt_n.py +239 -0
- frontmattering-0.4.2/tests/test_red_runtime_parity.py +108 -0
- frontmattering-0.4.2/tests/test_red_tether_scope.py +266 -0
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
root = true
|
|
2
|
+
|
|
3
|
+
[*]
|
|
4
|
+
charset = utf-8
|
|
5
|
+
end_of_line = lf
|
|
6
|
+
insert_final_newline = true
|
|
7
|
+
trim_trailing_whitespace = true
|
|
8
|
+
|
|
9
|
+
[*.py]
|
|
10
|
+
indent_style = space
|
|
11
|
+
indent_size = 4
|
|
12
|
+
|
|
13
|
+
[*.{md,yml,yaml,json,toml}]
|
|
14
|
+
indent_style = space
|
|
15
|
+
indent_size = 2
|
|
16
|
+
|
|
17
|
+
[Makefile]
|
|
18
|
+
indent_style = tab
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
name: Bug report
|
|
2
|
+
description: Report a reproducible defect
|
|
3
|
+
title: "[Bug]: "
|
|
4
|
+
labels: [bug]
|
|
5
|
+
body:
|
|
6
|
+
- type: textarea
|
|
7
|
+
id: summary
|
|
8
|
+
attributes:
|
|
9
|
+
label: Summary
|
|
10
|
+
description: What happened, and what should have happened?
|
|
11
|
+
validations:
|
|
12
|
+
required: true
|
|
13
|
+
- type: input
|
|
14
|
+
id: version
|
|
15
|
+
attributes:
|
|
16
|
+
label: Version
|
|
17
|
+
placeholder: 0.3.1
|
|
18
|
+
validations:
|
|
19
|
+
required: true
|
|
20
|
+
- type: textarea
|
|
21
|
+
id: reproduce
|
|
22
|
+
attributes:
|
|
23
|
+
label: Reproduction
|
|
24
|
+
description: Include the smallest complete commands and input files possible.
|
|
25
|
+
validations:
|
|
26
|
+
required: true
|
|
27
|
+
- type: textarea
|
|
28
|
+
id: output
|
|
29
|
+
attributes:
|
|
30
|
+
label: Structured output or traceback
|
|
31
|
+
render: shell
|
|
32
|
+
- type: checkboxes
|
|
33
|
+
id: security
|
|
34
|
+
attributes:
|
|
35
|
+
label: Security
|
|
36
|
+
options:
|
|
37
|
+
- label: This report does not disclose an unpatched vulnerability.
|
|
38
|
+
required: true
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
name: Feature request
|
|
2
|
+
description: Propose a narrowly scoped capability
|
|
3
|
+
title: "[Feature]: "
|
|
4
|
+
labels: [enhancement]
|
|
5
|
+
body:
|
|
6
|
+
- type: textarea
|
|
7
|
+
id: friction
|
|
8
|
+
attributes:
|
|
9
|
+
label: User friction
|
|
10
|
+
description: What concrete workflow failure or repeated cost does this solve?
|
|
11
|
+
validations:
|
|
12
|
+
required: true
|
|
13
|
+
- type: textarea
|
|
14
|
+
id: boundary
|
|
15
|
+
attributes:
|
|
16
|
+
label: Proposed boundary
|
|
17
|
+
description: What should the feature establish, and what should it not establish?
|
|
18
|
+
validations:
|
|
19
|
+
required: true
|
|
20
|
+
- type: textarea
|
|
21
|
+
id: evidence
|
|
22
|
+
attributes:
|
|
23
|
+
label: Evidence of need
|
|
24
|
+
description: Real corpus, commands, examples, or measurements.
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
## Purpose
|
|
2
|
+
|
|
3
|
+
Describe the concrete defect or friction addressed.
|
|
4
|
+
|
|
5
|
+
## Claim boundary
|
|
6
|
+
|
|
7
|
+
State what this change establishes and what it does not establish.
|
|
8
|
+
|
|
9
|
+
## Verification
|
|
10
|
+
|
|
11
|
+
- [ ] Canonical verification passes.
|
|
12
|
+
- [ ] Relevant parser/index fixtures pass.
|
|
13
|
+
- [ ] New behavior has regression coverage.
|
|
14
|
+
- [ ] Generated artifacts are current.
|
|
15
|
+
- [ ] Release cleanliness passes.
|
|
16
|
+
- [ ] No authored meaning exists only in a generated projection or database.
|
|
17
|
+
|
|
18
|
+
## Compatibility
|
|
19
|
+
|
|
20
|
+
Describe schema, CLI, package, and clean-break effects. Do not add compatibility adapters without an explicit new contract.
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
name: CI
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: [main]
|
|
6
|
+
pull_request:
|
|
7
|
+
workflow_dispatch:
|
|
8
|
+
|
|
9
|
+
permissions:
|
|
10
|
+
contents: read
|
|
11
|
+
|
|
12
|
+
env:
|
|
13
|
+
PYTHONDONTWRITEBYTECODE: "1"
|
|
14
|
+
|
|
15
|
+
jobs:
|
|
16
|
+
verify:
|
|
17
|
+
strategy:
|
|
18
|
+
fail-fast: false
|
|
19
|
+
matrix:
|
|
20
|
+
python-version: ['3.10', '3.11', '3.12', '3.13']
|
|
21
|
+
runs-on: ubuntu-latest
|
|
22
|
+
steps:
|
|
23
|
+
- uses: actions/checkout@v4
|
|
24
|
+
- uses: actions/setup-python@v5
|
|
25
|
+
with:
|
|
26
|
+
python-version: ${{ matrix.python-version }}
|
|
27
|
+
cache: pip
|
|
28
|
+
- name: Install
|
|
29
|
+
run: |
|
|
30
|
+
python -m pip install --upgrade pip
|
|
31
|
+
python -m pip install -e .
|
|
32
|
+
- name: Python syntax
|
|
33
|
+
run: python kernel/tools/check_python_syntax.py
|
|
34
|
+
- name: Canonical verification and adversarial scenarios
|
|
35
|
+
run: python kernel/tools/test_verify_kernel.py
|
|
36
|
+
- name: Markdown parser adoption
|
|
37
|
+
run: python kernel/tools/check_markdown_parser_adoption.py
|
|
38
|
+
- name: SQLite frontmatter index
|
|
39
|
+
run: python kernel/tools/check_frontmatter_sqlite_index.py
|
|
40
|
+
- name: Projection consistency
|
|
41
|
+
run: python kernel/tools/check_projection_consistency.py
|
|
42
|
+
- name: Report quality
|
|
43
|
+
run: python kernel/tools/check_report_quality.py
|
|
44
|
+
- name: Exception taxonomy
|
|
45
|
+
run: python kernel/tools/check_kernel_exception_taxonomy.py
|
|
46
|
+
- name: Pilot-readiness contract
|
|
47
|
+
run: python kernel/tools/check_pilot_readiness.py
|
|
48
|
+
- name: Release cleanliness
|
|
49
|
+
run: python kernel/tools/check_kernel_cleanliness.py --release
|
|
50
|
+
- name: Whole-tree distribution receipt
|
|
51
|
+
run: python kernel/tools/distribution_receipt.py --check
|
|
52
|
+
|
|
53
|
+
package:
|
|
54
|
+
runs-on: ubuntu-latest
|
|
55
|
+
needs: verify
|
|
56
|
+
steps:
|
|
57
|
+
- uses: actions/checkout@v4
|
|
58
|
+
- uses: actions/setup-python@v5
|
|
59
|
+
with:
|
|
60
|
+
python-version: '3.12'
|
|
61
|
+
- name: Build tooling
|
|
62
|
+
run: python -m pip install --upgrade pip build
|
|
63
|
+
- name: Build distributions
|
|
64
|
+
run: python -m build
|
|
65
|
+
- name: Inspect and smoke-test wheel
|
|
66
|
+
run: |
|
|
67
|
+
python - <<'PY'
|
|
68
|
+
import pathlib, subprocess, sys, tempfile, zipfile
|
|
69
|
+
wheels=list(pathlib.Path('dist').glob('*.whl'))
|
|
70
|
+
if len(wheels)!=1:
|
|
71
|
+
raise SystemExit(f'expected one wheel, found {wheels}')
|
|
72
|
+
wheel=wheels[0]
|
|
73
|
+
with zipfile.ZipFile(wheel) as zf:
|
|
74
|
+
bad=[n for n in zf.namelist() if '__pycache__/' in n or n.endswith(('.pyc','.pyo')) or n.startswith('tools/')]
|
|
75
|
+
if bad:
|
|
76
|
+
raise SystemExit('\n'.join(bad))
|
|
77
|
+
with tempfile.TemporaryDirectory() as td:
|
|
78
|
+
target=pathlib.Path(td)/'site'
|
|
79
|
+
subprocess.run([sys.executable,'-m','pip','install','--target',str(target),str(wheel)],check=True)
|
|
80
|
+
env={'PYTHONPATH':str(target),'PYTHONDONTWRITEBYTECODE':'1'}
|
|
81
|
+
subprocess.run([sys.executable,'-m','frontmattering','--version'],env=env,check=True)
|
|
82
|
+
subprocess.run([sys.executable,'-m','frontmattering','doctor','--format','json'],env=env,check=True)
|
|
83
|
+
print('distribution inspection and installed-wheel smoke: PASS')
|
|
84
|
+
PY
|
|
85
|
+
- uses: actions/upload-artifact@v4
|
|
86
|
+
with:
|
|
87
|
+
name: python-distributions
|
|
88
|
+
path: dist/*
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
name: Release candidate
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
workflow_dispatch:
|
|
5
|
+
inputs:
|
|
6
|
+
tag:
|
|
7
|
+
description: Existing tag to package
|
|
8
|
+
required: true
|
|
9
|
+
|
|
10
|
+
permissions:
|
|
11
|
+
contents: read
|
|
12
|
+
|
|
13
|
+
env:
|
|
14
|
+
PYTHONDONTWRITEBYTECODE: "1"
|
|
15
|
+
|
|
16
|
+
jobs:
|
|
17
|
+
build:
|
|
18
|
+
runs-on: ubuntu-latest
|
|
19
|
+
steps:
|
|
20
|
+
- uses: actions/checkout@v4
|
|
21
|
+
with:
|
|
22
|
+
ref: ${{ inputs.tag }}
|
|
23
|
+
- uses: actions/setup-python@v5
|
|
24
|
+
with:
|
|
25
|
+
python-version: '3.12'
|
|
26
|
+
- name: Install build dependencies
|
|
27
|
+
run: python -m pip install --upgrade pip build
|
|
28
|
+
- name: Verify release tree
|
|
29
|
+
run: |
|
|
30
|
+
python -m pip install -e .
|
|
31
|
+
python kernel/tools/test_verify_kernel.py
|
|
32
|
+
python kernel/tools/check_markdown_parser_adoption.py
|
|
33
|
+
python kernel/tools/check_frontmatter_sqlite_index.py
|
|
34
|
+
python kernel/tools/check_projection_consistency.py
|
|
35
|
+
python kernel/tools/check_report_quality.py
|
|
36
|
+
python kernel/tools/check_kernel_exception_taxonomy.py
|
|
37
|
+
python kernel/tools/check_pilot_readiness.py
|
|
38
|
+
python kernel/tools/check_kernel_cleanliness.py --release
|
|
39
|
+
python kernel/tools/distribution_receipt.py --check
|
|
40
|
+
python kernel/tools/pack_kernel_distro.py --check-only
|
|
41
|
+
- name: Build Python distributions
|
|
42
|
+
run: python -m build
|
|
43
|
+
- name: Installed-wheel doctor
|
|
44
|
+
run: |
|
|
45
|
+
python - <<'PY'
|
|
46
|
+
import pathlib, subprocess, sys, tempfile
|
|
47
|
+
wheel=next(pathlib.Path('dist').glob('*.whl'))
|
|
48
|
+
with tempfile.TemporaryDirectory() as td:
|
|
49
|
+
target=pathlib.Path(td)/'site'
|
|
50
|
+
subprocess.run([sys.executable,'-m','pip','install','--target',str(target),str(wheel)],check=True)
|
|
51
|
+
env={'PYTHONPATH':str(target),'PYTHONDONTWRITEBYTECODE':'1'}
|
|
52
|
+
subprocess.run([sys.executable,'-m','frontmattering','doctor','--format','json'],env=env,check=True)
|
|
53
|
+
PY
|
|
54
|
+
- uses: actions/upload-artifact@v4
|
|
55
|
+
with:
|
|
56
|
+
name: release-candidate-${{ inputs.tag }}
|
|
57
|
+
path: dist/*
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
__pycache__/
|
|
2
|
+
*.py[cod]
|
|
3
|
+
*$py.class
|
|
4
|
+
.pytest_cache/
|
|
5
|
+
.mypy_cache/
|
|
6
|
+
.ruff_cache/
|
|
7
|
+
.coverage
|
|
8
|
+
.coverage.*
|
|
9
|
+
htmlcov/
|
|
10
|
+
.tox/
|
|
11
|
+
.nox/
|
|
12
|
+
.venv/
|
|
13
|
+
venv/
|
|
14
|
+
env/
|
|
15
|
+
build/
|
|
16
|
+
dist/
|
|
17
|
+
*.egg-info/
|
|
18
|
+
*.sqlite
|
|
19
|
+
*.sqlite3
|
|
20
|
+
.frontmattering/ir/
|
|
21
|
+
.frontmattering/*.sqlite
|
|
22
|
+
.env
|
|
23
|
+
.env.*
|
|
24
|
+
.DS_Store
|
|
25
|
+
.idea/
|
|
26
|
+
.vscode/settings.json
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
## 0.4.2
|
|
4
|
+
|
|
5
|
+
- Removed the mistaken MIT component license expression after confirming the package contains Frontmattering-owned source and normal runtime dependencies, not vendored third-party source.
|
|
6
|
+
- Replaced third-party notices with a dependency-only notice for PyYAML and markdown-it-py.
|
|
7
|
+
- Removed the v0.4.1 publication hold.
|
|
8
|
+
- Preserved clean public identity: package, import package, and CLI are all `frontmattering`.
|
|
9
|
+
|
|
10
|
+
## 0.4.1
|
|
11
|
+
|
|
12
|
+
- Corrected public notices and added 30-day professional/organizational evaluation permission.
|
|
13
|
+
- Added verbatim redistribution permission for unmodified official package artifacts.
|
|
14
|
+
- Marked publication as held pending third-party provenance clarification; superseded by v0.4.2 after code ownership was confirmed.
|
|
15
|
+
|
|
16
|
+
## 0.4.0
|
|
17
|
+
|
|
18
|
+
- Clean public rebrand to Frontmattering.
|
|
19
|
+
- Project package, import package, and CLI are now `frontmattering`.
|
|
20
|
+
- Removed old public CLI/import/package aliases.
|
|
21
|
+
- Replaced the previous permissive project license with Frontmattering Individual Use License v1.0 plus commercial-license requirement.
|
|
22
|
+
- Preserved validator/runtime/body-tether/trust-profile behavior from the internal v0.3.6 line.
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
# Code of conduct
|
|
2
|
+
|
|
3
|
+
Be respectful, technically rigorous, and specific. Critique artifacts and
|
|
4
|
+
claims rather than people. Harassment, threats, discriminatory conduct,
|
|
5
|
+
doxxing, and deliberate disruption are not acceptable.
|
|
6
|
+
|
|
7
|
+
Maintainers may edit, hide, or remove contributions that violate these rules
|
|
8
|
+
and may restrict participation when necessary to protect the project.
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
# Commercial license required
|
|
2
|
+
|
|
3
|
+
Frontmattering is source-available. It is free for individual natural persons using it for personal learning, private research, hobby projects, personal repositories, education, experimentation, or individual evaluation.
|
|
4
|
+
|
|
5
|
+
Professional, organizational, commercial, client, employer, CI/CD, hosted, managed-service, platform, resale, consulting, public-sector, nonprofit, school, university, or revenue-connected use requires either:
|
|
6
|
+
|
|
7
|
+
1. a paid commercial license; or
|
|
8
|
+
2. the 30-day time-boxed evaluation permission stated in LICENSE.md.
|
|
9
|
+
|
|
10
|
+
The evaluation permission exists so prospective professional and organizational users can test Frontmattering in realistic internal workflows, including CI runtime-gate evaluation, before buying a license. It does not authorize production reliance, client delivery, paid audits, managed service operation, or continued use after the evaluation period.
|
|
11
|
+
|
|
12
|
+
Initial public pricing is not fixed in this package. Commercial terms should be published before broad external outreach so small professional users can self-select instead of starting every evaluation with a sales conversation.
|
|
13
|
+
|
|
14
|
+
Commercial license inquiries should use the commercial contact published at https://frontmattering.com/ or in the official project repository.
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
# Contributing
|
|
2
|
+
|
|
3
|
+
Frontmattering is not accepting external code contributions until the contributor license process is finalized.
|
|
4
|
+
|
|
5
|
+
Feedback, issue reports, reproducible fixtures, and external pilot receipts are welcome. Do not submit code patches unless a written contributor/license agreement has been accepted first.
|
|
6
|
+
|
|
7
|
+
This avoids contaminating the licensing base while the project is pre-commercial-pilot.
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# Frontmattering v0.4.2 delivery note
|
|
2
|
+
|
|
3
|
+
This release bundle is intended to replace the v0.4.1 publication-held candidate.
|
|
4
|
+
|
|
5
|
+
v0.4.2 removes the false third-party/vendored-code attribution path and removes the temporary publication marker, based on the stated project fact that all Frontmattering source code is owned by the project rights holder and that PyYAML / markdown-it-py are separate runtime dependencies rather than vendored source code.
|
|
6
|
+
|
|
7
|
+
Before real PyPI upload, run:
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
python -m pip install --upgrade build twine
|
|
11
|
+
python -m build
|
|
12
|
+
python -m twine check dist/*
|
|
13
|
+
python -m twine upload --repository testpypi dist/*
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
Then test-install from TestPyPI in a clean virtual environment before uploading to production PyPI.
|
|
17
|
+
|
|
18
|
+
The custom source-available license text is included as a publication candidate, not legal advice.
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# Frontmattering v0.4.2 release summary
|
|
2
|
+
|
|
3
|
+
- Product: Frontmattering
|
|
4
|
+
- Version: 0.4.2
|
|
5
|
+
- Release type: PyPI-clear license/notice cleanup candidate
|
|
6
|
+
- Public package: `frontmattering`
|
|
7
|
+
- Import package: `frontmattering`
|
|
8
|
+
- CLI: `frontmattering`
|
|
9
|
+
- License expression: `LicenseRef-FRONTMATTERING-Individual-Use-1.2`
|
|
10
|
+
|
|
11
|
+
## Summary
|
|
12
|
+
|
|
13
|
+
v0.4.2 removes the false MIT/vendored-third-party posture from the public package. The package now states that Frontmattering does not vendor third-party source code; PyYAML and markdown-it-py remain normal separately installed runtime dependencies.
|
|
14
|
+
|
|
15
|
+
## Publication status
|
|
16
|
+
|
|
17
|
+
Technically ready for TestPyPI/PyPI upload after local `twine check` and account-side publication steps. The custom license should still receive qualified legal review before commercial sales.
|
|
18
|
+
|
|
19
|
+
## Non-goals
|
|
20
|
+
|
|
21
|
+
- No validator feature changes.
|
|
22
|
+
- No schema compatibility aliases.
|
|
23
|
+
- No old public compatibility surfaces.
|
|
24
|
+
- No license server or activation mechanism.
|
|
25
|
+
- No semantic-summary truth claim.
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Project governance
|
|
2
|
+
|
|
3
|
+
The project is currently maintainer-led while the public identity, release
|
|
4
|
+
process, and first external pilots are established.
|
|
5
|
+
|
|
6
|
+
## Authority
|
|
7
|
+
|
|
8
|
+
- Markdown source and canonical frontmatter are authored truth.
|
|
9
|
+
- Generated schemas, reports, document IR, receipts, and SQLite indexes are
|
|
10
|
+
deterministic, rebuildable projections.
|
|
11
|
+
- Validation results establish structural conformance only.
|
|
12
|
+
- Normative-model changes require explicit review and new fixtures.
|
|
13
|
+
- Distribution changes must pass release cleanliness and receipt checks.
|
|
14
|
+
|
|
15
|
+
## Decisions
|
|
16
|
+
|
|
17
|
+
Material decisions should be recorded in reviewable repository artifacts.
|
|
18
|
+
Consensus is preferred; the lead maintainer resolves deadlocks during the
|
|
19
|
+
preview phase. Governance will be revised before accepting a broader maintainer
|
|
20
|
+
team or creating certification claims.
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# Frontmattering Individual Use License v1.2
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Lasse T.
|
|
4
|
+
|
|
5
|
+
Frontmattering is source-available software. It is not open-source software under the Open Source Definition because professional, organizational, commercial, CI/CD, hosted, managed-service, client, employer, platform, resale, consulting, public-sector, nonprofit, school, university, and revenue-connected use is restricted except as expressly permitted below or by a separate commercial license.
|
|
6
|
+
|
|
7
|
+
## 1. Individual personal-use grant
|
|
8
|
+
|
|
9
|
+
An individual natural person may install, inspect, copy for personal backup, and run Frontmattering free of charge for personal learning, private research, hobby projects, personal repositories, education, experimentation, or individual evaluation, provided the use is not on behalf of an employer, client, company, nonprofit, government body, school, university, association, or other organization, and is not part of paid work, professional services, commercial activity, CI/CD, hosted service operation, managed service delivery, product development, compliance activity, or revenue-connected activity.
|
|
10
|
+
|
|
11
|
+
## 2. Time-boxed evaluation permission
|
|
12
|
+
|
|
13
|
+
An individual or organization may evaluate Frontmattering for up to 30 days from the first installation or first use by that individual or organization, solely to decide whether to obtain a commercial license.
|
|
14
|
+
|
|
15
|
+
During the evaluation period, the evaluator may install Frontmattering, run it on non-public or internal Markdown corpora, generate briefs, run validation, and test the validate-only runtime gate in CI for evaluation purposes.
|
|
16
|
+
|
|
17
|
+
The evaluation permission does not allow production reliance, client delivery, hosted or managed-service operation, resale, sublicensing, use as part of a paid audit or paid consulting deliverable, operation of a commercial product or platform, or continued use after the evaluation period without a commercial license.
|
|
18
|
+
|
|
19
|
+
## 3. Verbatim redistribution permission
|
|
20
|
+
|
|
21
|
+
You may copy and redistribute unmodified copies of the official Frontmattering source distribution, wheel distribution, and associated license and notice files, provided that the copies are complete and unmodified; all copyright, license, commercial-license, trademark, attribution, NOTICE, and third-party notice files remain included and unmodified; and you do not represent that you own Frontmattering or that you may grant rights beyond this license.
|
|
22
|
+
|
|
23
|
+
This permission allows redistribution of unmodified official package artifacts, including ordinary package-index mirrors, package caches, and internal artifact proxies. It does not grant permission to modify, create derivative works, sublicense, host as a service, include in a commercial product, or use Frontmattering for professional or organizational purposes except as separately permitted.
|
|
24
|
+
|
|
25
|
+
## 4. Commercial-license requirement
|
|
26
|
+
|
|
27
|
+
Professional, organizational, commercial, client, employer, CI/CD, hosted, managed-service, platform, resale, consulting, public-sector, nonprofit, school, university, or revenue-connected use outside the 30-day evaluation permission requires a separate paid commercial license from the copyright holder.
|
|
28
|
+
|
|
29
|
+
Commercial license inquiries should use the commercial contact published at https://frontmattering.com/ or in the official project repository.
|
|
30
|
+
|
|
31
|
+
## 5. Notices and restrictions
|
|
32
|
+
|
|
33
|
+
You may not remove copyright, license, commercial-license, trademark, attribution, NOTICE, or third-party notice files. You may not represent Frontmattering as open-source software. No trademark rights are granted. No patent license is granted except as required to exercise the permissions expressly granted above.
|
|
34
|
+
|
|
35
|
+
## 6. Warranty disclaimer and limitation of liability
|
|
36
|
+
|
|
37
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE, NON-INFRINGEMENT, SECURITY, CORRECTNESS, OR AVAILABILITY. TO THE MAXIMUM EXTENT PERMITTED BY LAW, THE COPYRIGHT HOLDERS ARE NOT LIABLE FOR ANY CLAIM, DAMAGES, OR OTHER LIABILITY ARISING FROM OR RELATED TO THE SOFTWARE OR ITS USE.
|
|
38
|
+
|
|
39
|
+
If you need rights outside this license, obtain a commercial license.
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
include .editorconfig
|
|
2
|
+
include .gitattributes
|
|
3
|
+
include .gitignore
|
|
4
|
+
include CODE_OF_CONDUCT.md
|
|
5
|
+
include LICENSE.md
|
|
6
|
+
include COMMERCIAL_LICENSE_REQUIRED.md
|
|
7
|
+
include NOTICE
|
|
8
|
+
include README.md
|
|
9
|
+
include CHANGELOG.md
|
|
10
|
+
include CONTRIBUTING.md
|
|
11
|
+
include GOVERNANCE.md
|
|
12
|
+
include SECURITY.md
|
|
13
|
+
include SUPPORT.md
|
|
14
|
+
include THIRD_PARTY_NOTICES.md
|
|
15
|
+
include TRADEMARKS.md
|
|
16
|
+
include REPOSITORY_STATUS.md
|
|
17
|
+
include RELEASE_NOTES_v0_*.md
|
|
18
|
+
include FRONTMATTERING_v0_4_2_RELEASE_SUMMARY.md
|
|
19
|
+
include FRONTMATTERING_V0_4_2_DELIVERY_NOTE.md
|
|
20
|
+
recursive-include .github *.md *.yml *.yaml
|
|
21
|
+
recursive-include benchmarks/cold_start_v1 *.md *.yaml *.json *.py
|
|
22
|
+
recursive-include contracts *.md
|
|
23
|
+
recursive-include kernel *.md *.yaml *.json *.py
|
|
24
|
+
recursive-include tests *.py
|
|
25
|
+
prune **/__pycache__
|
|
26
|
+
prune **/.pytest_cache
|
|
27
|
+
prune build
|
|
28
|
+
prune dist
|
|
29
|
+
global-exclude *.py[cod]
|
|
30
|
+
global-exclude *.pyo
|
|
31
|
+
global-exclude *.swp
|
|
32
|
+
global-exclude *.tmp
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
Frontmattering
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Lasse T.
|
|
4
|
+
All rights reserved except as expressly granted in LICENSE.md or a separate commercial license agreement.
|
|
5
|
+
|
|
6
|
+
Frontmattering is source-available software. Individual personal use and time-boxed professional/organizational evaluation are permitted under LICENSE.md. Professional, organizational, commercial, CI/CD, hosted, client, employer, managed-service, platform, or revenue-connected use outside the evaluation grant requires a commercial license.
|
|
7
|
+
|
|
8
|
+
This distribution does not vendor third-party source-code components. Runtime dependencies, if any, are installed as separate Python distributions and remain subject to their own licenses and metadata.
|
|
9
|
+
|
|
10
|
+
“Frontmattering” is the public product name. Historical internal names may appear only in provenance records, release history, or migration notes and are not public compatibility surfaces.
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: frontmattering
|
|
3
|
+
Version: 0.4.2
|
|
4
|
+
Summary: Governed frontmatter, freshness tethers, and validate-only runtime gates for agent-facing Markdown
|
|
5
|
+
Author: Lasse T.
|
|
6
|
+
License-Expression: LicenseRef-FRONTMATTERING-Individual-Use-1.2
|
|
7
|
+
Project-URL: Homepage, https://frontmattering.com
|
|
8
|
+
Project-URL: Repository, https://github.com/frontmattering/frontmattering
|
|
9
|
+
Project-URL: Issues, https://github.com/frontmattering/frontmattering/issues
|
|
10
|
+
Keywords: markdown,frontmatter,documentation,governance,ai-agents,validation
|
|
11
|
+
Classifier: Development Status :: 3 - Alpha
|
|
12
|
+
Classifier: Environment :: Console
|
|
13
|
+
Classifier: Intended Audience :: Developers
|
|
14
|
+
Classifier: Programming Language :: Python :: 3
|
|
15
|
+
Classifier: Programming Language :: Python :: 3 :: Only
|
|
16
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
17
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
18
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
19
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
20
|
+
Classifier: Topic :: Documentation
|
|
21
|
+
Classifier: Topic :: Software Development :: Quality Assurance
|
|
22
|
+
Requires-Python: >=3.10
|
|
23
|
+
Description-Content-Type: text/markdown
|
|
24
|
+
License-File: LICENSE.md
|
|
25
|
+
License-File: COMMERCIAL_LICENSE_REQUIRED.md
|
|
26
|
+
License-File: NOTICE
|
|
27
|
+
License-File: THIRD_PARTY_NOTICES.md
|
|
28
|
+
License-File: TRADEMARKS.md
|
|
29
|
+
Requires-Dist: PyYAML>=6.0
|
|
30
|
+
Requires-Dist: markdown-it-py>=4.0.0
|
|
31
|
+
Dynamic: license-file
|
|
32
|
+
|
|
33
|
+
# Frontmattering
|
|
34
|
+
|
|
35
|
+
Frontmattering makes Markdown safer for agents.
|
|
36
|
+
|
|
37
|
+
It adds governed frontmatter, task routing, body/frontmatter freshness tethers, and a vendorable validate-only runtime gate so an agent can consume a compact brief without silently relying on stale documentation.
|
|
38
|
+
|
|
39
|
+
## Install from a local distribution
|
|
40
|
+
|
|
41
|
+
```bash
|
|
42
|
+
python -m pip install frontmattering-0.4.2-py3-none-any.whl
|
|
43
|
+
frontmattering --version
|
|
44
|
+
frontmattering doctor
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
## First-hour path
|
|
48
|
+
|
|
49
|
+
```bash
|
|
50
|
+
frontmattering init docs --set-id MYDOCS --title "My docs"
|
|
51
|
+
frontmattering promote docs/INDEX.md --profile router --in-place
|
|
52
|
+
frontmattering promote docs/*.md --profile guide --in-place
|
|
53
|
+
frontmattering tether update --add docs
|
|
54
|
+
frontmattering validate docs
|
|
55
|
+
frontmattering brief docs
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
For strict freshness enforcement, set `validation_profile: trust` in `.frontmattering/project.yaml`, then run:
|
|
59
|
+
|
|
60
|
+
```bash
|
|
61
|
+
frontmattering validate docs
|
|
62
|
+
frontmattering brief docs
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
## Runtime gate
|
|
66
|
+
|
|
67
|
+
```bash
|
|
68
|
+
frontmattering runtime pack --out frontmattering-runtime.pyz
|
|
69
|
+
python frontmattering-runtime.pyz validate docs --format json
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
The runtime artifact is validate-only. It does not expose init, promote, new, index, tether update, or authoring surfaces.
|
|
73
|
+
|
|
74
|
+
## License
|
|
75
|
+
|
|
76
|
+
Frontmattering is source-available. It is free for individual natural persons within the scope of `LICENSE.md`. Professional, organizational, commercial, client, employer, CI/CD, hosted, managed-service, platform, consulting, or revenue-connected use requires a paid commercial license.
|
|
77
|
+
|
|
78
|
+
Frontmattering is not open-source software under the Open Source Definition because professional and organizational use is restricted without a commercial license.
|
|
79
|
+
|
|
80
|
+
Runtime dependency status is recorded in `THIRD_PARTY_NOTICES.md`; project notices are recorded in `NOTICE`.
|
|
81
|
+
|
|
82
|
+
## Claim boundary
|
|
83
|
+
|
|
84
|
+
A `FRESH` brief means the current body bytes and canonical trust-bearing frontmatter fields match their mechanical tether. It does not prove semantic summary correctness, human approval, external adoption, or production suitability.
|
|
85
|
+
|
|
86
|
+
A `STALE` or `UNTETHERED` summary must not be relied on without reading the body.
|
|
87
|
+
|
|
88
|
+
|
|
89
|
+
## Publication status
|
|
90
|
+
|
|
91
|
+
This v0.4.2 package is a PyPI-clear technical candidate after license/notice cleanup. Custom license text should still receive legal review before paid commercial sales.
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
# Frontmattering
|
|
2
|
+
|
|
3
|
+
Frontmattering makes Markdown safer for agents.
|
|
4
|
+
|
|
5
|
+
It adds governed frontmatter, task routing, body/frontmatter freshness tethers, and a vendorable validate-only runtime gate so an agent can consume a compact brief without silently relying on stale documentation.
|
|
6
|
+
|
|
7
|
+
## Install from a local distribution
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
python -m pip install frontmattering-0.4.2-py3-none-any.whl
|
|
11
|
+
frontmattering --version
|
|
12
|
+
frontmattering doctor
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## First-hour path
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
frontmattering init docs --set-id MYDOCS --title "My docs"
|
|
19
|
+
frontmattering promote docs/INDEX.md --profile router --in-place
|
|
20
|
+
frontmattering promote docs/*.md --profile guide --in-place
|
|
21
|
+
frontmattering tether update --add docs
|
|
22
|
+
frontmattering validate docs
|
|
23
|
+
frontmattering brief docs
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
For strict freshness enforcement, set `validation_profile: trust` in `.frontmattering/project.yaml`, then run:
|
|
27
|
+
|
|
28
|
+
```bash
|
|
29
|
+
frontmattering validate docs
|
|
30
|
+
frontmattering brief docs
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
## Runtime gate
|
|
34
|
+
|
|
35
|
+
```bash
|
|
36
|
+
frontmattering runtime pack --out frontmattering-runtime.pyz
|
|
37
|
+
python frontmattering-runtime.pyz validate docs --format json
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
The runtime artifact is validate-only. It does not expose init, promote, new, index, tether update, or authoring surfaces.
|
|
41
|
+
|
|
42
|
+
## License
|
|
43
|
+
|
|
44
|
+
Frontmattering is source-available. It is free for individual natural persons within the scope of `LICENSE.md`. Professional, organizational, commercial, client, employer, CI/CD, hosted, managed-service, platform, consulting, or revenue-connected use requires a paid commercial license.
|
|
45
|
+
|
|
46
|
+
Frontmattering is not open-source software under the Open Source Definition because professional and organizational use is restricted without a commercial license.
|
|
47
|
+
|
|
48
|
+
Runtime dependency status is recorded in `THIRD_PARTY_NOTICES.md`; project notices are recorded in `NOTICE`.
|
|
49
|
+
|
|
50
|
+
## Claim boundary
|
|
51
|
+
|
|
52
|
+
A `FRESH` brief means the current body bytes and canonical trust-bearing frontmatter fields match their mechanical tether. It does not prove semantic summary correctness, human approval, external adoption, or production suitability.
|
|
53
|
+
|
|
54
|
+
A `STALE` or `UNTETHERED` summary must not be relied on without reading the body.
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
## Publication status
|
|
58
|
+
|
|
59
|
+
This v0.4.2 package is a PyPI-clear technical candidate after license/notice cleanup. Custom license text should still receive legal review before paid commercial sales.
|