I was actually going to tackle this a bit differently, I think. I was planning to implement lighthouse fetch and push operations, making lighthouse act like a git remote. The fetch would translate everything in lighthouse into the TicGit file layout in a separate branch ('lighthouse/ticgit') and commit it if anything had changed since the last fetch.
Then I can diff and inspect and merge using the same tools I use with any other remote. Then I can push, much like i would do to a public server, which would take everything in my local ticgit branch that comes up in a diff to the lighthouse/ticgit branch and add/update/remove the lighthouse tickets. The main advantage of this is that I can re-use all the merge/inspect logic that I will have to write for working with remotes. Plus, then I have a local history of the lighthouse data, which may be kinda cool.
Hope that makes sense, but I'm not sure if that would work as well with your layout or not.
Scott