Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
46 commits
Select commit Hold shift + click to select a range
70701a6
Initial batch of outline extractions and replacements (WIP)
sthagen Nov 15, 2025
e22601a
Transformed more outlines and fixed the notaion for instance inserts …
sthagen Nov 15, 2025
befd31a
Transformed some more outlines from vulnerabilities (WIP)
sthagen Nov 15, 2025
d0484d5
Added more vuln outlines, specialized strings for DateTime and Enum, …
sthagen Nov 15, 2025
16384a7
csaf_version is a String.Enum
sthagen Nov 15, 2025
68d5915
Completed product_tree outline migration
sthagen Nov 15, 2025
44edbb3
Specialized String.Pattern elements and added forgotten String.Enum
sthagen Nov 15, 2025
5da0eb8
Completed outline migration for document object
sthagen Nov 16, 2025
03452b6
Completed vulnerabilities outlines and some fixes
sthagen Nov 16, 2025
d15e032
Completed dollar-defs outlines
sthagen Nov 16, 2025
91a7728
Tagged outline fneces with json-path(s) and fixed key-mismatches
sthagen Nov 23, 2025
e41c505
Fixed type error
sthagen Nov 23, 2025
5da5b21
Hacked together naive outline validator
sthagen Nov 23, 2025
8b93ee8
Fixed type of generator.date in info models
sthagen Nov 24, 2025
881c840
Added some more hackish sub-type harvesting
sthagen Nov 24, 2025
5dbe205
Refactored level warp and added some bogus linter joy
sthagen Nov 24, 2025
e1fb608
First glob capable validator
sthagen Nov 24, 2025
0ce9c35
Merge branch 'editor-revision-2025-11-26' into valid-outlines-as-obje…
sthagen Nov 25, 2025
dfc0637
Multi file and mode validator (WIP)
sthagen Nov 25, 2025
05c9931
Renamed top-level indicator top csaf-instance
sthagen Nov 28, 2025
fe5d118
Amended the typographical conventions section with the information mo…
sthagen Jan 27, 2026
d87df48
Rendered delivery items
sthagen Jan 28, 2026
4b1b010
Fixed annotated yaml fence handling and excluded hash starting lines …
sthagen Feb 6, 2026
b14cddc
Adapted font size for rendered fences
sthagen Feb 6, 2026
1de6eba
Added forgotten annotation (untested)
sthagen Feb 6, 2026
226f5f3
Updated mappings and liitos setup to survive newer pandoc output
sthagen Feb 6, 2026
8442cc7
Rendered delivery items (without special local patches)
sthagen Feb 6, 2026
f25d2d4
Merge branch 'editor-revision-2026-01-28' into valid-outlines-as-obje…
sthagen Feb 6, 2026
70c528b
Merge branch 'editor-revision-2026-01-28' into valid-outlines-as-obje…
sthagen Feb 9, 2026
324cfb9
Added missing example ids to mappings
sthagen Feb 9, 2026
78c9543
Rendered user facing delivery items
sthagen Feb 9, 2026
d7a96c7
Merge branch 'editor-revision-2026-02-25' into valid-outlines-as-obje…
sthagen Feb 24, 2026
ab85317
Removed outlines and added to git ignore (review feedback from tschmidt)
sthagen Feb 25, 2026
cf4d55f
Added explicit slug to match the section mappings
sthagen Feb 25, 2026
773d2e0
Reverted hack from when hashes as first characters in lines of code b…
sthagen Feb 25, 2026
c97ed5e
Update csaf_2.1/prose/edit/src/introduction-05-typographical-conventi…
sthagen Feb 25, 2026
f366325
Update csaf_2.1/prose/edit/src/introduction-05-typographical-conventi…
sthagen Feb 25, 2026
296095b
Update csaf_2.1/prose/edit/src/schema-elements-02-props-02-document.md
sthagen Feb 25, 2026
e802ae9
Update csaf_2.1/prose/edit/src/schema-elements-01-definitions.md
sthagen Feb 25, 2026
dd3286d
Update csaf_2.1/prose/edit/src/schema-elements-01-defs-03-full-produc…
sthagen Feb 25, 2026
2e39566
Update csaf_2.1/prose/edit/src/schema-elements-01-defs-06-product-gro…
sthagen Feb 25, 2026
0d9f594
Update csaf_2.1/prose/edit/src/schema-elements-01-defs-07-product-gro…
sthagen Feb 25, 2026
7c8c816
Update csaf_2.1/prose/edit/src/schema-elements-02-props-04-vulnerabil…
sthagen Feb 25, 2026
f390545
Reviewer feedback on additional facetted string types
sthagen Feb 25, 2026
abfa1d6
Merge branch 'editor-revision-2026-02-25' into valid-outlines-as-obje…
sthagen Feb 27, 2026
ea303c3
Merge branch 'editor-revision-2026-02-25' into valid-outlines-as-obje…
sthagen Mar 9, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -23,3 +23,4 @@ venv.bak/
local*
.vscode/
build/
outline/
19 changes: 17 additions & 2 deletions csaf_2.1/prose/edit/bin/lapidify.py
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,7 @@
# Table of Contents
"""
CLEAN_MD_START = '# Introduction'
FENCED_BLOCK_FLIP_FLOP = '```'
LOGO_URL = 'https://docs.oasis-open.org/templates/OASISLogo-v3.0.png'
LOGO_LOCAL_PATH = 'images/OASISLogo-v3.0.png'
TOP_LOGO_LINE = f'![OASIS Logo]({LOGO_URL})'
Expand Down Expand Up @@ -343,11 +344,22 @@ def main(args: list[str]) -> int:
if first_meta_slot is None:
first_meta_slot = len(lines) + len(part_lines) - 1

simplified = []
for line in part_lines:
if line.startswith(f'{FENCED_BLOCK_FLIP_FLOP}yaml <!--'):
simplified.append(f'{FENCED_BLOCK_FLIP_FLOP}yaml')
continue
simplified.append(line)
part_lines = list(simplified)

if resource.name in CITATION_SOURCES: # TODO: citation management -> class
patched = []
in_citation = False
in_fenced_block = False
for line in part_lines:
if line.startswith(HASH):
if line.startswith(FENCED_BLOCK_FLIP_FLOP):
in_fenced_block = not in_fenced_block
if line.startswith(HASH) and not in_fenced_block:
patched.append(line)
continue
if line.strip() and not line.startswith(COLON):
Expand Down Expand Up @@ -450,7 +462,10 @@ def main(args: list[str]) -> int:
clean_headings = False
current_cs = None
cs_of_slot: list[Union[str, None]] = [None for _ in lines]
in_fenced_block = False
for slot, line in enumerate(lines):
if line.startswith(FENCED_BLOCK_FLIP_FLOP):
in_fenced_block = not in_fenced_block
# MAYBE_MAKE_TOP_LOGO_LOCAL # NEW
if line.rstrip() == TOP_LOGO_LINE:
lines[slot] = line.replace(LOGO_URL, LOGO_LOCAL_PATH, 1)
Expand All @@ -462,7 +477,7 @@ def main(args: list[str]) -> int:
clean_headings = True
cs_of_slot[slot] = current_cs
for tag in sec_cnt:
if line.startswith(tag) and clean_headings:
if line.startswith(tag) and clean_headings and not in_fenced_block:
# manage counter
if not meta_hook:
# auto counters
Expand Down
Loading