<feed xmlns='http://www.w3.org/2005/Atom'>
<title>sisudoc-spine/test/reference, branch main</title>
<subtitle>SiSU Spine: document publishing and search (in D) 2015</subtitle>
<link rel='alternate' type='text/html' href='https://git.sisudoc.org/sisudoc-spine/'/>
<entry>
<title>test-abstraction-ssp re-generated</title>
<updated>2026-09-03T19:25:55+00:00</updated>
<author>
<name>Ralph Amissah</name>
<email>ralph.amissah@gmail.com</email>
</author>
<published>2026-09-03T16:44:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sisudoc.org/sisudoc-spine/commit/?id=569d38694b10e3de1dc493f5b5ac08f99164b1a0'/>
<id>569d38694b10e3de1dc493f5b5ac08f99164b1a0</id>
<content type='text'>
Several structure fields (now) computed in ocda do not yet have a
consumer outside the `.ssp` writer (which shares ocda fields in a
PEG parsable .ssp file). Their addition is to facilitate future
output processing: each representing document structure
information that document output generators of various formats,
such as html, epub, latex, sql and any DOM based / tree-graph
(node based hierarchical) representations, previously had to, or
would have to, work out for themselves based on what ocda offered
(without them).

Computing them (upstream) in ocda once and sharing them (and
providing the .ssp), means that:

- future output formats can start from prepared structure rather
  than deriving it;

- existing generators can be simplified to consume them instead
  of re-deriving;

- a (dlang) generator could in principle be populated either from
  ocda directly or from a `.ssp` file;

- `.ssp` being PEG parsable puts the same prepared structure in
  reach of implementations in other languages.

`test/test-abstraction-ssp.sh` the `.ssp` reference regression
test is used to catch regression in ocda including these as yet
unused fields, which otherwise would remain unseen until used by
other output-format consumers. This also is the reason issues now
made easily visible and are being addressed (without issue to
existing output generators).

(assisted by Claude-Code)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Several structure fields (now) computed in ocda do not yet have a
consumer outside the `.ssp` writer (which shares ocda fields in a
PEG parsable .ssp file). Their addition is to facilitate future
output processing: each representing document structure
information that document output generators of various formats,
such as html, epub, latex, sql and any DOM based / tree-graph
(node based hierarchical) representations, previously had to, or
would have to, work out for themselves based on what ocda offered
(without them).

Computing them (upstream) in ocda once and sharing them (and
providing the .ssp), means that:

- future output formats can start from prepared structure rather
  than deriving it;

- existing generators can be simplified to consume them instead
  of re-deriving;

- a (dlang) generator could in principle be populated either from
  ocda directly or from a `.ssp` file;

- `.ssp` being PEG parsable puts the same prepared structure in
  reach of implementations in other languages.

`test/test-abstraction-ssp.sh` the `.ssp` reference regression
test is used to catch regression in ocda including these as yet
unused fields, which otherwise would remain unseen until used by
other output-format consumers. This also is the reason issues now
made easily visible and are being addressed (without issue to
existing output generators).

(assisted by Claude-Code)
</pre>
</div>
</content>
</entry>
<entry>
<title>test-abstraction-ssp re-generated, abstraction fix</title>
<updated>2026-08-30T17:36:43+00:00</updated>
<author>
<name>Ralph Amissah</name>
<email>ralph.amissah@gmail.com</email>
</author>
<published>2026-08-30T17:33:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sisudoc.org/sisudoc-spine/commit/?id=446d4dc64ffb667fee562880437508ab22765d54'/>
<id>446d4dc64ffb667fee562880437508ab22765d54</id>
<content type='text'>
test-abstraction-ssp re-generated: document abstraction (ocda)
document structure representation fixes (verify)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
test-abstraction-ssp re-generated: document abstraction (ocda)
document structure representation fixes (verify)
</pre>
</div>
</content>
</entry>
<entry>
<title>.ssp: doc structure related fixes (&amp; to epub toc_nav)</title>
<updated>2026-08-29T00:15:35+00:00</updated>
<author>
<name>Ralph Amissah</name>
<email>ralph.amissah@gmail.com</email>
</author>
<published>2026-08-28T23:07:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sisudoc.org/sisudoc-spine/commit/?id=45a73e4464fb662d481d31ebf8d3ef204296159a'/>
<id>45a73e4464fb662d481d31ebf8d3ef204296159a</id>
<content type='text'>
for document abstraction and its .ssp output, removed the
requirement of including --abstraction &amp; --serial flags to produce
correct output (for: .dom_status, .dom_status_collapsed &amp;
.last_descendant)

- meta_processing_xml_dom() includes show_abstraction, so --pod2
  and --show-abstraction run the dom pass; last_descendant is
  derived from that pass via after_doc_get_descendants()

The accumulators are now verified as eight wide locals of
docAbstraction(), so each document starts clean and no two threads
share one.
- bug: the four dom accumulators were template scope (shared) and
  nine wide, while their end of document reset was eight wide, so
  the first document of a run differed from the rest and parallel
  runs raced on one buffer, (which also mis-nested epub toc_nav)

test/ reference .ssp regenerated: accelerando only, trailing zero
dropped.
test-abstraction-ssp.sh now runs parallel and diffs output against
a serial run.

(assisted by Claude-Code)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
for document abstraction and its .ssp output, removed the
requirement of including --abstraction &amp; --serial flags to produce
correct output (for: .dom_status, .dom_status_collapsed &amp;
.last_descendant)

- meta_processing_xml_dom() includes show_abstraction, so --pod2
  and --show-abstraction run the dom pass; last_descendant is
  derived from that pass via after_doc_get_descendants()

