Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
1 change: 1 addition & 0 deletions .git-local-sandbox/COMMIT_EDITMSG
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
feat: Flocking Boids demo - pure NetLogo boids simulation
1 change: 1 addition & 0 deletions .git-local-sandbox/FETCH_HEAD
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
2ab185f3b7af2f296580372572db1aa08d20eaf6 branch 'main' of https://github.com/JNK234/Netlogo-LLM-Extension
1 change: 1 addition & 0 deletions .git-local-sandbox/HEAD
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
ref: refs/heads/feature/flocking-boids
1 change: 1 addition & 0 deletions .git-local-sandbox/ORIG_HEAD
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
402708bd9b98bc7ab443b1440f213a462ea96b83
63 changes: 63 additions & 0 deletions .git-local-sandbox/config
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
ignorecase = true
precomposeunicode = true
hooksPath = /dev/null
[remote "llm"]
url = https://github.com/JNK234/Netlogo-LLM-Extension.git
fetch = +refs/heads/*:refs/remotes/llm/*
[pull]
rebase = false
[branch "main"]
remote = llm
merge = refs/heads/main
[remote "thebizzle"]
url = https://github.com/TheBizzle/LLM-Extension.git
fetch = +refs/heads/*:refs/remotes/thebizzle/*
[branch "pr-1-with-path-fix"]
remote = thebizzle
merge = refs/heads/main
vscode-merge-base = thebizzle/main
vscode-merge-base = thebizzle/main
[branch "local-treasure-hunt"]
remote = llm
merge = refs/heads/claude/treasure-hunt-llm-agents-011CUWkpMWAkoBPBVG1Ut2mn
vscode-merge-base = llm/claude/treasure-hunt-llm-agents-011CUWkpMWAkoBPBVG1Ut2mn
vscode-merge-base = llm/claude/treasure-hunt-llm-agents-011CUWkpMWAkoBPBVG1Ut2mn
[branch "config-update"]
vscode-merge-base = llm/claude/treasure-hunt-llm-agents-011CUWkpMWAkoBPBVG1Ut2mn
remote = llm
merge = refs/heads/config-update
[branch "config-update-clean"]
vscode-merge-base = llm/main
[branch "config-validation-only"]
remote = llm
merge = refs/heads/config-validation-only
[branch "treasure-hunt-improvements"]
remote = llm
merge = refs/heads/treasure-hunt-improvements
vscode-merge-base = llm/config-validation-only
[branch "refactor/issue-6-code-review"]
vscode-merge-base = llm/config-update
remote = llm
merge = refs/heads/refactor/issue-6-code-review
[user]
name = JNK234
email = jwalapuramnarasimha@gmail.com
[remote "origin"]
url = https://github.com/JNK234/Netlogo-LLM-Extension.git
fetch = +refs/heads/*:refs/remotes/origin/*
[branch "feature/epiplexity-01-full-context"]
remote = origin
merge = refs/heads/feature/epiplexity-01-full-context
[branch "feature/epiplexity-02-full-context"]
remote = origin
merge = refs/heads/feature/epiplexity-02-full-context
[commit]
gpgsign = false
[branch "feature/flocking-boids"]
remote = origin
merge = refs/heads/feature/flocking-boids
1 change: 1 addition & 0 deletions .git-local-sandbox/description
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Unnamed repository; edit this file 'description' to name the repository.
3 changes: 3 additions & 0 deletions .git-local-sandbox/filter-repo/already_ran
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
This file exists to allow you to filter again without --force,
and to specify that metadata files should be updated instead
of rewritten
1 change: 1 addition & 0 deletions .git-local-sandbox/filter-repo/changed-refs
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
refs/heads/main
57 changes: 57 additions & 0 deletions .git-local-sandbox/filter-repo/commit-map
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
old new
0103521158a63b16393c0eb00d3efafc4ee386bc 0103521158a63b16393c0eb00d3efafc4ee386bc
0247efda9bedf1410e69c7a53ecabcfc434568ab b6bc78174031c6d7af66efaaba7267faa9efc42e
0aa9a913f75f26c63fecfa784a8c0dd5674d1b7c 0aa9a913f75f26c63fecfa784a8c0dd5674d1b7c
16256b094860fa296a0543318160bf4cfa85be92 16256b094860fa296a0543318160bf4cfa85be92
1748657b68b2e4a81833a6789a0db1cf542c2179 9bbe43d4f985e4181f4f778056502854e2a01d18
1d87cf63940538154a2ed050ae032c3c9056a344 1d87cf63940538154a2ed050ae032c3c9056a344
1faf9795122dedcdb187f625d117880e28beb660 1faf9795122dedcdb187f625d117880e28beb660
1fdfe6fbaa38ecc08004da86f9a198e5b1537c06 1fdfe6fbaa38ecc08004da86f9a198e5b1537c06
2198ba526a103b1f0e54e368dc793d87767fee30 2198ba526a103b1f0e54e368dc793d87767fee30
2532491def4ccebaccd35f65ca709b139128f86e 79d7e39edb477b7ed0341f0bc4b16a90b8f9cf6c
2a22133b676a30e7c077899ff45e609c518a3f28 2a22133b676a30e7c077899ff45e609c518a3f28
2dc1c35fd8d6b652789804981a34c6b246396177 1d25bf88ede8c5724a39ab570de76215043c8b45
3a3b80eab4360c0b34b486f6dd8533b459e0ecf8 3a3b80eab4360c0b34b486f6dd8533b459e0ecf8
3e17196ef374c6d038e810d4c27bfe4b50abbbfc d5df7dbcf0927e7eb05ae42652315f09677ff549
47d74f1174c886284a53544ed11732a987037164 b15733c2807bec475d65253058548e0bd7469fc9
5048b1cc71089940eb1bf315c8eeeb2b7d614b83 161e801a3cdbdc61ba76527f00b826358890f044
5439fe3017b593e331325c52ccfaf2b863aa2520 5439fe3017b593e331325c52ccfaf2b863aa2520
5ebac2a0322e49a42b266d340dab59bf92bde46a 5ebac2a0322e49a42b266d340dab59bf92bde46a
61bfe729b53ebe16a02486e3e348aa4a7d96ff7a bb5334727e919befd3885295d10fba4d98d7d6d5
638b829e19362bb060e0c2f9c3d639fc1f4e337d 638b829e19362bb060e0c2f9c3d639fc1f4e337d
67db94084577aeba75fd7fd6200a200e76de0ebe 67db94084577aeba75fd7fd6200a200e76de0ebe
67fb467d27fae5dc3866add8af3a166cb635fe81 67fb467d27fae5dc3866add8af3a166cb635fe81
73a33bf953264dd9b1c9aa6e66c25455d8a4dd9c 9e1a9f674b78626dede863c422836d95de89ed07
753da56c9a61edd1fbe34524506441a4b7bb7a18 753da56c9a61edd1fbe34524506441a4b7bb7a18
75abde1327b8b8e17c5e1f7dbd9db45addbd2b8d 7a6419fd03bfb1e36d082f3d1ec088d3bd7518b6
76defde9381a3be12bfd68693a1b00751f1acc87 76defde9381a3be12bfd68693a1b00751f1acc87
79b454924e9726aacdfce14bcddd8bd63feb6b48 79b454924e9726aacdfce14bcddd8bd63feb6b48
7bad38bb4550ddafc6a7f18e4a15a3858a4da66c ecb2a039d3cb5923c38ed2cb277be4232aec0117
7bff53ea0f024d1dcb339b01da1d927bbe0dadae 7bff53ea0f024d1dcb339b01da1d927bbe0dadae
85b3a84a6bba41697ea587ac050cd110820cea19 e897f895fb0cfb759580eb310baa0563e9e00922
8a504a7049923cd4052b748d08c0bd5cf7c47efb 8a504a7049923cd4052b748d08c0bd5cf7c47efb
8b12b85b7fa6d5c2ace8b7e5b58f68d909d97ea7 e0625faee49172bec3bf798eb3e997475c9aa722
93fce648b53e4816d011aff59ddf7f7ba9fdac03 93fce648b53e4816d011aff59ddf7f7ba9fdac03
970ab1b3a2ad5d403fee69a4454634d99f100668 368acb878dabf5c4ba6ea55b66621642d92c5231
99b3c61ab2ba419baccbd3994e91a9630f088c9c 99b3c61ab2ba419baccbd3994e91a9630f088c9c
9d73e9bf81f28bbf8272c293b915c97a9b844886 9d73e9bf81f28bbf8272c293b915c97a9b844886
a00c17efb330c442f408aaea027c3ba623352f4b a00c17efb330c442f408aaea027c3ba623352f4b
a485aa3b0c384a60d3b8821157fcd11c63b86618 a485aa3b0c384a60d3b8821157fcd11c63b86618
a77ec3bad846996acd377e55451d134def2b7e2a 799c23be34eecc992c7bb3d9e522fa2cd28d4fe7
b35a8c25b9d34b6b082826ec36bfb6fd6cb52ea7 e79a94dbdfa33ac4fbe5e297df59a703b62b37b2
b3945a6f88bc1fd85ffd7f127b4a6c54af46d30e b6bd09b80bdce7267a950e91fadec108ad887265
b514504cc39c207c9c5c5337071ce8a5b3c1b89c 47984fff74400388a8c9f868996edbbdbb02b4d2
be459e9b64643a7d0626e55d534913de38f0c50c 2bf11533008b7d6d474becef348a4dc2da22a426
cdfce23fd43d9bdee48022079414f8f00e6917f7 d9b38c55fe4313483e099c1499b00e9b00491104
cfece78e9ef3f2341e618ce729522decab2b1224 cfece78e9ef3f2341e618ce729522decab2b1224
d1befcc587afcb4d33ecba4707456cc61248f3d6 d1befcc587afcb4d33ecba4707456cc61248f3d6
d43a2d040069b98f7e9a50bf9b7d4976ac295256 d43a2d040069b98f7e9a50bf9b7d4976ac295256
d4791d9244a8e6fade02c0a28a5283e67f39ec45 d4791d9244a8e6fade02c0a28a5283e67f39ec45
db169f7f25a1d3cfa1b34dbfd91d3ccf72bdd075 db169f7f25a1d3cfa1b34dbfd91d3ccf72bdd075
db9bc60ee5ba71a978aede09108e3e7a846ae4c6 80dbcb5b5bf714407636168bb8a53292b017e9be
e0f6850a241ecacf4b32edfee2a2599dde4cf2ee e0f6850a241ecacf4b32edfee2a2599dde4cf2ee
e951ef0fd2ee5f36b61da16070b88414d493d703 e951ef0fd2ee5f36b61da16070b88414d493d703
e9daf60ae0f7957ee6bc8e6b63f708426b42db27 e9daf60ae0f7957ee6bc8e6b63f708426b42db27
ebcd219bcdd1ce7edcc7621d5933793ea0fa04b1 b654ab0666a9e0f9f89a410bc8938a0b10eae2e0
f094d2f3cc73cf2926f2416c681e0565253dfc7c 4e32f3a4d0137a3163f30795097b0b704820d7cf
f09f4dab50887e8e4054a32098fbd4fa36dbd8c7 1cb75bcf7373f70888f2baceea58d5c0e49df7f1
1 change: 1 addition & 0 deletions .git-local-sandbox/filter-repo/first-changed-commits
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
75abde1327b8b8e17c5e1f7dbd9db45addbd2b8d 7a6419fd03bfb1e36d082f3d1ec088d3bd7518b6
2 changes: 2 additions & 0 deletions .git-local-sandbox/filter-repo/ref-map
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
old new ref
ebcd219bcdd1ce7edcc7621d5933793ea0fa04b1 b654ab0666a9e0f9f89a410bc8938a0b10eae2e0 refs/heads/main
5 changes: 5 additions & 0 deletions .git-local-sandbox/filter-repo/suboptimal-issues
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
The following commits were filtered out, but referenced in another
commit message. The reference to the now-nonexistent commit hash
(or a substring thereof) was left as-is in any commit messages:
b'20241022'

15 changes: 15 additions & 0 deletions .git-local-sandbox/hooks/applypatch-msg.sample
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
#!/bin/sh
#
# An example hook script to check the commit log message taken by
# applypatch from an e-mail message.
#
# The hook should exit with non-zero status after issuing an
# appropriate message if it wants to stop the commit. The hook is
# allowed to edit the commit message file.
#
# To enable this hook, rename this file to "applypatch-msg".

. git-sh-setup
commitmsg="$(git rev-parse --git-path hooks/commit-msg)"
test -x "$commitmsg" && exec "$commitmsg" ${1+"$@"}
:
24 changes: 24 additions & 0 deletions .git-local-sandbox/hooks/commit-msg.sample
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
#!/bin/sh
#
# An example hook script to check the commit log message.
# Called by "git commit" with one argument, the name of the file
# that has the commit message. The hook should exit with non-zero
# status after issuing an appropriate message if it wants to stop the
# commit. The hook is allowed to edit the commit message file.
#
# To enable this hook, rename this file to "commit-msg".

# Uncomment the below to add a Signed-off-by line to the message.
# Doing this in a hook is a bad idea in general, but the prepare-commit-msg
# hook is more suited to it.
#
# SOB=$(git var GIT_AUTHOR_IDENT | sed -n 's/^\(.*>\).*$/Signed-off-by: \1/p')
# grep -qs "^$SOB" "$1" || echo "$SOB" >> "$1"

# This example catches duplicate Signed-off-by lines.

test "" = "$(grep '^Signed-off-by: ' "$1" |
sort | uniq -c | sed -e '/^[ ]*1[ ]/d')" || {
echo >&2 Duplicate Signed-off-by lines.
exit 1
}
174 changes: 174 additions & 0 deletions .git-local-sandbox/hooks/fsmonitor-watchman.sample
Original file line number Diff line number Diff line change
@@ -0,0 +1,174 @@
#!/usr/bin/perl

use strict;
use warnings;
use IPC::Open2;

# An example hook script to integrate Watchman
# (https://facebook.github.io/watchman/) with git to speed up detecting
# new and modified files.
#
# The hook is passed a version (currently 2) and last update token
# formatted as a string and outputs to stdout a new update token and
# all files that have been modified since the update token. Paths must
# be relative to the root of the working tree and separated by a single NUL.
#
# To enable this hook, rename this file to "query-watchman" and set
# 'git config core.fsmonitor .git/hooks/query-watchman'
#
my ($version, $last_update_token) = @ARGV;

# Uncomment for debugging
# print STDERR "$0 $version $last_update_token\n";

# Check the hook interface version
if ($version ne 2) {
die "Unsupported query-fsmonitor hook version '$version'.\n" .
"Falling back to scanning...\n";
}

my $git_work_tree = get_working_dir();

my $retry = 1;

my $json_pkg;
eval {
require JSON::XS;
$json_pkg = "JSON::XS";
1;
} or do {
require JSON::PP;
$json_pkg = "JSON::PP";
};

launch_watchman();

sub launch_watchman {
my $o = watchman_query();
if (is_work_tree_watched($o)) {
output_result($o->{clock}, @{$o->{files}});
}
}

sub output_result {
my ($clockid, @files) = @_;

# Uncomment for debugging watchman output
# open (my $fh, ">", ".git/watchman-output.out");
# binmode $fh, ":utf8";
# print $fh "$clockid\n@files\n";
# close $fh;

binmode STDOUT, ":utf8";
print $clockid;
print "\0";
local $, = "\0";
print @files;
}

sub watchman_clock {
my $response = qx/watchman clock "$git_work_tree"/;
die "Failed to get clock id on '$git_work_tree'.\n" .
"Falling back to scanning...\n" if $? != 0;

return $json_pkg->new->utf8->decode($response);
}

sub watchman_query {
my $pid = open2(\*CHLD_OUT, \*CHLD_IN, 'watchman -j --no-pretty')
or die "open2() failed: $!\n" .
"Falling back to scanning...\n";

# In the query expression below we're asking for names of files that
# changed since $last_update_token but not from the .git folder.
#
# To accomplish this, we're using the "since" generator to use the
# recency index to select candidate nodes and "fields" to limit the
# output to file names only. Then we're using the "expression" term to
# further constrain the results.
my $last_update_line = "";
if (substr($last_update_token, 0, 1) eq "c") {
$last_update_token = "\"$last_update_token\"";
$last_update_line = qq[\n"since": $last_update_token,];
}
my $query = <<" END";
["query", "$git_work_tree", {$last_update_line
"fields": ["name"],
"expression": ["not", ["dirname", ".git"]]
}]
END

# Uncomment for debugging the watchman query
# open (my $fh, ">", ".git/watchman-query.json");
# print $fh $query;
# close $fh;

print CHLD_IN $query;
close CHLD_IN;
my $response = do {local $/; <CHLD_OUT>};

# Uncomment for debugging the watch response
# open ($fh, ">", ".git/watchman-response.json");
# print $fh $response;
# close $fh;

die "Watchman: command returned no output.\n" .
"Falling back to scanning...\n" if $response eq "";
die "Watchman: command returned invalid output: $response\n" .
"Falling back to scanning...\n" unless $response =~ /^\{/;

return $json_pkg->new->utf8->decode($response);
}

sub is_work_tree_watched {
my ($output) = @_;
my $error = $output->{error};
if ($retry > 0 and $error and $error =~ m/unable to resolve root .* directory (.*) is not watched/) {
$retry--;
my $response = qx/watchman watch "$git_work_tree"/;
die "Failed to make watchman watch '$git_work_tree'.\n" .
"Falling back to scanning...\n" if $? != 0;
$output = $json_pkg->new->utf8->decode($response);
$error = $output->{error};
die "Watchman: $error.\n" .
"Falling back to scanning...\n" if $error;

# Uncomment for debugging watchman output
# open (my $fh, ">", ".git/watchman-output.out");
# close $fh;

# Watchman will always return all files on the first query so
# return the fast "everything is dirty" flag to git and do the
# Watchman query just to get it over with now so we won't pay
# the cost in git to look up each individual file.
my $o = watchman_clock();
$error = $output->{error};

die "Watchman: $error.\n" .
"Falling back to scanning...\n" if $error;

output_result($o->{clock}, ("/"));
$last_update_token = $o->{clock};

eval { launch_watchman() };
return 0;
}

die "Watchman: $error.\n" .
"Falling back to scanning...\n" if $error;

return 1;
}

sub get_working_dir {
my $working_dir;
if ($^O =~ 'msys' || $^O =~ 'cygwin') {
$working_dir = Win32::GetCwd();
$working_dir =~ tr/\\/\//;
} else {
require Cwd;
$working_dir = Cwd::cwd();
}

return $working_dir;
}
8 changes: 8 additions & 0 deletions .git-local-sandbox/hooks/post-update.sample
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
#!/bin/sh
#
# An example hook script to prepare a packed repository for use over
# dumb transports.
#
# To enable this hook, rename this file to "post-update".

exec git update-server-info
14 changes: 14 additions & 0 deletions .git-local-sandbox/hooks/pre-applypatch.sample
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
#!/bin/sh
#
# An example hook script to verify what is about to be committed
# by applypatch from an e-mail message.
#
# The hook should exit with non-zero status after issuing an
# appropriate message if it wants to stop the commit.
#
# To enable this hook, rename this file to "pre-applypatch".

. git-sh-setup
precommit="$(git rev-parse --git-path hooks/pre-commit)"
test -x "$precommit" && exec "$precommit" ${1+"$@"}
:
Loading