Journal 2025-04-03
My scrappy coding around src/engine in #:transmissions has come back to bite me on the bum.
After the earliest hacky versions, I did start separating out src/model modules to (primarily) represent the state, src/engine for the operations. But because the system was working I got distracted...
./trans -v accumulate -m '{"foreach": ["first TEST_PASSED", "second TEST_PASSED", "third TEST_PASSED"]}'
refactoring
move SlowableProcessor to engine
rename ProcessorSettings to Configuration
rename AppResolver to engine/SystemResolver
When I try running a transmission, eg. src/applications/test/config-setting/transmissions.ttl it's not picking up the configuration values as it should around line 58 in src/engine/ProcessorSettings.js, the dataset appears to be empty, although it does have the correct content nearby. I'm missing something obvious somewhere. Can you please trace back to see if you can find where it's getting lost. Here's some relevant debug log:
TransmissionBuilder.buildTransmissions transmissionConfig = http://purl.org/stuff/transmissions/DE http://www.w3.org/1999/02/22-rdf-syntax-ns#type http://purl.org/stuff/transmissions/DeadEnd . http://purl.org/stuff/transmissions/H http://www.w3.org/1999/02/22-rdf-syntax-ns#type http://purl.org/stuff/transmissions/Halt . http://purl.org/stuff/transmissions/SC http://www.w3.org/1999/02/22-rdf-syntax-ns#type http://purl.org/stuff/transmissions/ShowConfig . http://purl.org/stuff/transmissions/SM http://www.w3.org/1999/02/22-rdf-syntax-ns#type http://purl.org/stuff/transmissions/ShowMessage . http://purl.org/stuff/transmissions/N http://www.w3.org/1999/02/22-rdf-syntax-ns#type http://purl.org/stuff/transmissions/NOP . http://purl.org/stuff/transmissions/UF http://www.w3.org/1999/02/22-rdf-syntax-ns#type http://purl.org/stuff/transmissions/Unfork . http://purl.org/stuff/transmissions/testSetting http://www.w3.org/1999/02/22-rdf-syntax-ns#type http://purl.org/stuff/transmissions/Transmission . http://purl.org/stuff/transmissions/testSetting http://purl.org/stuff/transmissions/pipe _:b1 . _:b1 http://www.w3.org/1999/02/22-rdf-syntax-ns#first http://purl.org/stuff/transmissions/ts10 . _:b1 http://www.w3.org/1999/02/22-rdf-syntax-ns#rest http://www.w3.org/1999/02/22-rdf-syntax-ns#nil . http://purl.org/stuff/transmissions/ts10 http://www.w3.org/1999/02/22-rdf-syntax-ns#type http://purl.org/stuff/transmissions/TestSetting . http://purl.org/stuff/transmissions/ts10 http://purl.org/stuff/transmissions/settings http://purl.org/stuff/transmissions/theSettingsNode .
transmissionID = http://purl.org/stuff/transmissions/testSetting
TransmissionBuilder.constructTransmission
- ***** Construct Transmission : http://purl.org/stuff/transmissions/testSetting Creating processor: Node: :ts10 Type: :TestSetting SettingsNode: :theSettingsNode
TransmissionBuilder.createProcessor, config = [object Object]
Processor constructor : *** Processor TestSettings id = undefined label = undefined type = undefined description = undefined
settingsNodeValue = none
settings = undefined
config = undefined
parent.app = undefined this.appConfig = undefined this.transmissionConfig = undefined this.config = undefined configDataset : http://purl.org/stuff/transmissions/theSettingsNode http://www.w3.org/1999/02/22-rdf-syntax-ns#type http://purl.org/stuff/transmissions/ConfigSet . http://purl.org/stuff/transmissions/theSettingsNode http://purl.org/stuff/transmissions/theSettingProperty "the setting value from config TEST_PASSEDTEST_PASSEDTEST_PASSED" .
sssssssssssssssssssssssssssssssssssss .app : Instance of Transmission with properties - { "processors": {}, "connectors": [], "parent": null, "children": {}, "path": [], "id": "http://purl.org/stuff/transmissions/testSetting", "whiteboard": { "accumulators": {} }, "label": "" } Transmissions has length 1 **************** Message with merged context: transmission = Transmission : http://purl.org/stuff/transmissions/testSetting path: , depth: 0, children: Processors:
- ts10 a *** Processor TestSettings id = http://purl.org/stuff/transmissions/ts10 label = undefined type = [object Object] description = undefined settingsNodeValue = http://purl.org/stuff/transmissions/theSettingsNode settings = undefined config = undefined
Connectors:
Transmission.process
- Run Transmission : http://purl.org/stuff/transmissions/testSetting |-> ts10 a TestSettings Processor.getProperty, this.configDataset : http://purl.org/stuff/transmissions/theSettingsNode http://www.w3.org/1999/02/22-rdf-syntax-ns#type http://purl.org/stuff/transmissions/ConfigSet . http://purl.org/stuff/transmissions/theSettingsNode http://purl.org/stuff/transmissions/theSettingProperty "the setting value from config TEST_PASSEDTEST_PASSEDTEST_PASSED" .
ProcessorSettings.getValues, property = http://purl.org/stuff/transmissions/debug Trying APP dataset undefined not found Trying TRANSMISSIONS dataset undefined not found
Trying CONFIG dataset [object Object]
Trying CONFIG dataset [object Object] _size _graphs _id _ids _entities _quads Instance of Object with properties - {} Error getting values for http://purl.org/stuff/transmissions/debug: TypeError: ptr.dataset.match is not a function or its return value is not iterable not found Processor.preProcess, debug = undefined
TestSetting.process Processor.getProperty, this.configDataset : http://purl.org/stuff/transmissions/theSettingsNode http://www.w3.org/1999/02/22-rdf-syntax-ns#type http://purl.org/stuff/transmissions/ConfigSet . http://purl.org/stuff/transmissions/theSettingsNode http://purl.org/stuff/transmissions/theSettingProperty "the setting value from config TEST_PASSEDTEST_PASSEDTEST_PASSED" .
ProcessorSettings.getValues, property = http://purl.org/stuff/transmissions/theSettingProperty Trying APP dataset undefined not found Trying TRANSMISSIONS dataset undefined not found
Trying CONFIG dataset [object Object]
Trying CONFIG dataset [object Object] _size _graphs _id _ids _entities _quads Instance of Object with properties - {} Error getting values for http://purl.org/stuff/transmissions/theSettingProperty: TypeError: ptr.dataset.match is not a function or its return value is not iterable not found
message.settingValue undefined 0