ownsona/ # repo root
bld # Kiss build script
src/
main/
backend/
application.ini.example # redacted template (tracked)
application.ini # live secrets (gitignored)
KissInit.groovy # Kiss app bootstrap
core/ # Kiss framework (do NOT modify)
org/kissweb/MCPServerBase.java
org/kissweb/restServer/MainServlet.java
precompiled/
ai/ownsona/
MCPServer.java # @WebServlet("/mcp")
Config.java # application.ini loader
SecretScanner.java
TextNormalizer.java
TagNormalizer.java
VectorFormat.java
ApplicationIniWriter.java
embeddings/
EmbeddingProvider.java
OpenAIEmbeddingProvider.java
MockEmbeddingProvider.java
ReembedJob.java
memory/
MemoryService.java
MemoryRepository.java
...
migrations/
Migration.java
MigrationRegistry.java
DbMigrator.java
Migration002AddRecordVersion.java
Migration003AddFreshness.java
Migration004AddTombstones.java
test/
precompiled/ai/ownsona/ # JUnit 5 tests
sql/
001_init.sql # bootstrap schema
setup_db.sh # role + extensions + 001_init.sql
migrator_prep.sql # one-time prep for existing installs
smoke_test.sh # end-to-end curl drive
run_tests.sh # JUnit runner
ownsona.service # systemd unit
ownsona-backup.service / .timer
cli/ # portable C command-line client
Makefile
config.ini.example
include/ownsona.h
src/*.c
manual/ # this manual (TexInfo + HTML output)
REEMBED.md # short reference; full chapter is in manual/
OWNSONA_SPEC.md # functional spec
INSTALL.md # install walkthrough (long-form)
MCPServer.md # server design notes
OpenAI.md # OpenAI integration notes
CLI.md # CLI reference (short-form)
README.md