idea_world_labDEV JOURNAL
Saturday, June 27, 2026

June 27, 2026

  • After rereading the docs/roadmaps/2026-06-26-source-to-ast-input-flow.md written on the 26th, I judged that the overall consistency of the document was lacking
  • The initially written 27th document contained many object and structure descriptions, making it difficult to trace how the input actually flows
    • Then I readjusted the document direction based on PR feedback
    • Modified it to explicitly state, for each expanded input line # <relative path>, which file and line go into the AST Parser
    • Using actual line ranges such as E020‑E034 in player.gd, I organized the flow where that portion of the text leads to Retriever search and LLM judgment
    • File paths are for tracing only, and I fixed the rule that only the chunkText of code/text fragments goes into Retriever search
  • docs_chunks, api_mapping, label_prototypes are searched in the same way without special treatment, and the search candidates are re‑validated by the LLM
  • Today’s work aimed to lock down, in documentation, how input and output connect at each point before actual implementation, so that the AI does not arbitrarily change ranges or flow into abstract structural explanations
  • Implemented a Source Flow Debugger web tool to verify the documented flow
    • Ran it locally at http://127.0.0.1:8010/ to directly inspect Godot project input
    • Split the project input expanded by # <relative path> back into file units, treating .gd as AST‑type chunks and .godot/.tscn as direct chunks
    • Confirmed that a small Godot project is broken down into 5 files, 14 chunks, AST 9, Direct 5
    • Excluded documentation files such as README.md from source‑analysis mode, and displayed the exclusion fact and reason on screen
  • Added debugging UI per chunk
    • Placed docs_chunks search, api_mapping search, label_prototypes search, Validate JSONL buttons under each chunk
    • Instead of a global table checkbox, searches are performed for each table right below the current chunk
    • Retriever input shows only { "chunkText": "..." } after removing file path, line number, and prompt
    • Qwen verification is used only in the prompt + chunkText + retrieved JSONL step
  • Fixed issues discovered while actually using the web debugger
    • Removed the problem where sample Godot code was automatically inserted on page load
    • Cleared the upload input value on click so that re‑uploading the same file/folder triggers the browser change event again
    • Added cache-control: no-store to static file responses to prevent old JS from persisting during development
    • Guarded client.end() calls so that cleanup works safely even if client creation/connection fails in the PostgreSQL search path
  • Recorded the actual implementation results in a separate document with screenshots
  • As of now, chunk‑level decomposition is considered reasonably successful; the next key focus is how to actually perform DB searches
    • Need to verify which JSONL candidates return from docs_chunks, api_mapping, label_prototypes using only chunkText
    • Must determine how Qwen verification decides relevance and discards candidates based on the retrieved JSONL
  • Before adding DB search, I used GPT to create demo Godot chunks and related/unrelated JSONL to experiment with matching prompts
    • Initially I asked “Does this JSONL contain content that corresponds to the source code? Answer only yes/no,” but both related and unrelated JSONL were answered “yes”
    • Then I limited “yes” to cases where at least one of source_api, source_pattern, match_terms, required_when_seen_in_code, before_code directly matches the actual SOURCE_CODE string/API call
    • By avoiding broad word similarity or the LLM’s prior Godot knowledge and looking only at the string evidence in the JSONL, related JSONL returned “yes” and unrelated returned “no”
    • This experiment showed that the Qwen verification step after DB search should first judge whether the retrieved JSONL contains a string directly matching the current chunk, rather than relying on “plausible semantic similarity”
    • Observation log: JSONL collection status‑based test repository selection observation log
    • Observation log: JSONL evidence‑matching prompt observation
    • Retrospective: docs/retrospectives/2026-06-27.md
  • Tomorrow I will create several demo sets of Godot chunks with related/unrelated JSONL and repeatedly test how Qwen derives “yes”/“no” based on evidence