Phase 5: scaffold Crucible (sow-tools) — dispatcher + builder shims, container, PR-first CI, fail-closed (D11, D19).
This commit is contained in:
@@ -1,54 +0,0 @@
|
||||
package topdata
|
||||
|
||||
import "strings"
|
||||
|
||||
func normalizePreservedSectionBodies(content string) string {
|
||||
var out strings.Builder
|
||||
offset := 0
|
||||
for {
|
||||
startRel := strings.Index(content[offset:], manualStartMarkerPrefix)
|
||||
if startRel < 0 {
|
||||
out.WriteString(content[offset:])
|
||||
break
|
||||
}
|
||||
start := offset + startRel
|
||||
startEndRel := strings.Index(content[start:], "-->")
|
||||
if startEndRel < 0 {
|
||||
out.WriteString(content[offset:])
|
||||
break
|
||||
}
|
||||
startMarker := content[start : start+startEndRel+len("-->")]
|
||||
id := markerID(startMarker)
|
||||
if id == "" {
|
||||
out.WriteString(content[offset : start+len(startMarker)])
|
||||
offset = start + len(startMarker)
|
||||
continue
|
||||
}
|
||||
endPrefix := manualEndMarkerPrefix + " id=\"" + id + "\""
|
||||
endRel := strings.Index(content[start+len(startMarker):], endPrefix)
|
||||
if endRel < 0 {
|
||||
out.WriteString(content[offset:])
|
||||
break
|
||||
}
|
||||
end := start + len(startMarker) + endRel
|
||||
endEndRel := strings.Index(content[end:], "-->")
|
||||
if endEndRel < 0 {
|
||||
out.WriteString(content[offset:])
|
||||
break
|
||||
}
|
||||
endMarker := content[end : end+endEndRel+len("-->")]
|
||||
out.WriteString(content[offset:start])
|
||||
out.WriteString(startMarker)
|
||||
out.WriteString("\n<!-- preserved-section-body -->\n")
|
||||
out.WriteString(endMarker)
|
||||
offset = end + len(endMarker)
|
||||
}
|
||||
return out.String()
|
||||
}
|
||||
|
||||
func defaultWikiManualSections() []wikiManualSection {
|
||||
return []wikiManualSection{
|
||||
{ID: "user_top", Alias: "UserTopSection", Heading: "", InitialHTML: "<p></p>"},
|
||||
{ID: "user_bottom", Alias: "UserBottomSection", Heading: "", InitialHTML: "<p></p>"},
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user