The accumulators are now verified as eight wide locals of
docAbstraction(), so each document starts clean and no two threads
share one.
- bug: the four dom accumulators were template scope (shared) and
  nine wide, while their end of document reset was eight wide, so
  the first document of a run differed from the rest and parallel
  runs raced on one buffer, (which also mis-nested epub toc_nav)

test/ reference .ssp regenerated: accelerando only, trailing zero
dropped.
test-abstraction-ssp.sh now runs parallel and diffs output against
a serial run.

(assisted by Claude-Code)
</pre>
</div>
</content>
</entry>
<entry>
<title>test build .ssp requires --serial (--no-parallel) run</title>
<updated>2026-08-29T00:15:35+00:00</updated>
<author>
<name>Ralph Amissah</name>
<email>ralph.amissah@gmail.com</email>
</author>
<published>2026-08-28T19:32:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sisudoc.org/sisudoc-spine/commit/?id=b52e78dac6179fbc43217a8993889a6fabebc9dc'/>
<id>b52e78dac6179fbc43217a8993889a6fabebc9dc</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>test build .ssp requires --abstraction to be run</title>
<updated>2026-08-29T00:15:35+00:00</updated>
<author>
<name>Ralph Amissah</name>
<email>ralph.amissah@gmail.com</email>
</author>
<published>2026-08-28T19:30:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sisudoc.org/sisudoc-spine/commit/?id=bf4c8f3d12cbe388998a4a975ee380b57e2178da'/>
<id>bf4c8f3d12cbe388998a4a975ee380b57e2178da</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>run test-abstraction-ssp.sh update</title>
<updated>2026-08-28T14:42:56+00:00</updated>
<author>
<name>Ralph Amissah</name>
<email>ralph.amissah@gmail.com</email>
</author>
<published>2026-08-27T19:59:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sisudoc.org/sisudoc-spine/commit/?id=2a6d611754eedf2d1dbb3f587c5c9aa3c04f066b'/>
<id>2a6d611754eedf2d1dbb3f587c5c9aa3c04f066b</id>
<content type='text'>
generrate new reference set of .ssp
test-abstraction-ssp.sh --generate
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
generrate new reference set of .ssp
test-abstraction-ssp.sh --generate
</pre>
</div>
</content>
</entry>
<entry>
<title>digest (sha256) for document root heading (title)</title>
<updated>2026-07-31T18:06:50+00:00</updated>
<author>
<name>Ralph Amissah</name>
<email>ralph.amissah@gmail.com</email>
</author>
<published>2026-07-31T03:19:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sisudoc.org/sisudoc-spine/commit/?id=5193814934f6cd64ed5554fa262ec579fbef1ab0'/>
<id>5193814934f6cd64ed5554fa262ec579fbef1ab0</id>
<content type='text'>
corrects an omission this hould have been included to start with

reference tests texts regenerated
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
corrects an omission this hould have been included to start with

reference tests texts regenerated
</pre>
</div>
</content>
</entry>
<entry>
<title>ssp test-abstraction-ssp.sh script minor</title>
<updated>2026-05-15T23:25:14+00:00</updated>
<author>
<name>Ralph Amissah</name>
<email>ralph.amissah@gmail.com</email>
</author>
<published>2026-05-15T21:37:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sisudoc.org/sisudoc-spine/commit/?id=28a30710fafeb423acaa7dad82f9daf009023b4c'/>
<id>28a30710fafeb423acaa7dad82f9daf009023b4c</id>
<content type='text'>
- test/test-abstraction-ssp.sh script minor improvement

- result change reflects content corrections: name spelling &amp; a markup
  error, document abstracton, ssp verified ok (may be considered a test)

(assisted by Claude-Code)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- test/test-abstraction-ssp.sh script minor improvement

- result change reflects content corrections: name spelling &amp; a markup
  error, document abstracton, ssp verified ok (may be considered a test)

(assisted by Claude-Code)
</pre>
</div>
</content>
</entry>
<entry>
<title>add .ssp regression test script and reference files</title>
<updated>2026-04-23T02:10:49+00:00</updated>
<author>
<name>Ralph Amissah</name>
<email>ralph.amissah@gmail.com</email>
</author>
<published>2026-04-23T00:25:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sisudoc.org/sisudoc-spine/commit/?id=3e60254927f7b7bc271586146f9f49dc756b4027'/>
<id>3e60254927f7b7bc271586146f9f49dc756b4027</id>
<content type='text'>
test/test-abstraction-ssp.sh: shell script that generates
.ssp files for all sample documents and diffs against
committed reference files in test/reference/abstraction/.

Usage:
  ./test/test-abstraction-ssp.sh --generate ./bin/spine-ldc
  ./test/test-abstraction-ssp.sh ./bin/spine-ldc

Exits 0 if all .ssp files match, 1 if differences found.
Reports changed, missing, and new files.

test/reference/abstraction/: 35 reference .ssp files
generated from the current abstraction, covering all
sample documents including 9-language live-manual.

Co-Authored-By: Anthropic Claude Opus 4.6 (1M context)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
test/test-abstraction-ssp.sh: shell script that generates
.ssp files for all sample documents and diffs against
committed reference files in test/reference/abstraction/.

Usage:
  ./test/test-abstraction-ssp.sh --generate ./bin/spine-ldc
  ./test/test-abstraction-ssp.sh ./bin/spine-ldc

Exits 0 if all .ssp files match, 1 if differences found.
Reports changed, missing, and new files.

test/reference/abstraction/: 35 reference .ssp files
generated from the current abstraction, covering all
sample documents including 9-language live-manual.

Co-Authored-By: Anthropic Claude Opus 4.6 (1M context)
</pre>
</div>
</content>
</entry>
</feed>
