14.3 File and directory layout

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
                CronTasks/                  # Kiss Cron: crontab + job shims
                    crontab
                    Consolidate.groovy      # -> ConsolidationJob (Tier 3)
                    ExtractRelations.groovy # -> GraphExtractionJob (Tier 4)
            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
                    llm/                    # optional generative seam + background jobs
                        GenerativeProvider.java
                        OpenAIGenerativeProvider.java
                        MockGenerativeProvider.java
                        ConsolidationJob.java   # merge/dedup + conflict-resolution
                        GraphExtractionJob.java # relation-triple extraction
                    memory/
                        MemoryService.java
                        MemoryRepository.java
                        RelationRepository.java     # relation graph
                        RelationService.java        # multi-hop traversal
                        ...
                    migrations/
                        Migration.java
                        MigrationRegistry.java
                        DbMigrator.java
                        Migration002AddRecordVersion.java
                        ...                         # 003-006
                        Migration007AddContextVector.java  # Tier 4 ph1
                        Migration008AddRelations.java      # Tier 4 ph2
        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
    user-manual/                            # this manual (TexInfo + HTML output)
    REEMBED.md                              # short reference; full chapter is in user-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